Словник Symfony

23/07/2015 0 symfony, glossary, словник

Від пакетів та ядра до контролера й наслідування - відшукайте для себе тлумачення основних термінів та понять у Symfony у рубриці The Symfony Glossary.

Acme

Acme - це вигадане ім'я компанії, що використовується як зразок у прикладах та в документації Symfony. Його застосовують там, де б Ви гіпотетично могли використати власну назву свого підприємства чи проекту (наприклад, у коді-зразку книг по Symfony можна часто зустріти Acme\BlogBundle).

Action

Дія (action) - це PHP функція чи метод, що виконується, коли, скажімо, встановлюється у відповідність певний маршрут. В цьому випадку термін “дія” є синонімом до “контролера”, хоча контролер - це поняття ширше, адже воно також стосується цілого PHP класу, що включає декілька дій. Детальніше про це читайте у розділі "Контролер".

Application

Додаток - це директорія, яка містить налаштування певної вибірки пакетів.

Asset

Ресурс - це будь-яка статична складова веб-додатку, яку не можна “виконати”, для прикладу, CSS, JavaScript, зображення чи відео. Ресурси можна розміщувати у директорії web проекту напряму або з пакета з використанням консольного завдання assets:install.

Bundle

Пакет - це директорія, що містить ряд файлів (зокрема, PHP файли, таблиці стилів, JavaScript, зображення тощо) для реалізації одного елементу функціоналу - “feature” чи, по-народному, “фічі” на кшталт блогу, форуму тощо. У Symfony, (практично) все зберігається у пакетах. Детальніше з пакетами ознайомитеся у розділі "Створення сторінок в Symfony".

Controller

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

Dependency Injection

Впровадження наслідування - це доволі популярна у фреймворці Symfony схема дизайну. Вона заохочує до використання такої архітектури додатку, яка би по мінімуму залежала від своїх своїх складових, була гнучкою, легко розширювалася й підтримувалася. В основі роботи даної схеми лежить можливість включення об’єктів (які ﹣ми ще називаємо сервісами) до інших об’єктів, приймаючи їх за параметри. В залежності від методу впровадження такого наслідування для двох об’єктів існують різні рівні взаємозв’язків. Шаблон впровадження наслідування часто пов’язують з іншим типом об’єктів: Сервіс Контейнером.

Distribution

Дистрибутив - це набір компонентів Symfony, вибірка пакетів, розумна й продумана структура директорій, налаштування по замовчуванню та додаткова система налаштувань.

Environment

Середовище - це рядок (наприклад, prod чи dev), що відповідає специфічному набору налаштувань. Один і той же додаток можна запускати на одному й тому ж комп'ютері, використовуючи різні середовища. Назагал це дуже зручно, так як кожен окремий додаток може мати власне dev середовище для усунення багів і prod середовище, зарання оптимізоване для отримання максимальної швидкості роботи додатку.

Firewall

У Symfony фаєрвол (який ми ще звикли називати мережевим екраном) аж ніяк не стосується мережевої роботи. Натомість він визначає механізми автентифікації (тобто, він керує процесом встановлення ваших користувачів), причому або для усього додатку, або лише для його частини. Детальніше див. розділ "Безпека".

Front Controller

Фронт контролер - це короткий PHP скрипт, розміщений у web директорії проекту. Як правило, виконання усіх запитів здійснюється через один і той же фронт контролер, робота якого полягає у завантаженні додатку Symfony.

 
HTTP Specification
 
HTTP специфікація - це документ, який описує протокол передачі гіпертексту (Hypertext Transfer Protocol), тобто, набір правил, що регулюють класичну взаємодію клієнт-сервер, запит-відповідь. Специфікація визначає формат, який використовується для запиту і відповіді, а також можливі заголовки HTTP, які кожен з них може містити. Детальніше див. статтю HTTP Вікіпедія або HTTP 1.1 RFC.
 
Kernel
 
Ядро є основою Symfony. Об’єкт ядра керує HTTP запитами (обробляє їх), використовуючи усі  записані у ньому пакети та бібліотеки (див. Архітектура: Каталог додатку і внутрішні події).  
 
Project
 
Проект - це каталог, що складається з Додатку, набору пакетів, бібліотек вендорів, автозавантажувача і скриптів фронт контролера.
 
Service
 

Сервіс - це загальний термін для будь-якого PHP об’єкта, що виконує спеціальне завдання. Зазвичай сервіс використовується “глобально”, скажімо, як об’єкт для з’єднання з базою даних, або як об’єкт, що розсилає електронні повідомлення. В Symfony сервіси часто налаштовуються та витягуються з сервісного контейнера. Додаток, що містить багато роз’єднаних сервісів, побудований на сервісно-орієнтованій архітектурі.

 
Service Container
 

Сервіс контейнером, також відомий як Сервіс впровадження наслідування - це спеціальний об’єкт, що керує створенням екземплярів класу сервісів у додатку. Розробнику не потрібно безпосередньо створювати сервіс, адже через налаштування він може “навчити” контейнер створювати сервіси самостійно. Севіс контейнером - ідеальний варіант для лінивих розробників, адже він дає можливість створювати сервіси та управляти ними майже в автоматичному режимі (див. розділ Сервіс контейнером).

 
Vendor
 
Вендор - це постачальник PHP бібліотек та пакетів, включно з самим Symfony. Попри те, що слово стійко асоціюється з комерційною діяльністю, в Symfony вендори часто (навіть в більшості випадків) виступають як постачальники безкоштовного програмного забезпечення. Будь-яка бібліотека, яку ви додаєте до проекту Symfony, повинна вести безпосередньо до вендора (див. розділ: Архітектура: Використовуємо вендори).
 
YAML
 
YAML це рекурсивний акронім, який розшифровується як "YAML Ain't a Markup Language" (укр.: YAML - це не мова розмітки). Це легка й доступна мова серіалізації даних, яка широко використовується у файлах налаштувань Symfony (див. розділ:  Компонент YAML). це постачальник PHP бібліотек та пакетів, включно з самим Symfony. Попри те, що слово стійко асоціюється з комерційною діяльністю, в Symfony вендори часто (навіть в більшості випадків) виступають як постачальники безкоштовного програмного забезпечення. Будь-яка бібліотека, яку ви додаєте до проекту Symfony, повинна вести безпосередньо до вендора (див. розділ: Архітектура: Використовуємо вендори).
 
 
 

Поділитися