• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

PHP - Framework na początek

Object Storage Arubacloud
0 głosów
416 wizyt
pytanie zadane 2 czerwca 2018 w Rozwój zawodowy, nauka, praca przez OdsetekGlupoty Pasjonat (15,360 p.)
Witam,

Ostatnio podszkoliłem się z obiektówki w PHP i za niedługo mam zamiar zabrać się w końcu za jakiś framework. Nie chcę użyć jednego frameworka do jednego projektu. Chcę, żeby ułatwił mi dalszą naukę i rozszerzył horyzonty. Trochę o tym czytałem, ale w końcu nie wiem. Wiele osób poleca Symfony, ale mnie to jakoś nie przekonuje. Zend za trudny. Wiem, że jest jeszcze wiele ciekawych propozycji więc postanowiłem się zwrócić o pomoc do społeczności forum. Bardzo fajnie, jeśli framework byłby rozwijany, poszukiwany na rynku pracy za parę lat (o ile da się to przewidzieć). Bardzo lubię backend i będę szedł w tym kierunku.

3 odpowiedzi

0 głosów
odpowiedź 2 czerwca 2018 przez Assasz Nałogowiec (30,460 p.)
wybrane 3 czerwca 2018 przez OdsetekGlupoty
 
Najlepsza

Zanim zaczniesz swoją przygodę z frameworkami jest parę rzeczy, którym powinieneś się przyjrzeć najpierw:

  • Architektura MVC - większość frameworków właśnie na niej się opiera
  • Composer - must-have przy pracy z frameworkami czy jakimikolwiek bibliotekami / komponentami zewnętrznymi
  • Autoloading (czyli też Composer i PSR-4), przestrzenie nazw - aby się nie pogubić przy strukturze aplikacji
  • Chyba nie muszę wspominać o OOP i wzorcach projektowych (chociaż podstawy)
  • HTTP - podstawy wystarczą, ale musisz wiedzieć, jak ten protokół działa

O ile Composera możesz nauczyć się w trakcie, to nie znając pozostałych rzeczy możesz się trochę pogubić - no chyba, że preferujesz naukę pływania na głębokich wodach. Jest też parę pojęć, które pojawiają się chyba we wszystkich frameworkach i które dobrze jest znać - jak np. te, które wspomniał ShiroUmizake - ale równie dobrze możesz je poznać potem (aczkolwiek sama architektura MVC wykorzystuje wiele z nich).

Potem w zasadzie możesz wybrać każdy framework, który wyda Ci się interesujący, nie powinieneś mieć żadnych problemów z jego nauką. Możesz zacząć od microframeworków, ale nie koniecznie - zazwyczaj ich architektura jest mocno uproszczona względem pełnych frameworków, a uproszczenia dobrze jest zostawić sobie na potem.

Jeśli miałbym polecić Ci jakiś konkretny framework, to... poleciłbym Ci Symfony. Bo jest po prostu dobry. Do tego bardzo popularny i dość łatwy w nauce (przynajmniej dla mnie był). A jak nie to masz Yii, Phalcona i całą masę innych.

komentarz 3 czerwca 2018 przez Comandeer Guru (601,110 p.)
  • Architektura MVC - większość frameworków właśnie na niej się opiera

IMO to mit. Nie powiedziałbym, że Symfony czy Laravel to typowe MVC. W architekturze, w której centralnym punktem jest REST, a wszystko jest rozbite przy pomocy DI i serwisów, tak średnio da się mówić o MVC. To już zupełnie inny twór.

W przypadku mikroframeworków MVC staje się jeszcze bardziej rozmyte. 

komentarz 3 czerwca 2018 przez Assasz Nałogowiec (30,460 p.)
To prawda, ale nie wskazałem konkretnych frameworków. Jeśli dany framework nie implementuje MVC, to pod niektórymi względami i tak stara się taką architekturę przypominać. Nawet architektury z obszaru DDD wykorzystują takie komponenty jak kontrolery (czasem nieco zmienione, ale jednak). Także moim zdaniem znajomość MVC bardzo ułatwia życie, nawet jeśli nie korzystamy z czystego MVC.
komentarz 3 czerwca 2018 przez OdsetekGlupoty Pasjonat (15,360 p.)
Może jednak zdecyduję się na Symfony, chociaż byłem trochę średnio do tego przekonany. Z tego co się dowiedziałem to muszę dokładniej poznać MVC i chyba zacznę przygodę z Symfony.
1
komentarz 3 czerwca 2018 przez Comandeer Guru (601,110 p.)

Jeśli dany framework nie implementuje MVC, to pod niektórymi względami i tak stara się taką architekturę przypominać. 

Jak masz młotek, to wszystko przypomina gwóźdź.

 DDD czy inne bardziej skomplikowane architektury odchodzą od podziału na model, widok i kontroler. W MVC model jest często traktowany jako miejsce na logikę biznesową, co w przypadku DDD nie ma za bardzo sensu.

No i co choćby z Event Sourcing? To już nawet nie leżało obok MVC.

komentarz 3 czerwca 2018 przez Assasz Nałogowiec (30,460 p.)

Wymienię tylko kilka spośród bardziej popularnych frameworków PHP o architekturze MVC:

  • Yii
  • Phalcon
  • Zend
  • CodeIgniter
  • CakePHP
  • FuelPHP

To właśnie miałem na myśli pisząc:

  • Architektura MVC - większość frameworków właśnie na niej się opiera

Wygodnie jest dobierać przykłady, które stoją za naszą opinią ;) Tak samo z DDD - ciężko mówić tam o modelu, skoro jest rozbity na 3 różne warstwy. Jednak kontrolery i widoki w jakiś sposób nadal tam funkcjonują.

Nie chcę się spierać z osobą mającą 16 razy więcej punktów ode mnie :) Chciałem po prostu przekazać, że warto poznać MVC nie tylko dlatego, że jest popularnym rozwiązaniem wśród frameworków, ale też jest dobrym wprowadzeniem do pozostałych architektur.

komentarz 3 czerwca 2018 przez Comandeer Guru (601,110 p.)

To ja tu tylko zostawię ;) http://blog.iandavis.com/2008/12/the-web-is-rmr-not-mvc/

  • Zend

Ze strony domowej:

Open architecture based on Middleware or MVC 

Na chwilę obecną zresztą Zend często jest wykorzystywany jak Symfony: jako zbiór komponentów. 

komentarz 3 czerwca 2018 przez Assasz Nałogowiec (30,460 p.)
Ciekawy artykuł, na pewno się bliżej temu przyjrzę. Dzięki.
0 głosów
odpowiedź 2 czerwca 2018 przez Mariusz08 Maniak (62,300 p.)

Symfony.

  • Bardzo popularny
  • Rozwijany
  • Posiada duże community
  • Zbudowany na podstawie komponentów
  • Z komponentów da się korzystać bez korzystania z Symfony (np. Laravel korzysta z komponentów Sf, podobnie WP)
0 głosów
odpowiedź 2 czerwca 2018 przez ShiroUmizake Nałogowiec (46,300 p.)
Jeżeli na początku chcesz się zapoznać specyfiką budowy frameworków , niż wsiąknąć w dany framework. To polecam micro-framework silex.

Jeżeli miałeś styczności ORM, routingiem, serwisami, repozytoriami. Powineś dać radę.

Podobne pytania

0 głosów
1 odpowiedź 340 wizyt
0 głosów
2 odpowiedzi 544 wizyt
pytanie zadane 27 sierpnia 2017 w PHP przez KariK-02 Mądrala (6,030 p.)

92,568 zapytań

141,420 odpowiedzi

319,622 komentarzy

61,954 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...