Wpisy otagowane ‘zval’

Silne typowanie danych w PHP, część II: autoboxing oraz niezniszczalne obiekty

wtorek, 12 Kwiecień 2011

We wcześniejszym artykule dotyczącym silnego typowania opisałem mechanizm typehintów, który wymusza zgodność typów danych (także nie będących obiektami) przekazywanych do metod i funkcji. Niestety wspomniana implementacja nie zabezpiecza przed innym problemem związanym z dynamicznym typowaniem zmiennych: brakiem kontroli typu podczas nadpisywania wartości zmiennych.

W celu zapewnienia kontroli typu, postanowiłem wprowadzić do języka PHP pojęcie autoboxingu znanego z języków C#, oraz Java. (więcej…)

Co najbardziej spowalnia skrypty PHP?

sobota, 26 Marzec 2011

Pierwszą, oczywistą przyczyną jest to, że język PHP, jest językiem interpretowanym, a nie kompilowanym. Nie tłumaczy to jednak kiepskich wyników porównawczych z innymi językami tego samego typu, takimi jak Perl czy Python, które w wielu scenariuszach wykazują o wiele większą wydajnością.

Co sprawia, że język PHP jest od nich wolniejszy? (więcej…)

StringBuilder w PHP

czwartek, 24 Marzec 2011

Jak dobrze wiadomo, PHP nie jest wyposażony w mechanizm typu StringBuilder znany z innych języków jak C# lub JAVA. W Internecie znaleźć można wiele dyskusji na to, czy taka funkcjonalność jest w ogóle do czegoś potrzebna, oraz gotowe implementacje jako dowody na to, że wydajność nie ulega zmianie.

Ja spróbuję przedstawić dowody odwrotne: mechanizm StringBuilder można w PHP zaimplementować, co korzystnie wpływa na wydajność skryptu. (więcej…)