Статті

Що таке Laravel, як він працює та базова архітектура для створення WEB-додатків

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

PHP-фреймворк Laravel постачається з надійною колекцією інструментів і забезпечує архітектуру створюваних програм. Це фреймворк PHP з відкритим кодом, який використовує архітектуру MVC:

  • Рамки: це набір методів, класів або файлів, які використовує програміст, а також може розширити їх функціональність за допомогою власного коду.
  • архітектура: це конкретний шаблон проектування, якому слід фреймворк. Laravel дотримується архітектури MVC.

mvc

Акронім складається з трьох літер, значення наступне:

  • M: Шаблон. Модель — це клас, який працює з базою даних. Наприклад, якщо у програмі є користувачі, ми матимемо модель користувачів, яка відповідає за запит до таблиці користувачів, якщо у нас є модель користувачів, тоді ми також матимемо таблицю користувачів.
  • V: Переглянути. Представлення — це клас, який піклується про все, що ми можемо бачити про програму в браузері.
  • C: Контролери. Контролер є посередником, який піклується як про модель, так і про перегляд. Контролер — це клас, який отримує дані з моделі та надсилає їх до класу перегляду.

Переваги та особливості

Створення систем авторизації та аутентифікації

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

Інтеграція з інструментами

Laravel інтегровано з багатьма інструментами, які створюють швидші програми. Необхідно не лише створити додаток, а й створити швидший додаток. Інтеграція з серверною частиною кешування є одним із основних кроків для покращення продуктивності веб-програми. Laravel інтегровано з деякими популярними серверними частинами кешування, такими як Redis і Memcached.

Інтеграція поштового сервісу

Laravel інтегровано з поштовим сервісом. Ця служба використовується для надсилання сповіщень електронною поштою. Він надає чистий і простий API, який дозволяє швидко надсилати електронні листи через локальну або хмарну службу.

Автоматизація тестування

Тестування продукту дуже важливе, щоб переконатися, що програмне забезпечення працює без помилок, помилок і збоїв - щоразу, коли виходить нова версія. Ми знаємо, що автоматичне тестування займає менше часу, ніж тестування вручну, особливо для тестування без регресії. Laravel було розроблено також з урахуванням тестування.

Відокремлення коду бізнес-логіки від коду презентації

Розділення коду бізнес-логіки та коду презентації дозволяє дизайнерам макетів HTML змінювати зовнішній вигляд без взаємодії з розробниками. Помилка може бути виправлена ​​розробниками швидше, якщо передбачено розділення між кодом бізнес-логіки (Контролер) і кодом презентації (Перегляд). Ми знаємо, що Laravel дотримується архітектури MVC, тому розділення є ключовим.

Виправлення найпоширеніших технічних уразливостей

Laravel — це безпечний фреймворк, оскільки він захищає веб-додаток від усіх вразливостей безпеки. Уразливість є одним із найважливіших аспектів розробки веб-додатків. Американська організація OWASP Foundation, defiусуває основні вразливості безпеки, такі як впровадження SQL, підробка запитів, сценарії тощо.

CRON: планування конфігурації та управління

ВЕБ-додаткам завжди потрібні механізми планування завдань, щоб планувати та виконувати завдання вчасно. Наприклад, коли надсилати електронні листи підписникам або коли очищати таблиці бази даних наприкінці дня. Щоб планувати завдання, розробникам потрібно створити запис Cron для кожного завдання та планувальник команд Laravel defiзавершує командне планування.

Створення проекту Laravel

Щоб створити свій перший проект Laravel, вам потрібно мати Composer встановлено. Якщо його немає на вашій машині, перейдіть до його встановлення, як описано в нашій статті Композитор.

Після цього створіть новий каталог у вашій системі для вашого нового проекту Laravel. Далі перейдіть до шляху, де ви створили новий каталог, і виконайте команду create project composer create-projectввівши таку команду:

composer create-project laravel/laravel myex-app

Ця команда (версія 9.x) створює проект під назвою myex-app

Або ви можете створити нові проекти Laravel глобальне встановлення інсталятора Laravel кошти Composer:

Інноваційний бюлетень
Не пропустіть найважливіші новини про інновації. Підпишіться, щоб отримувати їх електронною поштою.
composer global require laravel/installer
laravel new myex-app

Після створення проекту запустіть локальний сервер розробки Laravel за допомогою команди serve про 'Artisan CLI з Laravel:

php artisan serve

Після запуску сервера розробки Artisan, ваша програма буде доступна у вашому веб-переглядачі за адресою http://localhost:8000. Тепер ви готові до використання Laravel. Звичайно, ви також можете створити базу даних.

Структура програми в Laravel

Структура Laravel — це в основному структура папок, вкладених папок і файлів, включених до проекту. Після створення проекту в Laravel ми можемо побачити структуру програми, як показано на зображенні кореневої папки Laravel:

конфиг

Папка конфігурації містить конфігурації та пов’язані параметри, необхідні для належної роботи програми Laravel. Різні файли, включені в папку конфігурації, перераховані на зображенні нижче. Імена файлів представляють області конфігурації.

База даних

Цей каталог містить різноманітні параметри для функціонування бази даних. Він містить три підкаталоги:

  • Seeds: містить класи, які використовуються для бази даних модульних тестів;
  • Міграції: ця папка використовується для генерації та узгодження структури БД з додатком;
  • Фабрики: Ця папка використовується для створення великої кількості записів даних.
громадськості

Це коренева папка, яка допомагає ініціалізувати програму Laravel, тобто початок програми. Включає такі файли та папки:

  • .htaccess: файл, який надає конфігурацію сервера;
  • javascript і css: містять усі файли ресурсів програми Laravel;
  • index.php: файл, необхідний для ініціалізації веб-програми.
ресурси

Каталог Resources містить файли, які вдосконалюють веб-програму. Підпапки, включені в цей каталог, і їх призначення:

  • ресурси: папка містить такі файли, як LESS і SCSS, які необхідні для стилю веб-додатку;
  • lang: включити конфігурацію для локалізації або інтерналізації;
  • представлення: це HTML-файли або шаблони, які взаємодіють з кінцевими користувачами та відіграють основну роль в архітектурі MVC.
зберігання

Це папка, у якій зберігаються всі журнали та файли, необхідні під час роботи проекту Laravel. Нижче наведено вкладені папки, включені до цього каталогу, та їхнє призначення −

  • app: ця папка містить файли, які викликаються послідовно;
  • фреймворк: містить сеанси, кеші та перегляди, які часто викликаються;
  • Журнали: містить файли, які відстежують проблеми під час виконання, особливо всі журнали винятків і помилок.
Тестs

У цьому каталозі містяться всі випадки модульного тестування. Імена для класів тестових випадків — camel_case і відповідають угоді про іменування, заснованій на функціональності класу.

Продавець

Laravel заснований на керованих залежностях Композитор, наприклад, щоб інсталювати налаштування Laravel або включити сторонні бібліотеки тощо.

Папка Vendor містить усі залежності Композитор.

Ercole Palmeri

Інноваційний бюлетень
Не пропустіть найважливіші новини про інновації. Підпишіться, щоб отримувати їх електронною поштою.

Останні статті

Майбутнє тут: як індустрія судноплавства революціонізує світову економіку

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

1 травня 2024

Видавці та OpenAI підписують угоди щодо регулювання потоку інформації, яка обробляється штучним інтелектом

Минулого понеділка Financial Times оголосила про угоду з OpenAI. FT ліцензує свою журналістику світового рівня…

Квітень 30 2024

Онлайн-платежі: ось як потокові послуги змушують вас платити вічно

Мільйони людей оплачують потокові послуги, сплачуючи щомісячну абонентську плату. Поширена думка, що ви…

Квітень 29 2024

Veeam пропонує найповнішу підтримку програм-вимагачів, від захисту до реагування та відновлення

Coveware від Veeam продовжить надавати послуги реагування на інциденти кібервимагання. Coveware запропонує криміналістику та можливості відновлення…

Квітень 23 2024

Читайте Innovation своєю мовою

Інноваційний бюлетень
Не пропустіть найважливіші новини про інновації. Підпишіться, щоб отримувати їх електронною поштою.

Слідуйте за нами