| Tytuł: | PHP revisited - odświeżenie spojrzenia na programowanie w PHP |
| Kod: | PHP-revisited |
| Kategoria: | PHP |
| Forma: | 60% wykłady / 40% warsztaty |
| Czas trwania: | 3 dni |
| Odbiorcy: | developerzy |
| Zapisy: |
Indywidualne zamówienie i dopasowanie dla grupy. |
| Logistyka: |
W siedzibie klienta lub w innym dowolnym miejscu. |
Szkolenie zostało przygotowane z myślą o programistach i architektach PHP, w celu zapoznania ich z aktualnymi technikami stosowanymi w PHP, best-practices czy różnego rodzaju problemami/błędami występującymi przy implementacji aplikacji PHP, jak i sposobami na ich uniknięcia.
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.-
Rozwój języka PHP- Zmiany języka w PHP 4, 5, 7.
- HHVM
- Integracja PHP z serwerem www
- Wprowadzenie do tematyki
- Przegląd rozwiązań
- Apache2
- Lighttpd
- nginx
- Built-in webserver PHP 5.4
- Apache2
- PHP FastCGI Process Manager
- Pule procesów
- Kluczowe aspekty konfiguracji
- Aspekty wydajnościowe i monitoring usługi
- Pule procesów
- Wprowadzenie do tematyki
- Zmiany języka w PHP 4, 5, 7.
-
Standaryzacja PHP Framework Interop Group- Wprowadzenie do tematyki
- Przegląd zaakceptowanych PSR
- PSR-0 Autoloading Standard
- PSR-1 Basic Coding Standard
- PSR-2 Coding Style Guide
- PSR-3 Logger Interface
- PSR-4 Autoloading Standard
- PSR-7 HTTP Message Interface
- PSR-0 Autoloading Standard
- Praktyczne zastosowanie PSR w projektach
- Zarządzanie zależnościami i bibliotekami w projekcie
- Pakiety PEAR
- Composer
- Struktura pliku composer.json
- Definiowanie zależności projektowych
- Wykonywanie skryptów przed i/lub po instalacji pakietu
- Przegląd typowych problemów
- Aspekty wydajnościowe Composera
- Udostępnianie pakietów publicznych i prywatnych
- Packagist
- Toran Proxy
- Pakiety PEAR
- Zarządzanie logami aplikacyjnymi
- Monolog
- Koncepcja
- Handlers
- Formatters
- Processors
- Integracje z frameworkami
- Monolog
- Zarządzanie dostępem do systemu plików
- Wpływ wymiany stosowanego storage plików na zmiany w kodzie źródłowym
- Gaufrette
- Integracje z frameworkami
- Wpływ wymiany stosowanego storage plików na zmiany w kodzie źródłowym
- Zarządzanie zależnościami i bibliotekami w projekcie
- Wprowadzenie do tematyki
-
Techniki testowania oprogramowania- Wprowadzenie do tematyki
- Test Driven Development
- Behavior Driven Development
- Przegląd popularnych narzędzi do testowania oprogramowania
- PHPUnit
- Behat
- PHPSpec
- PHPUnit
- Refaktoryzacja istniejącego kodu
- Wprowadzenie do tematyki
-
Debuggowanie i profilowanie aplikacji PHP- Wprowadzenie do tematyki
- Profilowanie wydajnościowe aplikacji
- Narzędzia
- Xdebug
- Blackfire PHP
- Analiza uzyskanych informacji w aplikacjach kCacheGrind/MCG
- Integracja z IDE na przykładzie PHPStorm
- Xdebug
- Wprowadzenie do tematyki
-
Wzorce projektowe- Wprowadzenie do tematyki
- Przegląd zastosowań wybranych wzorców
- MVC
- Dependency Injection
- Konfiguracja kontenera DI w ramach frameworka full-stack i microframeworka
- Konfiguracja kontenera DI w ramach frameworka full-stack i microframeworka
- Factory
- Strategy
- MVC
- Antywzorce projektowe
- Powiązane techniki
- SOLID
- GRASP
- DRY
- YAGNI
- SOLID
- Wprowadzenie do tematyki
-
Nowoczesne frameworki PHP- Przegląd rozwiązań
- Frameworki full-stack
- Przegląd rozwiązań
- Symfony 2
- Laravel
- Zend Framework
- Przegląd rozwiązań
- Mikroframeworki PHP
- FirePHP
- Silex
- Slim
- FirePHP
- Rozwiązania hybrydowe
- Phalcon, high-performance C++ extension framework
- Phalcon, high-performance C++ extension framework
- Frameworki full-stack
- Zastosowanie omówionych w trakcie szkolenia aspektów w nowoczesnych frameworkach
- Przegląd rozwiązań
-
Przegląd przykładowych problemów występujących w aplikacjach webowych PHP- Ogólna wydajność rozwiązania
- Wpływ architektury kodu na szybkość działania aplikacji
- Akceleratory kodu
- Akceletatory HTTP
- Wpływ architektury kodu na szybkość działania aplikacji
- Problemy z kodowaniem znaków i internacjonalizacją aplikacji
- Skalowalność
- Utrzymanie sesji w środowisku rozproszonym
- Storage plikowy w środowisku rozproszonym
- Utrzymanie sesji w środowisku rozproszonym
- Assets management
- Odświeżanie zasobów CSS/JS/GFX wraz z wydaniem aplikacji
- Optymalizacja pobierania zasobów CSS/JS/GFX
- Biblioteki
- Odświeżanie zasobów CSS/JS/GFX wraz z wydaniem aplikacji
- Deployment aplikacji
- Ogólna wydajność rozwiązania
Pobierz program w formacie PDF
Trenerzy
Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.