| Tytuł: | REST i Microservices w PHP |
| Kod: | PHP-rest |
| Kategoria: | PHP |
| Forma: | 50% wykłady / 50% warsztaty |
| Czas trwania: | 4 dni |
| Odbiorcy: | developerzy |
| Zapisy: |
Indywidualne zamówienie i dopasowanie dla grupy. |
| Logistyka: |
W siedzibie klienta lub w innym dowolnym miejscu. |
Szkolenie stanowi syntezę wzorców, technik i narzędzi potrzebnych aby od początku do końca pracować nad kodem systemów projektowanych w architekturze microservices.
Niemal wszystkie frameworki nie narzucają struktury organizacji kodu. Dlatego proponowalibyśmy rozpoczęcie implementacji z wykorzystaniem Symfony i jego komponentów. Następnie, gdy zespół będzie miał praktyczne doświadczenie i wiedzę odnośnie potrzebnych narzędzi, użycie innych narzędzi (np. aplikacji Symfony opartych i micro-kernele) będzie znacznie prostsze.
Wyróżniki szkolenia
- Zintegrowane podejście do: skalowania, bezpieczeństwa, failover, CQRS
- Całościowe i szersze spojrzenie na problemy
- Dostęp do wiedzy eksperckiej
Program Szkolenia
Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.-
REST / HTTP API- Wprowadzenie
- Request
- Response
- Request
- Nazewnictwo
- Rzeczowniki
- Czasowniki
- Liczba pojedyncza / liczba mnoga
- Rzeczowniki
- Formaty API
- JSON
- XML
- JSON
- Metody HTTP
- GET
- POST
- PUT
- DELETE
- PATCH
- GET
- Typowe zagadnienia
- Lokalizacja API
- Wersjonowanie API
- Filtrowanie zasobów
- Partial response
- Stronicowanie
- Sortowanie
- Obsługa błędów
- Lokalizacja API
- Bezpieczeństwo
- Logowanie
- Uwierzytelnianie
- Rate limits
- Logowanie
- Cache
- Wprowadzenie
- Wprowadzenie
- Klienci API
- Wprowadzenie
-
Mikroserwisy- Wprowadzenie
- Prawo Conwaya
- Charakterystyka mikroserwisów
- Korzyści i koszty
- Prawo Conwaya
- Modelowanie
- Założenia
- Decentralizacja zarządzania danymi
- Decentralizacja zarządzania danymi
- Podejście bounded-context
- Antywzorce mikroserwisów
- Nanoservice
- Nanoservice
- Założenia
- Komunikacja
- Komunikacja synchroniczna
- Komunikacja asynchroniczna
- Formaty
- Komunikacja synchroniczna
- Security
- Infrastruktura
- Deployment
- Skalowanie
- Osiąganie wysokiej dostępności
- Monitoring działania
- Deployment
- Testowanie
- Dokumentowanie mikroserwisów
- Wprowadzenie
-
Frameworki- Wprowadzenie do Symfony
- Dlaczego używać Symfony?
- Jakie problemy rozwiązuje?
- Ekosystem
- Jakie problemy rozwiązuje?
- Jak Symfony może pomóc?
- Symfony Framework
- Komponenty Symfony
- Symfony Framework
- Dlaczego używać Symfony?
- Podstawy Symfony
- Tworzenie projektów
- Instalator Symfony
- Composer
- Sprawdzanie wymagań środowiska
- Instalator Symfony
- Konfiguracja serwera HTTP
- Nginx
- Apache
- Wbudowany w PHP serwer HTTP
- Nginx
- Struktura projektów
- Aplikacje
- Środowiska
- Pliki uruchamialne
- Bundle
- Cache
- Logi
- Zależności
- Aplikacje
- Konfiguracja
- PHP
- YML
- Adnotacje
- XML
- PHP
- Web Debug Toolbar
- Tworzenie projektów
- Cykl życia aplikacji
- Http Kernel
- Request
- Response
- PSR-7
- App Kernel
- Multi Kernel
- Micro Kernel
- Request
- Kontrolery
- Konwencje i dobre praktyki
- Przekierowania
- Strony błędów
- Konwertery Parametrów
- Konwencje i dobre praktyki
- Routing
- Konfiguracja
- Konwencje nazewnictwa
- Wymagania
- Debugowanie
- Konfiguracja
- Http Kernel
- Formularze, Walidacja i Tłumaczenia
- Forularze
- Tworzenie formularzy
- Obsługa wysłanych danych
- Tworzenie formularzy
- Walidacja
- Konfiguracja
- Ograniczenia
- Grupy
- Funkcje walidujące
- Walidacja formularzy
- Konfiguracja
- Forularze
- Wstrzykiwanie zależności
- Wprowadzenie
- Dlaczego powinniśmy wstrzykiwać zależonści?
- Wstrzykiwanie przez setter
- Wstrzykiwanie przez konstruktor
- Dlaczego powinniśmy wstrzykiwać zależonści?
- Kontener usług
- Konfiguracja
- Definiowanie usług
- Debugowanie
- Tagi i zaawansowane modyfikowanie konfiguracji kontenera
- Konfiguracja
- Wprowadzenie
- HTTP Cache
- Wprowadzenie
- Typy Cache
- Nagłówki HTTP
- Modele Walidacji i Wygasania
- Edge Side Includes
- Typy Cache
- Cache w Symfony
- Http Kernel
- App Cache
- Edge Side Includes
- Http Kernel
- Wprowadzenie
- Logowanie i uwierzytelnianie
- Komponent Security
- Konfiguracja
- Logowanie
- Uwierzytelnianie
- Zabezpieczanie kontrolerów
- Konfiguracja
- Zaawansowane zagadnienia komponentu Security
- Access Control Lists
- Security Voters
- Logowanie bezstanowe
- Access Control Lists
- Komponent Security
- Testowanie, wydajność
- Testowanie
- Web Test Case w PhpUnit
- Test Client w PhpUnit
- Dostęp do kontenera usług w testach
- Korzystanie z profilera w testach
- Behat extension
- Web Test Case w PhpUnit
- Wydajność
- Dobre praktyki
- Optymalizacja Composera
- Profilowanie aplikacji
- Dobre praktyki
- Testowanie
- Wprowadzenie do Symfony
Pobierz program w formacie PDF
Trenerzy
Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.