Framework CakePHP

Transkrypt

Framework CakePHP
Framework CakePHP
Andrzej Rydzewski 30.04.2010
1. Framework
Framework można porównać do rusztowania lub szkieletu. Jego zadaniem jest ułatwienie
pisania aplikacji.
Każdy framework dostarcza różne możliwości i wykorzystuje inne podejście do ich wykorzystania.
Niektóre wymuszają korzystanie ze wzorców projektowych, jeszcze inne udostępniają biblioteki i
funkcje które mają ułatwić pisanie oprogramowania np. proste funkcje do odczytu i zapisu w bazie
danych lub często wykonywanych zadań.
2. MVC
MVC jest wzorcem projektowym, który jest często wykorzystywany do tworzenia aplikacji
internetowych. Wzorzec ten wymusza na programiście rozbicie aplikacji na trzy komponenty:
– Model (ang. Model)
– Widok (ang. View)
– Kontroler (ang. Controller)
Model jest odpowiedzialny za komunikację (odczyt i zapis) z bazą danych.
Widok prezentuje dane dla użytkownika (np. internauta) aplikacji.
Kontroler jest częścią logiczną, która jest wywoływana jako pierwsza. W zależności jakie dane
użytkownik chce uzyskać kontroler może wysłać zapytanie do modelu aby ten pobrał dane z bazy
danych. Zwrócone dane kontroler może przetworzyć jeżeli tego wymaga widok. Zmodyfikowane
dane (jeżeli tego widok wymagał) przekazywane są dla widoku.
3. Framework CakePHP
CakePHP jest frameworkiem napisanym w obiektowym języku PHP. Jego zadaniem jest
ułatwienie pisania aplikacji internetowych przez dostarczenie podstawowych działań na bazie
danych i funkcji które bardzo często występują w różnych aplikacjach. Dobrym przykładem może
być udostępnienie funkcji paginacji stron.
Cechami, które wyróżniają frameworka CakePHP są między innymi:
– łatwa i szybka nauka CakePHP – wystarczy podstawowa wiedza języka php
– funkcja CRUD (ang. Create Read Update Delete) do zarządzania danymi w bazie danych
– generator kodu – aplikacja, dzięki której można skonfigurować połączenie CakePHP z bazą
danych i wygenerować modele, kontrolery dla każdej tabeli w bazie danych. Generator
również może wygenerować pliki widoku dla tabel i funkcji index, add, edit, delete
– scaffolding – funkcja ta generuje w locie (bez uprzedniego napisania ich przez programistę)
funkcje dla kontrolera i pliki widoku
– model MVC – framework wymusza na programiście aby ten rozbijał swoją aplikacje na trzy
podstawowe komponenty: model, widok, oraz kontroler
– walidacja danych – umożliwia w łatwy sposób zdefiniowanie reguł walidacji danych.
Można wymienić kilka funkcji udostępnianych przez frameworka do odczytu danych: read,
find, findBy, findByAll, field, read, query.
Spośród tych funkcji najczęściej wykonywane są: read i find.
Funkcja read odpowiada za odczyt jednego rekordu z bazy danych z tego względu funkcję często
wykonuje się przy prezentacji jednego rekordu lub jego modyfikacji.
Do pobrania mieszanych danych z różnych rekordów najlepiej użyć funkcji find, która przyjmuje
parametry takie jak warunek wyboru rekordów, sortowanie, grupowanie danych i limitowanie ilości
zwróconych danych.
W frameworku CakePHP zadbano o to aby zapis danych był prosty ale również odporny na
błędne dane przekazane przez użytkownika aplikacji. Funkcja save przyjmuje jako pierwszy
argument dane do zapisu, a jako drugi parametr informujący czy przy zapisie dane mają zostać
sprawdzone pod kątem poprawności.
Jeżeli programista chce zaimplementować w swojej aplikacji autoryzację użytkownika,
może do tego celu skorzystać z komponentu Auth który jest udostępniany, jak i wiele innych
komponentów przez frameworka.
4. Wnioski
Bardzo ważne jest aby do stworzenia aplikacji wybrać jak najlepsze narzędzia. Narzędzia te
powinny ułatwić i przyspieszyć jej napisanie.
Jeżeli jest to aplikacja internetowa warto wykorzystać do tego frameworka CakePHP.
Udostępnia on podstawowe funkcje, które każda aplikacja internetowa implementuje. Posiada
bogate zaplecze dodatkowych komponentów i helperów, które ułatwią pisanie zaawansowanych
aplikacji.

Podobne dokumenty