CakePHP | CakePHP - MVC Framework

CakePHP jest pierwszym frameworkiem z jakim miałem styczność podczas mojej przygody z programowaniem. Frameworki zazwyczaj narzucają jakiś sposób działania, do którego należy się stosować, lecz są też takie, które dają większą swobodę. Cake nie jest może jakiś innowacyjny, ale za to nauka działania frameworków na podstawie Cake jest dobrym pomysłem. W łatwy i intuicyjny sposób można budować na nim aplikacje internetowe. Jak każdy framework, tak i ten ma pewne wymagania jak, na przykład, konkretny wzorzec nazewniczy klas, struktura plików czy struktura bazy danych.

Framework o którym mowa jest oparty o wzorzec MVC, czyli Model-View-Controller. W duzym skrócie: Model odpowiada za logikę i walidację danych pobieranych z formularzy. View to pliki widoków - treści stron, generowane przez skrypty PHP. Controller - klasy, które mają za zadanie komunikację między Model a View, są to zbiory funkcji, mające na celu pobranie danych z bazy danych, ich obróbkę i przekazanie do widoku. Również w kontrolerze odbywają się wszystkie operacje takie jak autentykacja użytkownika, czy wyszukiwanie elementów w bazie danych.

Od czego zacząć? Ja polecam przejrzenie oficjalnej strony CakePHP.org gdzie jest podany podstawowy przykład użycia frameworka. Przykład o którym mowa to zbudowanie prostego bloga. Powiedzieć można, że przykład banalny, ale daje to ogólny widok jak działa Cake oraz jakie są zasady przy tworzeniu aplikacji. Na początku jeżeli pierwszy raz mamy styczność z jakimkolwiek frameworkiem to wszystko może się wydawać trudne i zawiłe. Tak jednak nie jest :) Oczywiście, może nie jestem obiektywny w tym temacie, bo jednak już od 2 lat programuję korzystając z tego rozwiązania.

Nie będę się teraz rozpisywał i tłumaczył jak napisać aplikację opartą o Cake, jednak warto wspomnieć o "cake bake". O czym mowa? Mowa o zastosowaniu konsoli/terminala do generowania kodu. W szybki i łatwy sposób mamy możliwość generowania szablonu dla poszczególnych modeli, kontrolerów i widoków, a wszystko w oparciu o wcześniej przygotowaną strukturę bazy danych. Od tego właśnie należy zacząć - przygotowanie tabel w bazie danych. Na podstawie tabel, "bake" potrafi rozpoznać jakie modele należy utworzyć, pyta krok po kroku o walidację o nazewnictwo; a nawet dzięki temu narzędziu możemy szybko załatwić całego CRUD - Create/Read/Update/Delete. Czyli wszystkie podstawowe operacje do zarządzania treścią, co jest oczywiście tylko wersją podstawową. Wszystkie funkcje można dopasować potem pod własne potrzeby. Generowanie kodu jest o tyle dobre, że szybko pomoże nam przygotować podstawową strukturę projektu. Przyznam, że sam używam konsoli do generowania poszczególnych elementów, ponieważ znacznie zaoszczędza to czas spędzony nad tworzeniem kodu. Szczegóły korzystania z "cake bake" na pewno opiszę dokładniej w innym artykule w nieco późniejszym terminie.

CDN.

Kontakt