twojastara
2.12.2014, 01:00:56
Wątpię by temat miał wzięcie i by ktoś coś odpisał, dlatego bardzo będę wdzięczny za jakąkolwiek poradę w tej kwestii.
Otóż próbuję zrozumieć zasade działania jakiegoś złożonego projektu, na który się składają się setki klas i funkcji.
No załóżmy zainteresowałem się klasą (zasobu Frontcontroller) we frameworku Zend. Wchodząc w definicję klasy widzę, że poza kilkoma funkcjami dziedziczy po innej klasie (Zend_Application_Resource_ResourceAbstract), która jest w innym pliku, otwieram plik i przeglądzam klasę. Widzę w niej kilka funkcji, których znowu definicje są w kolejnych plikach. I ta funckja korzysta z kolejnej funkcji, której znowu definicja jest w jeszcze innym pliku. I tak daklej, i tak dalej. Wiadomo.
No i wlazłem już tak daleko w tym drzewie,że w ogóle zapomniałem co pierwotnie mnie interesowało.
Jak programista do tego podchodzi by połapać się w nowym, nie swoim projekcie? Jak to robicie w praktyce by nie zapętlić się w nieskończoność w zanurzanie się w kolejne funkcje. Może inaczej się nie da. A może dajecie wiarę, że funkcja odbiera konkretny parametr nie interesując się w jaki sposób to robi?
A może na tym własnie polega programowanie we frameworkach, że trzeba poznać każdą funkcję, każdą klasę?
Czytamy dokumentacje frameworków, z reguły funkcje i klasy mają opis co robią, co przyjmują jako parametr a to jak działa jakaś funkcja która wynikowo nas zadowala to już sprawa drugo planowa.. gdybym miał czas może chętnie bym przejrzał całego zenda ale tylko żeby coś z niego wynieść pod kątem jakości kodu etc.
To co mówisz to dla mnie klasyczny korpo coding, nie toleruje tego w małych i średnich projektach. Jak ktoś mi rozwala funkcjonalność na 5-10 plików w różnych folderach i poziomach aplikacji to mnie krew zalewa ale wiadomo - jest w tym logika i organizacja co odbija się na przyszłym rozwoju aplikacji więc przyzwyczaj się... netbeans, ctrl+f i jedziesz.. chociaż jak przytrzymasz CTRL i klikniesz myszką na interesującą Cie funkcje to pokaże Ci gdzie jest wykorzystywana i gdzie jest jej źródło.
by_ikar
2.12.2014, 09:05:28
Nie musisz znać każdej funkcji i każdej klasy, bardzo często wystarczy samo odpowiednie nazywanie klas/metod aby zrozumieć do czego ona służy. Akurat zend jest bardzo złym przykładem jeżeli chodzi o uczenie się, głównie dlatego że jest stary i wykorzystuje wiele technik których dzisiaj się nie stosuje. W fajny sposób kiedyś fabien opisał jak można z komponentów symfony stworzyć "swój" framework, tłumacząc przy tym co do czego służy.
http://fabien.potencier.org/article/50/cre...mponents-part-1 nie jest tego nie wiadomo jak dużo, a jak zrozumiesz działanie przynajmniej tych podstawowych komponentów symfony, to zrozumiesz działanie przynajmniej 3 najpopularniejszych frameworków (symfony, laravel, silex) + composer.
Sam pracuje od kilku miesięcy w zendzie i irytuje mnie każda godzina poświęcona temu FW, zwłaszcza po tym jak napisałem kilka niewielkich apek w symfony, czy jego komponentach. Mam tak ogromną chęć nawet po pracy usiąść i przepisać tą aplikacje z zenda, że nawet nie masz pojęcia.. Dlatego odradzam ci marnowanie jakiegokolwiek czasu na tego FW..
twojastara
2.12.2014, 11:16:11
Wybrałem Zend bo ma zdecydowanie najwięcej ebooków, tutoriali w sieci i najwięcej ofert pracy w pracuj.pl
@by_ikar
pracujesz na Zend 2? Mówisz, że Zend2 wykorzustuje przestarzałe techniki?
by_ikar
2.12.2014, 14:48:48
Niestety ale pracuje na zend 1.2 i po underscorowych nazwach klas wydawało mi się że chodzi o właśnie tego starego zenda, ale widzę nawet w zend2 wciąż powielają te same sposoby nazywania klas, co jest niestety ale głupie, bo nie po to przestrzenie nazw powstały, aby wciąż emulować przestrzenie nazywają klasy według całej ścieżki do klasy -.-
Jeżeli według ciebie zend ma najwięcej info, no to lepiej popatrz na symfony, na rzecz którego wielu ludzi porzuciło zarówno starego zenda jak i nowego.
Turson
2.12.2014, 15:18:19
Cytat(twojastara @ 2.12.2014, 11:16:11 )

Wybrałem Zend bo ma zdecydowanie najwięcej ebooków, tutoriali w sieci i najwięcej ofert pracy w pracuj.pl
@by_ikar
pracujesz na Zend 2? Mówisz, że Zend2 wykorzustuje przestarzałe techniki?
Od kiedy w ZF2 jest dużo ofert pracy? ZF1 jest popularniejszy.
twojastara
2.12.2014, 16:04:29
Cytat(Turson @ 2.12.2014, 15:18:19 )

Od kiedy w ZF2 jest dużo ofert pracy? ZF1 jest popularniejszy.
no ale gdzie tak napisalem?
uczę sie Zend 1, zapytałem o Zend 2, bo planowałem później na niego przeskoczyć/pouczyć się, dlatego zapytałem czy ta krytyka dotyczy też Zend 2.
Ale ilość krytyki zend z jaką się ciągle spotykam każe mi z bólem, bo poświęciłem na naukę zend kilkanaście ostatnich dni, przenieść się na Symfony2.
by_ikar
2.12.2014, 18:52:18
Nie z bólem, tylko powinieneś się cieszyć że tylko tyle poświęciłeś. Niestety, ale ta krytyka nie jest bez powodu, a powodów jest aż nadto aby w ogóle nie zasiadać do zenda. Może trochę przesadzam, przez pryzmat tego co "otrzymałem", no ale czuje się mega źle, pracując na symfony, a potem cofając się do zenda :/
viking
2.12.2014, 19:08:20
A mnie z kolei zawsze boli jak patrzę na symfony ;-) w zendzie jest wszystko logiczne i po nastu latach pracy z nim dalej uważam że to świetny fw. Teraz bym może myślał o yii2.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.