PHP 7.4 preview – typed properties, arrow functions, spread w tablicach, preloading
PHP 7.4 wychodzi w listopadzie 2019 i przynosi kilka zmian, które realnie wpłyną na codzienny kod. Typed properties to największa nowość – w końcu możemy deklarować typy bezpośrednio przy właściwościach klasy. Do tego arrow functions, operator nullsafe w preprodukcji i kilka pomniejszych usprawnień. Przeglądam zmiany na przykładach.
- Opublikowano w PHP
Wzorzec Decorator w PHP – kompozycja zamiast dziedziczenia, przykład z cache repository
Dziedziczenie to najprostszy sposób na rozszerzenie klasy – ale nie zawsze najlepszy. Gdy chcesz dodać kilka niezależnych funkcji do obiektu, hierarchia klas szybko staje się nieczytelna. Decorator pozwala „owijać” obiekty w kolejne warstwy funkcjonalności bez modyfikacji oryginału i bez głębokiego dziedziczenia.
- Opublikowano w Wzorce projektowe
DI w Magento 2 – kontener, Virtual Types, Factory, shared/non-shared
Dependency Injection w Magento 2 to temat, który na początku wygląda jak magia. Wpisujesz interfejs w konstruktorze, a Magento samo dostarcza właściwą implementację. Skąd wie co wstrzyknąć? Jak działa kompilacja DI? Co to są virtual types i po co są? Rozkładam to na czynniki pierwsze.
- Opublikowano w Magento 2
Typowanie w PHP 7.x, strict_types, PHPStan, przygotowanie na PHP 7.4
System typów w PHP rozwijał się stopniowo od wersji 5.x. PHP 7.x znacznie go wzmocnił – mamy typowanie parametrów, typowanie zwracanych wartości, nullable types i union types na horyzoncie. PHP 7.4, które pojawi się pod koniec 2019, doda typed properties. To dobry moment, żeby podsumować stan typowania w PHP i pokazać dobre praktyki, które warto stosować już dziś.
- Opublikowano w PHP
