Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak dalej się rozwijać z PHP?, Nieco inny temat :)
ALittleOne
post 26.03.2017, 17:18:53
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 26.03.2017

Ostrzeżenie: (0%)
-----


Cześć,
tytuł tematu od razu zdradza, że jest nieco inny i nie szukam pomocy czy naprowadzenia na rozwiązanie jakiegoś problemu stricte-programistycznego. Chodzi o rozwój w kwestii PHP.
Opisując w skrócie sytuację, to od nieco ponad roku pracuję z tym powiedzmy na poważnie, pełnoetatowo (wcześniej sam dłubałem z różnymi rzeczami i przy open source, własny cms itp.) przy sporym projekcie - niewielki zespół, a ze względu na maskarycznie zmieniające się potrzeby biznesowe (czasami zmiana koncepcji z dnia na dzień) kod to w dużej mierze takie nieco spaghetti... Pracujemy w zendzie i z tego co zdążyłem się zorientować, framework daje tutaj głównie podział wg. wzorca MVC oraz ułatwia nieco rzeczy. Reszta... no nie wiem czy można powiedzieć, aby zalety frameworka jako takiego są wykorzystywane.

Myślę natomiast o rozwoju. TDD, SOLID czy DDD... nie są mi to pojęcia obce, ale sucha teoria, wiecie jak to jest... tutaj bywa, że sam coś wdrażam, od choćby staram się stosować DRY, choć czy robię to na pewno dobrze, czy nie robię jakichś szalonych zależności między klasami... nie wiem. I zastanawiam się, jak mógłbym się tego dowiedzieć, nauczyć. Pracy nie chcę zmieniac, bo raz, że mimo wszystko właśnie przez te nagłe zmiany pozwala na rozwój (przez rok poznałem tyle nowości co wcześniej przez dłuuuuugo, dłuuugo), atmosfera jest świetna, mam wpływ na projekt i jego budowę, a do tego po prostu na chwilę obecną jest dla mnie bardzo dobrze płatna, a mam kwesti z życia osobistego, gdzie jest to potrzebne.

No to po pracy... tylko jak się za to zabrać? Przyznam, że chciałem poznać nowe narzędzia, zacząć od laravela i zrobić w nim aplikację malutką jakąś, może potem coś jeszcze.. potem symfony. Ale ostatnio rzuciła mi się w uszy wypowiedź Mariusza Gila na devtalk mówiąca o tym, że laravel to raczej antywzorce promuje... i bądź tu człowieku mądzy. Ja wiem, że w przypadku różnych rozwiązań i technologii jest często wojna jak masło vs margaryna, niemniej też nie chcę faktycznie "tracić czasu" (choć to nigdy nie jest strata, zawsze można później porównać i wybrać to, co w danej sytuacji lepsze) na coś, co nie nauczy mnie niczego sensownego. Ale wracając do choćby własnie TDD czy DDD - jak uczyć się samemu, albo jak ugryźć to inaczej, aby wiedzieć więcej i umieć wykorzystać to w praktyce, popełniać błędy, później je zauważać i natualnie, pojąć o co w tym chodzi, być w tym coraz lepszym? Siadam, robię przykładowo mini-bloga? Jakoś w tej sytuacji to wydaje mi się waleniem z haubicy do muchy, choć może się mylę i wymagam naprostowania przez bardziej doświadczonych.

Do tej pory polegałem głównie na książkach, ale np. w kwestii frameworków nie widziałem za wiele ciekawego - czy to laravel czy symfony, czy tym bardziej zend, np. z tego co mamy w PL dostępne to wszystko jest nieco przestarzałe i/lub moim zdaniem nieco dziwnie podchodzi do tematu (nie wiem czy dobrze, ale sam wyczuwam antywzorce jak ktoś w pliku routingu wrzuca sterowanie?). Z anglojęzycznymi wcale jednak nie jest jakoś specjalnie lepiej. To może kursy, szkolenia, o ile warto? Sam nie wiem, dlatego proszę o poradę - nie stoję w miejscu, ale czuję, że mógłbym sprawniej iść do przodu.
Go to the top of the page
+Quote Post
Tomplus
post 26.03.2017, 19:35:48
Post #2





Grupa: Zarejestrowani
Postów: 1 831
Pomógł: 225
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Nie wiem jak u Ciebie, ale u mnie rozwój polega na tworzeniu projektów. Każdy kolejny projekt to nowe umiejętności, problemy - wyzwania tworzą potrzeby które należy rozwiązać aby osiągnąć dany cel. Nawet przy prostych projektach może okazać się że pewne działania które stosowaliśmy do tej pory są nie na czasie i należy szukać nowych rozwiązań.

Na samej teorii daleko się nie zajedzie.
Go to the top of the page
+Quote Post
ALittleOne
post 26.03.2017, 20:46:08
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 26.03.2017

Ostrzeżenie: (0%)
-----


To wiem i właśnie obecnie pracuję w niewielkim zespole nad projektem, który dynamicznie się zmienia. Już widzę jakie błedzy zrobiłem kilka miesięcy temu i teraz podchodziłbym do tego inaczej... A niemal codziennie trzeba szukać rozwiązań dla nowych wyzwań, tak że pod tym względem jest ok. Chodzi mi raczej o sam fakt posługiwania się czymś, co jest np. "branżowym standardem", jak choćby symfony.
Go to the top of the page
+Quote Post
thek
post 27.03.2017, 00:01:55
Post #4





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Nie ma czegoś takiego jak branżowy standard. Są najwyżej dobre praktyki, których olewanie potrafi nas kopnąć po czasie boleśnie. To czego wiele osób nie mówi, to fakt, że bezkrytyczne ich stosowanie potrafi narobić więcej szkody niż pożytku czasem. O ile sama ich idea jest jak najbardziej słuszna nie znaczy to, że trzeba je stosować wszędzie, zawsze i w 100%. Może bowiem dochodzić do sytuacji, gdy jest to już sztuka dla sztuki i nie przyniesie żadnych korzyści. Może nawet wygenerować niepotrzebne koszty. Czy bowiem jest sens pisać test pokrycia dla setterów i getterów najprostszych? Dobre praktyki powinniśmy stosować, ale nie możemy tego robić automatycznie i bezrozumnie. Wszystko musi mieć swój sens. Dotyczy to wszystkiego: wzorców, SOLID, DRY, TDD, BDD, DDD i co tam jeszcze sobie nie wymyślisz za skróty. To musi naturalnie wynikać z tego co robisz i jak. Jeśli wrzucasz to na siłę, to może istnieć podejrzenie, że nie do końca to rozumiesz,a tym samym implementacja tego w projekcie może być błędna. To trochę tak jak z kultem Cargo. Naśladujesz coś, licząc na określony skutek, choć on nie musi nastąpić, ponieważ nie rozumiesz tego co robisz. Zrozumienie przychodzi często dopiero z doświadczeniem i odpowiednio dużą ilością projektów oraz "kłótniami" z innymi developerami.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
lukaskolista
post 27.03.2017, 13:44:47
Post #5





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

Ostrzeżenie: (0%)
-----


Cytat
a ze względu na maskarycznie zmieniające się potrzeby biznesowe (czasami zmiana koncepcji z dnia na dzień) kod to w dużej mierze takie nieco spaghetti...
Chyba wszędzie wymagania zmieniają się z dnia na dzień, a mimo to da się utrzymać kod dobrej jakości. Kwestia podejścia - dasz sobie wejść na głowę bo musi być na ASAP to już tak będzie zawsze.

Cytat
No to po pracy...

Czemu po pracy? Jeżeli pracodawca nie pozwala Ci się rozwijać, tylko klepiesz w kółko to samo to jednak zastanów się nad zmianą pracy.

Cytat
Ale ostatnio rzuciła mi się w uszy wypowiedź Mariusza Gila na devtalk mówiąca o tym, że laravel to raczej antywzorce promuje...

True story.

Polecam czytać dobre książki ZE ZROZUMIENIEM. Nie mówię tu o czymś w rodzaju "Kurs PHP i MySQL", ale o klasyce. Ja tak robię od dłuższego czasu i na bierząco wdrażam nową wiedzę do mojej pracy. Teraz akurat czytam "Domain-Driven Design. Zapanuj nad złożonym systemem informatycznym" i stopniowo staram się korzystać na codzień ze zdobytej wiedzy. Co z tego, że cały projekt nie jest w DDD? Kod który piszę, a piszę spore integracje może być początkiem takiej praktyki w projekcie.

Co do oporu kolegów przed zmianami: w pragmatycznym programiście jest to opisane za pomocą historii o zupie z żaby - polecam przeczytać, w praktyce działa.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.04.2024 - 14:11