Dzięki uprzejmości Johanna Hartmanna oraz Philipa Olsona, od m/w dwóch tygodni, jestem członkiem społeczności PHP posiadającym dostęp do wiki.php.net. Pierwszą propozycją, którą mam zamiar zamieścić w części RFC jest inicjalizacja ( nie marnować czasu na spory dot. poprawności użytej nazwy ) właściwości klas.
Pomysł nie jest nowy, nie jest odkrywczy, jednak nie istnieje żadna implementacja w PHP obsługująca bardziej zaawansowaną funkcjonalność tego typu.
Read the rest of this entry »
Tradycyjnie, krótko i na temat. Zachodzi potrzeba przechwycenia błędów typu Fatal Error – zdarza się? Zdarza. Krótko o tym co się dzieje w silniku Zenda.
1. Programista ‘psuje’ kod.
2. PHP Wykrywa błędne zachowanie kodu i stara się je obsłużyć.
3. Na którejś z grup wyczytałem, że developerzy nie mają w momencie wystąpienia Fatal Error’a pewności, czy ZE jest nadal stabilny, więc zamykają silnik – stąd więc brak ‘normalnej’ możliwości na obsłużenie tego typu błędów przez error_handler.
4. Zostaje wyrzucony błąd ‘Fatal error’, oraz uruchamiane zostają handlery zamykające aplikację i silnik.
Read the rest of this entry »
PHP cierpi na brak natywnego wsparcia dla Adnotacji i coraz więcej osób to zauważa. Wyjaśnijmy sobie na początku czym miało by być wsparcie dla nich ze strony silnika.
Read the rest of this entry »
Przez kilka ostatnich dni, żyłem pod wpływem osób namiętnie piętnujących PHP za to jak bardzo brzydkim jest językiem i jak wszystko pięknie oraz łatwo jest rozwiązane w innych językach, np. w pythonie.
Read the rest of this entry »
Nie dlatego, że format sam w sobie jest do bani. Nie dlatego, że ciężko się go parsuje… Wręcz przeciwnie. Wygląda na to, że i format jest zbyt prosty i zbyt łatwo można go parsować, co za tym idzie, bardzo łatwo można mieć w głębokim poważaniu standard tego formatu i składać pliki tak, jak się każdemu żywnie podoba.
Read the rest of this entry »
Gdy implementowałem IoC na potrzeby firmowego frameworka, doszedłem do punktu w którym realizacja lazy-loading dla obiektów konkretnie ustalonego typu ( z góry przeze mnie narzuconego ) nie jest w cale taka prosta.
Cała sprawa zakończyła się na funkcji EVAL w autoloaderze, która wywoływała dziedziczenie klasy żądanej przez silnik po klasie wyznaczonego typu, następnie udostępniała ją w aktualnej przestrzeni nazw. Straszne rozwiązanie i ciężko było się pogodzić z zostawieniem takiego wynalazku w kodzie.
Read the rest of this entry »
Wczoraj pojawiła się pierwsza oficjalna inicjatywa mająca na celu wprowadzenie natywnej obsługi adnotacji w PHP. Z uwagi na to, że jako pierwszy wyszedł z nią jeden z developerów m.in. Doctrine, możemy spodziewać się całkiem ciekawego wsparcia ze strony silnika PHP.
Read the rest of this entry »
W ramach przesiadki na VIMa postanowiłem dopracować swoje małe IDE na tyle, by mieć wszystko pod ręką. Nie posiadam jeszcze wiedzy, która umożliwi samodzielnie tworzyć dodatki, więc pogooglałem aby znaleźć coś gotowego – coś co ewentualnie da się przerobić. Niestety obecnej wersji API nic sensownego nie wspierało ( nie liczę pluginów z dodatkowymi zależnościami; jak python ). Read the rest of this entry »
Ponownie po długiej przerwie, króciuteńka notka. W dniu dzisiejszym przyszło się zmierzyć z dziwnym zachowaniem Doctrine, w momencie w którym próbowałem skorzystać z cache’u wyników zapytań SQL. Jako, że już większość systemu wykorzystuje do tego celu APC, Doctrine posiada do niego sterownik, grzechem było by nie skorzystać.
Read the rest of this entry »
Witam.
Szybka notka, która mam nadzieje nie wpłynie negatywnie na opinie o mojej osobie. Liczę również, że mojego bloga nie odwiedza za wiele osób, których celem jest destrukcja pracy innych, a jedyne Ci, którzy żyją z programowania i będą wstanie zrozumieć cel opisanych tu praktyk oraz wniosą coś pożytecznego do tematu.
Read the rest of this entry »