![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 36 Pomógł: 1 Dołączył: 12.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam, jestem początkującym, raczej mało znającym inżynierie oprogramowania, koderem. Ostatnimi czasy zagłębiam się w temat Frameworków. Chciałbym abyście poradzili mi jakiego Frameworka wybrać do nauki i wydajnego tworzenia aplikacji z naciskiem na naukę. Chciałbym środowiska które nie robi wszystkiego za mnie, daje dużo wolnej ręki a jednocześnie jest przejrzyste. Zależałoby mi na tym aby było do niego dostępnych trochę polskich tutoriali (niekoniecznie polska dokumentacja ale byłoby super).
Przyglądałem się już ZF ( heavymind ) oraz phiendowi i artom na jego temat na php.pl, wydaje mi się że oba w pewnym stopniu mi nie pasują, cakePhp wydaje się mało rozbudowany. Co możecie poradzić?
Powód edycji: [Spawnm]: przenoszę do działu 'Frameworki' oraz przypinam.
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Ja w swojej "karierze" przerobiłem 3 frameworki:
- Zend Framework - w wersji 0.7 - CI - Symfony O pierwszym zostało już wszystko powiedziane. Potężny zbiór klas, ale nie framework. Często korzystam z samych klas, ale jako framework nie jest to dla mnie wygodne rozwiązanie. Plus za dokumentację. CI - bardzo wygodny był przy małych projektach. Szalenie szybko się w tym pisało - podstawy frameworka można było opanować w kilka godzin. Bardzo dobra (w sensie przystępności) dokumentacja. Minus to php4 i "ubogość". Dla mnie raczej był to szkielet frameworka. Sposób napisania frameworka sprawiał, że dokonywanie zmian wymagało "niebezpiecznych" zagrań, które mogły się zemścić w innych miejscahc - wiadomo globale itp. Symfony - miłość od 2 wejrzenia. Za pierwszym razem coś nie chciało się zainstalować i szybko się poddałem. Wróciłem po jakimś czasie i się zakochałem ;-). Główne plusy: - bardzo dobra dokumentacja zarówno "książka" jak i api - framework obiektowy, więc modyfikacje są bardzo proste i wygodne - świetny system konfiguracji - na początku wydaje się nie do ogarnięcia, ale po przeczytaniu odpowiedniego rozdziału książki wszystko robi się dziecinnie proste - konfigurowalne środowiska - 2 liniijki i masz wersję aplikacji, która działa z cache albo bez, która wyświetla błędy dla programisty albo nie itd itp. - debugtolbar - świetna sprawa - widzisz ile czasu trwało żądanie, ile i jakie zapytania poszły do bazy, co ile trwało, wszystkie logi i zmienne requesta w jednym miejscu - jednym słowem proste debugowanie - doskonały system cache - kilka linijek konfiguracji i można cachować całe strony lub ich części odciążając serwer. Cache jest kilkustopniowy i można go bardzo ładnie dostosować do konkretnych potrzeb. - doskonała organizacja widoku - layout, widok akcji, proste partiale i komponenty, które są w zasadzie miniakcjami - generacja modułu admina - świetna sprawa, gdyż moduł można łatwo modyfikować zarówno z poziomu konfiguracji jak i kodu gdy potrzeba nieco niestandardowych zachowań - przykładowe zestawy danych, które można wgrywać do bazy danych po jej przeróbkach - nie trzeba po każdej zmianie dodawać testowych danych - robisz to raz a symfony będzie je potem wgrywać po zmianach - ilość pluginów, które dodają najczęściej wykorzystywane funkcje. Potrzebujesz galerii - wgrywasz plugin i po sprawie - ajax - ajax znam słabo, ale symfony robi to za mnie ;-) - propel - czyli zapominamy o monotonii pisania prostych zapytań sql I tak wymieniać można by bez końca. Cena, która się płaci za tą wygodę to zwolnienie aplikacji - ale przy dużych projektach nie jest to aż tak widoczne. Testy typu hello world bardzo zakłamują sytuację bo symfony nadrabia dość mocno do innych frameworków gdy aplikacja jest "sensownych rozmiarów. Pisałem już kiedyś na forum o tym. Paradoksalnie dla przykładu moje projekty przepisane na symfony zwzwyczaj przyspieszają, gdyż mogę prosto zastosować cachowanie - wcześniej nie chciało mi się w to bawić, ale w symfony cachowanie jest tak proste i intuicyjne, że grzechem było by nie skorzystać ;-) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 14:08 |