Temat: Jaki framework?
Tak czytam te posty i nadziwić się nie mogę ile emocji w dorosłych ludziach może wzbudzać pytanie w stylu "kogo bardziej kochasz - mamusię czy tatusia?".
20 lat temu bluzgałem na "atarowców". Później "grzybiarze" szturmowali moją Amigę. Całe szczęście, że nie słychać teraz zbyt wiele o konfliktach między obozami Mac i PC. Może dlatego, że ludzie znają te platformy, wiedzą jakie są ich wady, zalety, ograniczenia. Wybierają odpowiedni model i zajmują się robotą zamiast spieraniem.
Większość z nas miała styczność z różnymi frameworkami i w trakcie ich poznawania mogła wybrać najlepszy dla siebie. Czy naprawdę zwracaliście wtedy uwagę na szybkość lub zgodność z PHP5? Wybór nie był przeważnie skutkiem wielogodzinnych analiz, a wynikiem przypadku - zauroczenia i zgłębienia wiedzy do momentu aż okazało się, że nie można w tym cudzie zrobić czegoś na czym nam zależy. Mając już tę wiedzę szukaliśmy innego narzędzia i historia się powtarzała do momentu aż wszystkie nasze potrzeby zostały spełnione. Ten proces jest niestety niezbędny.
Moim zdaniem dobry framework to taki, który rozumiemy i którego ograniczenia znamy. Taki, który jest dla nas transparentny podczas tworzenia aplikacji ponieważ nie zastanawiamy się jak go używać. Po prostu używamy podobnie jak nie zastanawiamy się co zrobić z łopatą - kopiemy.:)
Framework musi spełniać pewne krytyczne oczekiwania, które na pewno mamy. Oczekujemy, że część pracy zostanie z nas zdjęta. Aby się o tym przekonać warto po prostu zapoznać się z podstawowymi funkcjami danego frameworka.
Kolejnym krokiem jest poczytanie jakiegoś tutoriala (blog?:)). Jeśli oferowane funkcje ci odpowiadają i rozumiesz kod bez czytania dodatkowych komentarzy to myślę, że ten framework jest dla Ciebie.
Inna droga: uczysz się używać każdego sensownego frameworka i wybierasz najlepszy kierując się subiektywnym osądem. Oczywiście jeśli dysponujemy czasem.
Z mojego doświadczenia:
Przeszedłem okres Zenda - podziękowałem. Później napisałem własny lżejszy framework (taki mały Zend;)), którego używałem (nie tylko ja) do produkcji oprogramowania w firmie - sprawdził się, chociaż powstał niejako przy okazji. Problem w tym, że potrzebuję nowych narzędzi, a nie mam czasu pisać jednocześnie core'a i samej aplikacji, więc zacząłem poznawać CakePHP. Oferuje on jak dla mnie zbyt wiele. Nie potrzebuję koparki i spychacza tylko łopaty i ew. grabek. Nastał więc CodeIgniter. I to było to do czasu aż zapoznałem się z Kohana. I co? I zostanę przy tym do dnia gdy analizując kolejny projekt stwierdzę, że nie da się zrobić tego szybko w tym frameworku. Była to jednak moja droga, która w przypadku większości osób się nie sprawdzi.:)
BTW: Niektórzy uważają, że CI jest lamerski. OK. Jaki język taki frmework (i oczywiście wszyscy od nielamerskiego symphony mnie teraz zlinczują:D).