Nette Documentation Preview

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

.[perex]
Nette ApplicationはNetteフレームワークの中核であり、最新のWebアプリケーションを作成するための強力なツールを提供します。開発を大幅に容易にし、コードのセキュリティと保守性を向上させる多くの優れた機能を提供します。


インストール
------

[Composer|best-practices:composer]を使用してライブラリをダウンロードし、インストールします:

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


なぜNette Applicationを選ぶのか?
-------------------------

Netteは常にWeb技術分野のパイオニアでした。

**双方向ルーター:** Netteは高度なルーティングシステムを備えており、その双方向性でユニークです - URLをアプリケーションのアクションに変換するだけでなく、逆にURLアドレスを生成することもできます。これは次のことを意味します:
- テンプレートを編集することなく、いつでもアプリケーション全体のURL構造を変更できます
- URLは自動的に正規化され、SEOが向上します
- ルーティングはアノテーションに散在するのではなく、一箇所で定義されます

**コンポーネントとシグナル:** DelphiとReact.jsに触発された組み込みコンポーネントシステムは、PHPフレームワークの中で完全にユニークです:
- 再利用可能なUI要素の作成を可能にします
- コンポーネントの階層的な構成をサポートします
- シグナルを使用してAJAXリクエストをエレガントに処理します
- [Componette](https://componette.org)には豊富な既製コンポーネントライブラリがあります

**AJAXとスニペット:** Netteは、Ruby on RailsのHotwireやSymfony UX Turboのような同様のソリューションが登場するずっと前の2009年に、AJAXを扱う革新的な方法を導入しました:
- スニペットを使用すると、JavaScriptを記述することなくページの一部のみを更新できます
- コンポーネントシステムとの自動統合
- ページの一部を賢く無効化
- 転送されるデータの最小量

**直感的なテンプレート [Latte|latte:]:** PHP用の最も安全なテンプレートシステムで、高度な機能を備えています:
- コンテキストに応じたエスケープによるXSSからの自動保護
- カスタムフィルタ、関数、タグによる拡張性
- AJAX用のテンプレート継承とスニペット
- 型システムを備えたPHP 8.xの優れたサポート

**Dependency Injection:** NetteはDependency Injectionを完全に活用しています:
- 依存関係の自動受け渡し(autowiring)
- わかりやすいNEON形式による設定
- コンポーネントファクトリのサポート


主な利点
----

- **セキュリティ**: XSS、CSRFなどの[脆弱性|nette:vulnerability-protection]に対する自動防御
- **生産性**: スマートな設計により、少ない記述でより多くの機能を実現
- **デバッグ**: ルーティングパネルを備えた[Tracyデバッガー|tracy:]
- **パフォーマンス**: スマートキャッシュ、コンポーネントの遅延読み込み
- **柔軟性**: アプリケーション完成後でもURLを簡単に変更可能
- **コンポーネント**: 再利用可能なUI要素のユニークなシステム
- **モダン**: PHP 8.4+と型システムを完全にサポート


はじめに
----

1. [アプリケーションはどのように動作しますか? |how-it-works] - 基本的なアーキテクチャの理解
2. [Presenter |presenters] - Presenterとアクションの操作
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フレームワークの中核であり、最新のWebアプリケーションを作成するための強力なツールを提供します。開発を大幅に容易にし、コードのセキュリティと保守性を向上させる多くの優れた機能を提供します。

インストール

Composerを使用してライブラリをダウンロードし、インストールします:

composer require nette/application

なぜNette Applicationを選ぶのか?

Netteは常にWeb技術分野のパイオニアでした。

双方向ルーター: Netteは高度なルーティングシステムを備えており、その双方向性でユニークです – URLをアプリケーションのアクションに変換するだけでなく、逆にURLアドレスを生成することもできます。これは次のことを意味します:

  • テンプレートを編集することなく、いつでもアプリケーション全体のURL構造を変更できます
  • URLは自動的に正規化され、SEOが向上します
  • ルーティングはアノテーションに散在するのではなく、一箇所で定義されます

コンポーネントとシグナル: DelphiとReact.jsに触発された組み込みコンポーネントシステムは、PHPフレームワークの中で完全にユニークです:

  • 再利用可能なUI要素の作成を可能にします
  • コンポーネントの階層的な構成をサポートします
  • シグナルを使用してAJAXリクエストをエレガントに処理します
  • Componetteには豊富な既製コンポーネントライブラリがあります

AJAXとスニペット: Netteは、Ruby on RailsのHotwireやSymfony UX Turboのような同様のソリューションが登場するずっと前の2009年に、AJAXを扱う革新的な方法を導入しました:

  • スニペットを使用すると、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. Presenter – Presenterとアクションの操作
  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

最新のパッチバージョンに適用されます。