PHP jako język do nauki paradygmatu programowania obiektowego
Tuesday, January 31, 2012 8:18:45 PM
Doszedłem do wniosku, że PHP to dobry język do nauczenia się paradygmatu programowania obiektowego.
1. Funkcje obsługi typu tekstowego (string) i tablic asocjacyjnych (array w PHP) mają tak spójne nazewnictwo i kolejność argumentów... Gorzej tego zrobić się chyba już nie dało.
2. Ogólnie paskudna składnia tablic asocjacyjnych, które pełnią też role struktur danych i tablic indeksowanych kolejnymi liczbami całkowitymi.
3. Niektóre bardziej zaawansowane typy są obiektami z licznymi metodami, inne zaś wskaźnikami z zestawem dedykowanych funkcji.
4. Pełno opcji, z których znaczną część trzeba niestety sobie samemu ustawić.
5. Liczne konfiguracje, które często wymagają robienia jednej rzeczy na różne sposoby.
6. Pełno przestarzałych funkcji zostawionych dla zgodności wstecznej.
7. Oraz pełno innych, przestarzałych konstrukcji, których omijanie wymaga pisania dziwnego kodu.
To tak ogólnie. Aby nie popaść w szaleństwo, pozostaje człowiekowi obudować jak najwięcej w obiekty. A tutaj niespodzianka, okazuje się to dużo wygodniejsze, niż w przypadku C++. Składnia jest nawet całkiem przyjemna i spójna. (Jak drugi razy robili, to im w końcu wyszło.) Nie da się zaprzeczyć, że w takim Ruby programować obiektowo jest dużo łatwiej. Ale tylko PHP zniechęca tak skutecznie do programowania w inny sposób.
1. Funkcje obsługi typu tekstowego (string) i tablic asocjacyjnych (array w PHP) mają tak spójne nazewnictwo i kolejność argumentów... Gorzej tego zrobić się chyba już nie dało.
2. Ogólnie paskudna składnia tablic asocjacyjnych, które pełnią też role struktur danych i tablic indeksowanych kolejnymi liczbami całkowitymi.
3. Niektóre bardziej zaawansowane typy są obiektami z licznymi metodami, inne zaś wskaźnikami z zestawem dedykowanych funkcji.
4. Pełno opcji, z których znaczną część trzeba niestety sobie samemu ustawić.
5. Liczne konfiguracje, które często wymagają robienia jednej rzeczy na różne sposoby.
6. Pełno przestarzałych funkcji zostawionych dla zgodności wstecznej.
7. Oraz pełno innych, przestarzałych konstrukcji, których omijanie wymaga pisania dziwnego kodu.
To tak ogólnie. Aby nie popaść w szaleństwo, pozostaje człowiekowi obudować jak najwięcej w obiekty. A tutaj niespodzianka, okazuje się to dużo wygodniejsze, niż w przypadku C++. Składnia jest nawet całkiem przyjemna i spójna. (Jak drugi razy robili, to im w końcu wyszło.) Nie da się zaprzeczyć, że w takim Ruby programować obiektowo jest dużo łatwiej. Ale tylko PHP zniechęca tak skutecznie do programowania w inny sposób.

