Първи Стъпки с CakePHP
Patty-cake, patty-cake...
Увод
Добре дошли в рая на интернет разработването.
Ако четете увода към техническото ръководство, най-вероятно имате прекалено много време за губене. Ние не сме знаменитости и тъй като същината е това, което търсите, прескочете излишните секции и продължавайте нататък.
За кого е предназначено
За да разберете това ръководство, трябва да сте добре запознати с PHP. Добри познания в обектно-ориентираното програмиране ще са от полза, въпреки че мисля, че въвеждащите секции на ръководството могат да бъдат един добър помощник. И така, материалът е написан за разработчици с различни възможности - всеки, който иска да създава гъвкави, лесно поддържащи се приложения бързо и приятно.
Трябва да кажа, че има секции, засягащи технологии, които са извън обсега на настоящото ръководство. Аминистриране на уеб сървъри, AJAX и JavaScript техники и други подобни може да бъдат докоснати на някои места, но в по-голямата част от времето ще се придържаме към CakePHP.
Въведение в CakePHP
Какво е CakePHP? Защо да го използваме?
CakePHP е свободна проектова рамка с отворен код за бързо разработване на PHP. Тя е основополагаща структура за програмисти, който създават уеб приложения. Нашата главна цел е да Ви позволим да работите структурирано и бързо - без загуба на гъвкавост.
CakePHP изважда монотонността от разработването на уеб приложения. Ние Ви даваме всички инструменти, от които имате нужда, за да започнете да програмирате точно това, което трябва да се свърши: специфичната за вашето приложение логика. Вместо да откривате колелото всеки път, когато започвате нов проект, си вземете копие от CakePHP и се заемете с правенето на истинската функционалност на приложението.
CakePHP има активен екип разработчици и общество, които добавят нова стойност към проекта. Освен че Ви помага да не откривате колелото всеки път, CakePHP се грижи ядрото на приложенията Ви да е добре тествано и постоянно подобрявано.
Ето бърз списък на някой особености на CakePHP, които можете да използвате:
- Активно, приятелско общество
- Гъвкав лиценз
- Съвмеситмост с версии 4 и 5 на PHP
- Вграден CRUD за ДБ взаимодействия
- Изграждане скеле на приложението
- Генериране на код
- MVC архитектура
- Използване на лесни за модифициране URLи и уеб пътища ( friendly-urls )
- Вградена валидация
- Бърза и гъвкава темплейт система (PHP синтаксис, с хелпъри)
- Презентационни Хелпъри за AJAX, JavaScript, HTML формуляри и други
- E-mail, Бисквитки, Сигурност, Сесии и Компоненти за боравене със клиентските завки
- Гъвкав ACL
- Почистване на данните
- Гъвкаво Кеширане
- Локализация
- Работи от всякаква директория на уеб сайта с малко до никакво настройване на Apache
Къде можете да получите помощ
Рецептурника
Отишли сте на правилното място. Този наръчник би трябвало да е първото място, на което да търсите отговори. Както много други проекти с отворен код, към нас често се присъединяват нови хора. Първо се опитайте да отговорите на въпросите си сами. Отговорите може да дойдат бавно, но ще останат за по-дълго и с времето ще намалее натоварването върху нас. И API-а, и ръководството имат онлайн вариант.
API
Точно на място направо от разработчиците на ядрото - API-а на CakePHP е най-изчерпателната документация и показва как работят всички малки парченца от фреймуорка.
IRC каналът
#cakephp @ irc.freenode.net
Ако сте затруднени, обърнете се към нас в CakePHP IRC канала. Някой от екипа за разработване обикновено е там, особено през деня ( в Северна и Южна Америка ). Много ще се радваме да Ви чуем - независимо дали търсите помощ, опитвате се да намерите потребители от Вашия регион или пък искате да дарите чисто новата си спортна кола.
Пекарната
Пекарната на CakePHP е сборното място на всичко от CakePHP. Там можете да търсите уроци и примери. След като се опознаете с CakePHP, елате, споделете Вашия опит с обществото и спечелете слава и богатство.
CakeForge
CakeForge е още един източник за разработчиците. Можете да го използвате, за да хоствате свои проекти и да ги споделяте с останалите. Ако търсите ( или искате да споделите ) някой компонент-убиец или плъгин, заслужаващ похвала - посетете CakeForge.
Официалният сайт на CakePHP
Официалният сайт на CakePHP винаги е страхотно място за посещение. На него можете да откриете връзки към инструменти, видео уроци, възможности за дарения и сваляния.
Google Групата
http://groups.google.com/group/cake-php
CakePHP има и много активна Google Група. Тя може да бъде добър източник на архивирани отговори, често задавани въпроси и получаване на отговори за настоящи проблеми.
Разбиране на Модел-Изглед-Контролер
Преглед
Добре написаните CakePHP приложения следват MVC (Модел-Изглед-Контролер) софтуерния шаблонен дизайн. MVC разделя вашето приложение на три основни части. Моделът представлява данните на приложението, изгледът представя презентацията на данните от модела, а контролерът се грижи за заявките от потребителите.
IMAGE
Фигура 1: Проста MVC Заявка
Фигура 1 показва пример на проста MVC заявка в CakePHP. Нека кажем, че потребител Рикардо тъкмо е кликнал върху хипервръзката "Buy A Custom Cake Now!" от началната страница на Вашето приложение.
- Рикардо кликва върху хипервръзката, която сочи към http://www.example.com/cakes/buy и неговият браузър прави заявка към уеб сървъра.
- Диспечерът проверява заявения URL (/cakes/buy) и подава заявката към съответния контролер.
- Контролерът изпълнява специфичната приложна логика. Например, може да провери дали Рикардо се е регистрирал.
- Контролерът също така използва моделът, за да получи достъп до данните на приложението. Най-често моделите са свързани с таблици от бази данни, но също така могат да представят LDAP записи, RSS или файлове. В нашия пример контролерът използва модел, за да извлече данни за последните поръчки на Рикардо.
- След като контролерът е свършил своята работа с даните, той ги предава на изгледа. Изгледът взема данните и ги подготвя за представяне на потребителя. Изгледите в CakePHP най-често идват в HTML формат, но също така могат да бъдат PDF, XML документ или JSON обект в зависимост от Вашите нужди.
- След като изгледът е използвал данните от контролера, за да създаде цялостен изглед, съдържанието от този изглед се праща обратно на браузъра на Рикардо.
Почти всички заявки към Вашето приложение ще следват този простичък шаблон. Ние ще добавим някой специфични за CakePHP детайли малко по-късно, така че се опитайте да запомните този основен цикъл, докато четете нататък.
Ползи
Защо да използваме MVC? Защото е изпробван и истински софтуерен шаблонен дизайн, който превръща Вашето приложение в лесно поддържащ се, модулярен, бързо разработен пакет. Създаването на приложни задачи в отделни модели, изгледи и контролери прави Вашето приложение много гъвкаво. Лесно се добавя нова функционалност или пък се префасонира старата. Модулярният и отделен дизайн позволява на разработчиците да работят едновременно без да си пречат един на друг.
Ако досега никога не сте създавали приложение по този начин, трябва да знаете, че отнема малко време за свикване, но сме сигурни, че след като веднъж сте създали първото си CakePHP приложение, няма да искате да използвате нищо друго.

login to add a comment