Nette Documentation Preview

syntax
Приложение Nette
****************

.[perex]
Nette Application - это ядро фреймворка Nette, который предоставляет мощные инструменты для создания современных веб-приложений. Он предлагает множество исключительных возможностей, которые значительно упрощают разработку и повышают безопасность и сопровождаемость кода.


Установка .[#toc-installation]
------------------------------

Загрузите и установите библиотеку с помощью [Composer |best-practices:composer]:

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


Почему стоит выбрать Nette Application? .[#toc-why-choose-nette-application]
----------------------------------------------------------------------------

Компания Nette всегда была пионером в области веб-технологий.

**Двунаправленный маршрутизатор:** В Nette реализована передовая система маршрутизации, уникальная своей двунаправленностью - она не только транслирует URL в действия приложения, но и может генерировать URL в обратном направлении. Это означает:
- Вы можете в любой момент изменить структуру URL всего приложения, не изменяя файлы шаблонов.
- URL автоматически канонизируются, что улучшает SEO
- Маршрутизация задается в одном месте, а не разбросана по аннотациям

**Компоненты и сигналы:** Встроенная система компонентов, вдохновленная Delphi и React.js, является уникальной среди PHP-фреймворков:
- Позволяет создавать многократно используемые элементы пользовательского интерфейса
- Поддерживает иерархическую композицию компонентов
- Предлагает элегантную обработку 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 с системой типов

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


Основные преимущества .[#toc-main-benefits]
-------------------------------------------

- **Безопасность**: Автоматическая защита от таких [уязвимостей |nette:vulnerability-protection], как XSS, CSRF и т. д.
- **Производительность**: Меньше писанины, больше возможностей благодаря продуманному дизайну
- **Отладка**: [Отладчик |tracy:] с панелью маршрутизации
- **Производительность**: Интеллектуальная система кэширования, ленивая загрузка компонентов
- **Гибкость**: Легкая модификация URL даже после завершения работы приложения
- **Компоненты**: Уникальная система многократно используемых элементов пользовательского интерфейса
- **Современный**: Полная поддержка PHP 8.4+ и системы типов


Начало работы .[#toc-getting-started]
-------------------------------------

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


Совместимость с PHP .[#toc-php-compatibility]
---------------------------------------------

| Версия | совместимая с 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

Nette Application – это ядро фреймворка Nette, который предоставляет мощные инструменты для создания современных веб-приложений. Он предлагает множество исключительных возможностей, которые значительно упрощают разработку и повышают безопасность и сопровождаемость кода.

Установка

Загрузите и установите библиотеку с помощью Composer:

composer require nette/application

Почему стоит выбрать Nette Application?

Компания Nette всегда была пионером в области веб-технологий.

Двунаправленный маршрутизатор: В Nette реализована передовая система маршрутизации, уникальная своей двунаправленностью – она не только транслирует URL в действия приложения, но и может генерировать URL в обратном направлении. Это означает:

  • Вы можете в любой момент изменить структуру URL всего приложения, не изменяя файлы шаблонов.
  • URL автоматически канонизируются, что улучшает SEO
  • Маршрутизация задается в одном месте, а не разбросана по аннотациям

Компоненты и сигналы: Встроенная система компонентов, вдохновленная Delphi и React.js, является уникальной среди PHP-фреймворков:

  • Позволяет создавать многократно используемые элементы пользовательского интерфейса
  • Поддерживает иерархическую композицию компонентов
  • Предлагает элегантную обработку AJAX-запросов с помощью сигналов
  • Богатая библиотека готовых компонентов на Componette

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

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

Интуитивные шаблоны Latte: Самая безопасная система шаблонов для PHP с расширенными возможностями:

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

Инъекция зависимостей: Nette полностью использует инъекцию зависимостей:

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

Основные преимущества

  • Безопасность: Автоматическая защита от таких уязвимостей, как XSS, CSRF и т. д.
  • Производительность: Меньше писанины, больше возможностей благодаря продуманному дизайну
  • Отладка: Отладчик с панелью маршрутизации
  • Производительность: Интеллектуальная система кэширования, ленивая загрузка компонентов
  • Гибкость: Легкая модификация URL даже после завершения работы приложения
  • Компоненты: Уникальная система многократно используемых элементов пользовательского интерфейса
  • Современный: Полная поддержка PHP 8.4+ и системы типов

Начало работы

  1. Понимание приложений – Понимание базовой архитектуры
  2. Презентаторы – Работа с презентаторами и действиями
  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

Действителен для последних версий патчей.