Co je Nette a proč byste ho měli používat?

Nette je populární český PHP framework pro tvorbu webových aplikací. Je známý svou jednoduchostí, bezpečností a efektivitou. Poskytuje nástroje pro usnadnění vývoje, od strukturovaného návrhu aplikací až po práci s databázemi, formuláři a šablonami. Díky Nette se můžete soustředit na logiku aplikace a méně se starat o technické detaily.

Hlavní vlastnosti Nette

  1. Modularita: Nette je složené z jednotlivých komponent, které lze použít samostatně (např. Latte, Tracy, Forms).
  2. Bezpečnost: Framework chrání proti nejčastějším hrozbám, jako je SQL injection, XSS nebo CSRF.
  3. Flexibilita: Nette se přizpůsobí potřebám vývojáře a podporuje různé přístupy k vývoji.
  4. Snadné učení: Dokumentace je rozsáhlá a komunitní podpora velmi aktivní.

Ukázka struktury Nette aplikace

Typická struktura aplikace v Nette vypadá takto:

/project
  /app
    /Presenters
    /Templates
    /Components
  /www
    index.php
  /vendor
  config.neon
  composer.json
  • /app obsahuje hlavní logiku aplikace.
  • /www je veřejný adresář přístupný z prohlížeče.
  • config.neon slouží k nastavení aplikace.

Příklad jednoduchého presenteru

Presenter je třída, která zpracovává požadavky a vrací odpovědi. Například HomepagePresenter:

<?php
namespace App\Presenters;

use Nette\Application\UI\Presenter;

class HomepagePresenter extends Presenter
{
    public function renderDefault(): void
    {
        $this->template->greeting = 'Vítejte v Nette!';
    }
}

Šablona pro tento presenter (Homepage/default.latte):

<!DOCTYPE html>
<html lang="cs">
<head>
    <meta charset="UTF-8">
    <title>Nette Aplikace</title>
</head>
<body>
    <h1>{$greeting}</h1>
</body>
</html>

Výstupem bude stránka s textem „Vítejte v Nette!“.

Práce s formuláři

Nette usnadňuje tvorbu formulářů. Například formulář pro přihlášení:

$form = new Nette\Application\UI\Form;
$form->addText('username', 'Uživatelské jméno:')->setRequired();
$form->addPassword('password', 'Heslo:')->setRequired();
$form->addSubmit('login', 'Přihlásit se');

$form->onSuccess[] = function ($form, $values) {
    // Zpracování přihlášení
    echo 'Přihlášen jako: ' . $values->username;
};

return $form;

Proč používat Nette?

  1. Rychlý vývoj: Díky mnoha vestavěným funkcím a komponentám.
  2. Bezpečnost: Výchozí nastavení chrání aplikaci před běžnými útoky.
  3. Komunita: Aktivní česká i mezinárodní komunita a skvělá dokumentace.
  4. Škálovatelnost: Od malých projektů po rozsáhlé aplikace.

Jak začít s Nette?

  1. Nainstalujte Composer: Nette využívá Composer pro správu závislostí.
  2. Vytvořte nový projekt:
composer create-project nette/web-project moje-aplikace
  1. Spusťte vestavěný server:
php -S localhost:8000 -t www
  1. Prozkoumejte dokumentaci: https://doc.nette.org

Nette je ideální volbou pro každého, kdo chce vytvářet robustní a bezpečné webové aplikace v PHP.