Plan Szkolenia
Dzień I
Wprowadzenie do Magento
- Szybki opis Magento 2
- Porównanie wersji Community i Commerce
- Pricing Magento Commerce
- Magento Commerce Cloud
- Różnice w stosunku do Magento 1
Budowa Magento 2
- Omówienie wzorca MVVM
- Struktura projektu
- Zarządzanie zależnościami (composer, PSR-4 Autoloader)
- Struktura pojedynczego modułu
- Rejestracja modułu
- Omównie Websites, Store Groups, Store Views
- Kilka sklepów w jednej instancji Magento 2
- Wielojęzyczność
- Config scopes
Zaawansowane Magento 2 - Baza danych
- Tabele konfiguracyjne (ustawienia, wersjonowanie modułów)
- Weryfikacja wersji modułu w bazie danych, stworzenie własnej konfiguracji w panelu administracyjnym, omówienie ACL
- Skrypty Setup
- Skrypt UpgradeSchema
- Persistence Layer
- Strworzenie warstwy persistence (Model, ResourceModel, Collection)
- Omówienie wzorca EAV
- EAV w Magento2
- Rodzaje encji EAV w Magento2
- Zestawy cech
- Extension attributes
- Tabele płaskie
- Database sharding
Zaawansowane Magento 2 - PHP
Zarządzanie zależnościami klas (Service Contract, omówienie wzorców Dependency Injection, Dependency Inversion, omówienie jak działa Dependency Injection w M2, ObjectManager)
Generowanie kodu
- Factory
- Interceptor
- Proxy
Magento 2 CLI
- Omówienie funkcji
- Stworzenie własnej komendy tworzącej obiekty modelu
- Kontrolery w Magento 2
- Stworzenie własnego kontrolera frontend
- Własny logger w Magento 2
- Sposoby rozszerzania Magento - nadpisanie, plugin (omówienie wzorca Interceptor), obserwacja eventu (omówienie wzorca Observer)
- Stworzenie własnego Observera oraz własnego Eventu (w kontrolerze) oraz pluginu na własnym kontrolerze frontend oraz loggera dla obu klas
Dzień II
Zaawansowane Magento 2 - frontend
- Themes
- Elementy frontend modułów, layouty, bloki, view modele
- Stworzenie template, view modelu i wyświetlenie obiektów z kolekcji
- Preprocesor Less
- Dodanie styli LESS do widoku
- RequireJS
- KnockoutJS
- UI Components
- Generowanie plików statycznych
Tryby pracy Magento 2
Sesja PHP
- Sposoby przechowywania sesji
- Konfiguracja Redis
Full Page Cache
- FPC Magento2 (pliki, Redis, Varnish)
- Konfiguracja Varnisha
- Hole punching
Cron w Magento 2
- Omówienie działania
- Własny cronjob
Cache w Magento 2
- Wbudowane rodzaje
- Własny cache
Indexery Magento 2
REST oraz SOAP APIs w Magento 2
- Omówienie sposobów autentykacji
- Overview dostępnych metod
- Definiowanie własnych endpointów API
- Stworzenie Data Contractu i Service Contractu Repository, wpięcie metody get z Repository do WebAPI
Testy integracyjne, testy jednostkowe
Stworzenie przy pomocy UI Components listingu oraz formularza dla obiektów modelu
Blok: deploy automation & monitoring & testy wydajności:
Narzędzia do automatyzacji deploy: GitLab CI/CD, GitLab Runner
Jak przeprowadzić bezpieczny deploy z zerowym downtime, z zapewnieniem możliwości szybkiego rollback
Monitoring Magento ─ New Relic
Wydajność:
Testy za pomocą LoadImpact. Jak przygotować scenariusze i symulować ruch produkcyjny.
Cache warming dla Varnish
Wymagania
Dobra znajomość PHP
Opinie uczestników (3)
zadania praktyczne
Damian Kajewski - Glosel sp. z o.o. sp.k. ; Betlobag Adam Belewski
Szkolenie - Implementacja Magento 2.X do rozwiązań eCommerce
Otwartość, możliwość zadawania pytań (nawet tych banalnych), pomoc przy rozwiązywania zadań i naprawianiu błedów
Jonatan Taterski - Glosel sp. z o.o. sp.k. ; Betlobag Adam Belewski
Szkolenie - Implementacja Magento 2.X do rozwiązań eCommerce
zadania + wyjaśnianie tematu na podstawie wykonywanych zadań