Приложение Nette

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

Установка

Скачать и установить библиотеку можно с помощью Composer:

composer require nette/application

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

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

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

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

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

  • Позволяет создавать повторно используемые элементы 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 с панелью маршрутизации
  • Производительность: Умный кеш, ленивая загрузка компонентов
  • Гибкость: Легкое изменение URL даже после завершения приложения
  • Компоненты: Уникальная система повторно используемых элементов UI
  • Современность: Полная поддержка 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

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

версия: 4.0