Po przeczytaniu niektórych odpowiedzi, chciałbym najpierw powiedzieć, że często nie masz zbyt wiele opcji, z jakich ram zamierzasz korzystać, czy też będziesz używać jednego z nich (jako profesjonalista). Nie chcę cię zastraszać, ale musisz zbudować wystarczającą wiedzę na temat PHP, aby umożliwić przechodzenie z jednego frameworka do drugiego, a także używanie więcej niż jednego frameworka na raz.
kiedy muszę użyć frameworka PHP, takiego jak CakePHP?
Nie ma na to uniwersalnej odpowiedzi. Jako profesjonalista zostaniesz poproszony o rozwiązanie określonych problemów, a to będzie decydujący czynnik, kiedy i co będzie z każdym projektem, szczególnie jeśli klient ma określone zapotrzebowanie. Ale ogólnie rzecz biorąc, zawsze będziesz używał jakiejś struktury frameworka z PHP, chyba że modyfikujesz lub rozszerzasz wcześniej istniejącą aplikację, która ma własną platformę (taką jak Wordpress lub PHPBB).
Co oferuje mi ta i inne podobne frameworki PHP?
Jak powiedział Dirk, oferują abstrakcję. Oznacza to, że biorą one wspólne, wieloetapowe procedury i starają się, aby były jak najprostsze i usprawnione. Krótko mówiąc, starają się przedstawić rozwiązania typu „dodaj wodę” do typowych zadań.
I czy naprawdę ważne jest, aby używać ram, aby być profesjonalistą?
Ogólnie rzecz biorąc, nie, nie jest ważne, aby używać ram, aby być profesjonalistą. Ale realistycznie, nie będziesz miał kariery, jeśli nie znasz przynajmniej kilku wspólnych ram. PHP bez frameworka jest jak C ++ bez biblioteki std. Nie potrzebujesz go i możesz zrobić więcej bez niego, ponieważ będziesz bezpośrednio korzystać z funkcji blokowania języka niższego poziomu, ale zrobienie tego samego zajmie ci znacznie więcej czasu.
Czy mogę stworzyć własną platformę, aby zapewnić funkcje, które mi się podobają?
Tak. W rzeczywistości prawdopodobnie to zrobisz, nawet jeśli nieumyślnie. Nie mam tu na myśli ekspansywnego frameworka typu „wszystko do zrobienia”, ale raczej zestaw narzędzi z podstawowymi funkcjami i skryptami wykonującymi zadania, które nie są powszechne ani wystarczająco ogólne, aby poradziły sobie z nimi przeciętne frameworki. Mój składa się w zasadzie z różnych systemów plików, obsługi procesów i bitów Tex-ex z kilkoma różnymi narzędziami do zwijania i przesyłania strumieniowego / gniazdowego.