Nette Documentation Preview

syntax
Nette Application
*****************

.[perex]
Nette Application е ядрото на Nette framework, което предоставя мощни инструменти за създаване на модерни уеб приложения. Предлага редица изключителни характеристики, които значително улесняват разработката и подобряват сигурността и поддръжката на кода.


Инсталация
----------

Изтеглете и инсталирайте библиотеката с помощта на [Composer|best-practices:composer]:

```shell
composer require nette/application
```


Защо да изберете Nette Application?
-----------------------------------

Nette винаги е бил пионер в областта на уеб технологиите.

**Двупосочен рутер:** Nette разполага с усъвършенствана система за маршрутизация, която е уникална със своята двупосочност - не само преобразува URL адреси в действия на приложението, но също така може да генерира обратно URL адреси. Това означава, че:
- Можете по всяко време да промените структурата на URL адресите на цялото приложение, без да е необходимо да редактирате шаблоните
- URL адресите се канонизират автоматично, което подобрява SEO
- Маршрутизацията се дефинира на едно място, а не е разпръсната в анотации

**Компоненти и сигнали:** Вградената компонентна система, вдъхновена от Delphi и React.js, е напълно изключителна сред PHP framework-ците:
- Позволява създаването на повторно използваеми UI елементи
- Поддържа йерархично композиране на компоненти
- Предлага елегантна обработка на AJAX заявки с помощта на сигнали
- Богата библиотека от готови компоненти на [Componette](https://componette.org)

**AJAX и снипети:** Nette представи революционен начин за работа с AJAX още през 2009 г., много преди подобни решения като Hotwire за Ruby on Rails или Symfony UX Turbo:
- Снипетите позволяват актуализиране само на части от страницата, без да е необходимо да се пише JavaScript
- Автоматична интеграция с компонентната система
- Интелигентна инвалидация на части от страници
- Минимално количество предавани данни

**Интуитивни шаблони [Latte|latte:]:** Най-сигурната система за шаблони за PHP с разширени функции:
- Автоматична защита срещу XSS с контекстно чувствително екраниране
- Разширяемост с помощта на персонализирани филтри, функции и тагове
- Наследяване на шаблони и снипети за AJAX
- Отлична поддръжка на PHP 8.x с типова система

**Dependency Injection:** Nette напълно използва Dependency Injection:
- Автоматично предаване на зависимости (autowiring)
- Конфигурация чрез ясен NEON формат
- Поддръжка на фабрики за компоненти


Основни предимства
------------------

- **Сигурност**: Автоматична защита срещу [уязвимости|nette:vulnerability-protection] като XSS, CSRF и др.
- **Продуктивност**: По-малко писане, повече функции благодарение на интелигентния дизайн
- **Дебъгване**: [Tracy debugger|tracy:] с панел за маршрутизация
- **Производителност**: Интелигентен кеш, lazy loading на компоненти
- **Гъвкавост**: Лесно модифициране на URL адреси дори след завършване на приложението
- **Компоненти**: Уникална система от повторно използваеми UI елементи
- **Модерност**: Пълна поддръжка на PHP 8.4+ и типова система


Да започваме
------------

1. [Как работят приложенията? |how-it-works] - Разбиране на основната архитектура
2. [Presenters |presenters] - Работа с презентери и действия
3. [Шаблони |templates] - Създаване на шаблони в Latte
4. [Маршрутизация |routing] - Конфигуриране на URL адреси
5. [Интерактивни компоненти |components] - Използване на компонентната система


Съвместимост с PHP
------------------

| версия     | съвместим с PHP
|-----------|-------------------
| Nette Application 4.0 | PHP 8.1 – 8.4
| Nette Application 3.2 | PHP 8.1 – 8.4
| Nette Application 3.1 | PHP 7.2 – 8.3
| Nette Application 3.0 | PHP 7.1 – 8.0
| Nette Application 2.4 | PHP 5.6 – 8.0

Важи за последната пач версия.

Nette Application

Nette Application е ядрото на Nette framework, което предоставя мощни инструменти за създаване на модерни уеб приложения. Предлага редица изключителни характеристики, които значително улесняват разработката и подобряват сигурността и поддръжката на кода.

Инсталация

Изтеглете и инсталирайте библиотеката с помощта на Composer:

composer require nette/application

Защо да изберете Nette Application?

Nette винаги е бил пионер в областта на уеб технологиите.

Двупосочен рутер: Nette разполага с усъвършенствана система за маршрутизация, която е уникална със своята двупосочност – не само преобразува URL адреси в действия на приложението, но също така може да генерира обратно URL адреси. Това означава, че:

  • Можете по всяко време да промените структурата на URL адресите на цялото приложение, без да е необходимо да редактирате шаблоните
  • URL адресите се канонизират автоматично, което подобрява SEO
  • Маршрутизацията се дефинира на едно място, а не е разпръсната в анотации

Компоненти и сигнали: Вградената компонентна система, вдъхновена от Delphi и React.js, е напълно изключителна сред PHP framework-ците:

  • Позволява създаването на повторно използваеми UI елементи
  • Поддържа йерархично композиране на компоненти
  • Предлага елегантна обработка на AJAX заявки с помощта на сигнали
  • Богата библиотека от готови компоненти на Componette

AJAX и снипети: Nette представи революционен начин за работа с AJAX още през 2009 г., много преди подобни решения като Hotwire за Ruby on Rails или Symfony UX Turbo:

  • Снипетите позволяват актуализиране само на части от страницата, без да е необходимо да се пише JavaScript
  • Автоматична интеграция с компонентната система
  • Интелигентна инвалидация на части от страници
  • Минимално количество предавани данни

Интуитивни шаблони Latte: Най-сигурната система за шаблони за PHP с разширени функции:

  • Автоматична защита срещу XSS с контекстно чувствително екраниране
  • Разширяемост с помощта на персонализирани филтри, функции и тагове
  • Наследяване на шаблони и снипети за AJAX
  • Отлична поддръжка на PHP 8.x с типова система

Dependency Injection: Nette напълно използва Dependency Injection:

  • Автоматично предаване на зависимости (autowiring)
  • Конфигурация чрез ясен NEON формат
  • Поддръжка на фабрики за компоненти

Основни предимства

  • Сигурност: Автоматична защита срещу уязвимости като XSS, CSRF и др.
  • Продуктивност: По-малко писане, повече функции благодарение на интелигентния дизайн
  • Дебъгване: Tracy debugger с панел за маршрутизация
  • Производителност: Интелигентен кеш, lazy loading на компоненти
  • Гъвкавост: Лесно модифициране на URL адреси дори след завършване на приложението
  • Компоненти: Уникална система от повторно използваеми UI елементи
  • Модерност: Пълна поддръжка на PHP 8.4+ и типова система

Да започваме

  1. Как работят приложенията? – Разбиране на основната архитектура
  2. Presenters – Работа с презентери и действия
  3. Шаблони – Създаване на шаблони в Latte
  4. Маршрутизация – Конфигуриране на URL адреси
  5. Интерактивни компоненти – Използване на компонентната система

Съвместимост с PHP

версия съвместим с PHP
Nette Application 4.0 PHP 8.1 – 8.4
Nette Application 3.2 PHP 8.1 – 8.4
Nette Application 3.1 PHP 7.2 – 8.3
Nette Application 3.0 PHP 7.1 – 8.0
Nette Application 2.4 PHP 5.6 – 8.0

Важи за последната пач версия.