Програмування на PHP, Kohana, Введення

24.07.2015

Вивчаємо PHP разом з Андрієм Морковиным. Введення

Програмування на PHP, Kohana, Введення

Вітаю вас, шановний читачу!

Сьогодні я пропоную перейти від вивчення програмування зовнішнього вигляду сторінки ( html-верстки. JavaScript ) безпосередньо до програмування движка сайту.

Озброївшись знаннями принципів блокової HTML верстки, які можна почерпнути з моє го го безкоштовно відеокурс а. ми займемося наповненням статичних HTML-сторінок життям за допомогою мови програмування веб-сценаріїв PHP і відкритого об’єктно-орієнтованого фреймворка Kohana .

Я планую опублікувати цикл статей, для початківця веб-програміста, основною метою якого буде спроба полегшити поріг входження новачка в складну тему розробки сайту на PHP.

Як я вже встиг помітити, сайт ми будемо будувати на фреймворку Kohana. Це досить потужний і вдало вийшов веб-фреймворк, що включає в себе всі ті нововведення в підході до PHP-програмування, які виникли за останні роки і вважаються правильними і виправданими серед маститих програмістів. Це і об’єктно-орієнтований підхід, і модель-контролер-вид парадигма (не лякайтеся незрозумілих слів, після навчання за даним курсом ці поняття будуть для вас елементарними).

Фреймворк дозволить, використовуючи відточеним чином реалізовані в ньому рішення, як з кубиків збирати наш проект. Вже готові шматки коду, написані професіоналами — ось що це за кубики.

Крім того, фреймворк Kohana дозволяє на 100% використовувати такий модний, серед сучасних PHP-програмістів, об’єктно-орієнтований підхід (ООП). На протязі даного курсу ми обов’язково познайомимося з принадами ООП. А ще і поділ коду парадигмою MVC… Так що підписуйтесь на RSS або отримуйте свіжі статті на ел. пошту щоб не пропустити найцікавіше.

Об’єктно-орієнтований підхід

Пояснити дану філософію я спробую за допомогою притчі:

Був Світ і був Бог. Бог вирішив заселити маленьку зелену планету людьми. Сотворив він Адама і Єву, він наділив їх здатність бігати, стрибати і виконувати інші фізіологічно необхідні дії і задоволений пішов відпочивати.

Повернувшись після відпочинку Він вирішив збільшити народонаселення. Але, оскільки у Бога були інші невідкладні справи, на розвагу залишалося мало часу. І вирішив Він не навчати кожного новоствореного людини фізіологічним дій, а один раз описати всю фізіологію за принципом Адама і Єви. Сказано — зроблено, описав і назвав Він це опис класом. Так буде у цього класу ім’я «людина розумна» проголосив Він. І стало так.

На основі класу були згенеровані екземпляри класу під іменами Адам2, Ева2 і пішла справа.

Оскільки всі фізіологічні функції були описані класі. не складно здогадатися, що екземпляри класу володіли ними апріорі. Ось така економія божественного часу вийшла.

І вирішив Бог знову приділити час розваги з людьми і світом. І захотів Він навчити людей читати книги, але божественного часу на розвагу залишалося мало і не хотілося Йому розбиратися в описі старого класу «людина розумна». Створив Він новий клас під назвою «людина читає» і навчив він його процесу читання книг (взяти книжку з полиці, сісти в крісло, відкрити зміст…), а фізіологічні функції клас «людина читає» успадкував від класу «людина розумна». І стало так.

Наступний клас «людина цифровий» успадкував вміння читати книги від «людини, що читає», фізіологічні функції від «людини розумної» і новим його вмінням стало протирання штанів перед комп’ютером.

Ваша бабуся вміє користуватися комп’ютером? Ні? – Це тому, що вона екземпляр класу «людина читає» і «людина, що дивиться серіали».

І ще пару слів притчі.

Бог вирішив назвати функцію екземпляра класу (наприклад, здатність читати книги) дивним словом — метод .

А характеристики екземпляра класу (у кожного екземпляра класу «людина розумна» є характеристики (зріст, вага, колір очей, довжина рук), це щось на зразок змінних) — полями .

І стало так. Зрозуміло?

Модель-контролер-вид

Довгий час у веб-розробці панував стиль програмування, змішуючий воєдино HTML, що відповідає за логіку відображення (який текст буде абзацом, який заголовком, де поставити картинку…), і PHP, відповідальний за бізнес-логіку (висновок тієї чи іншої статті з бази даних, авторизацію користувача, збереження коментарів…).

У реалізованого таким чином сайту відсутня гнучкість, модифікація його функціоналу — завдання не з легких, а вже якщо мова зайде про передачу такого проекту іншому програмісту…

Не дарма цей стиль програмування називається говнокодингом .

На зміну говнокоду прийшов об’єктно-орієнтований підхід із застосуванням стилю програмування « модель-контролер-вид ».

Щоб не плодити говнокод, у фреймворку Kohana реалізована можливість розділити опис класу. створення конкретного екземпляра класу і відображення результату відвідувачу по трьох різних файлів:

  • Клас описується моделі .
  • контролері створюється екземпляр класу. Контролер отримує значення змінних від користувача і передає їх на опрацювання моделі. Отримані від моделі значення контролер повертає вигляд .
  • Вигляд відображає зовнішній вигляд сторінки.

Таким чином вся програмна бізнес-логіка виявляється в контролері і моделі, а логіка відображення у вигляді.

Крім того, Kohana позбавляє програміста від необхідності кожного разу винаходити велосипед. Всі необхідні програмування web-сценарію операції вже описані моделях фреймворку і ними можна скористатися.

Якщо що-то, розказане в даній статті залишилося для вас загадкою, не турбуйтеся, я поясню все вищесказане ще раз у форматі відеоуроку. До зустрічі в наступних публікаціях. Я не змушу довго чекати Програмування на PHP, Kohana, Введення

Короткий опис статті: php програмування Курс для початківець. Програмування на PHP, MVC, ООП. php, для початківців, ооп, mvc, kohana, програмування сайту

Джерело: Програмування на PHP — Kohana — Введення

Також ви можете прочитати