encyklopedia.space

Yii

Yii (ang. Yes It Is) – otwarto‑źródłowy, obiektowy framework PHP przeznaczony do budowy aplikacji internetowych typu MVC (Model‑View‑Controller). Powstał w 2008 roku i od tego czasu jest wykorzystywany zarówno w małych projektach, jak i w dużych systemach produkcyjnych.

Historia

Projekt został założony przez Qiainga Xue i początkowo wydany jako oprogramowanie otwarto‑źródłowe na licencji BSD. Pierwsza wersja Yii 1 ukazała się w 2008 roku. W 2011 roku wydano Yii 2, które przyniosło pełną kompatybilność z PHP 5.4+ oraz nowoczesną architekturę komponentową.

Architektura i podstawowe koncepcje

  • Moduły – samodzielne części aplikacji, które mogą być wielokrotnie używane.
  • Komponenty – obiekty realizujące konkretne funkcjonalności (np. CActiveRecord do obsługi baz danych).
  • Wzorzec MVC – rozdzielenie logiki aplikacji (Model), warstwy prezentacji (View) oraz sterowania (Controller).
  • Gii – wbudowane narzędzie generujące kod (skrzyny, modele, kontrolery) przyspieszające rozwój.
  • Active Record – warstwa mapująca obiekty PHP na rekordy MySQL i inne bazy danych.

Funkcje i możliwości

Framework oferuje szereg gotowych rozwiązań, które ułatwiają tworzenie aplikacji:

  1. Wbudowany system cache'owania (memcached, APC, Redis).
  2. Obsługa RESTful API oraz WebSocket.
  3. Zaawansowany system RBAC (kontrola dostępu).
  4. Wsparcie dla internacjonalizacji i lokalizacji.
  5. Moduł testów jednostkowych (PHPUnit) oraz funkcjonalnych.
  6. Integracja z popularnymi bibliotekami front‑endowymi (Bootstrap, jQuery).

Wersje

Wersja Data wydania Kluczowe zmiany
Yii 1 2008 Podstawowa implementacja MVC, komponenty, Gii.
Yii 2 2011 Obsługa przestrzeni nazw, Composer, lepsza wydajność.
Yii 3 (w przygotowaniu) 2023‑2024 Pełna kompatybilność z PHP 8, nowoczesny system zależności.

Zastosowanie

Yii jest wykorzystywany w różnych typach projektów, m.in. w:

  • Systemach e‑commerce (Magento – częściowo oparty na Yii).
  • Portalach informacyjnych i portalach społecznościowych.
  • Systemach CRM i ERP.
  • Aplikacjach mobilnych (backend).

Porównanie z innymi frameworkami

W języku PHP istnieje kilka popularnych frameworków. Poniższa tabela przedstawia krótkie zestawienie Yii w odniesieniu do nich:

Framework Rok powstania Licencja Kluczowe cechy
Laravel 2011 MIT Eloquent ORM, Blade, szeroki ekosystem pakietów.
Symfony 2005 MIT Modularność, komponenty wykorzystywane w innych projektach.
Yii 2008 BSD Wysoka wydajność, gotowy generator kodu, prostota konfiguracji.

Społeczność i wsparcie

Yii posiada aktywną społeczność programistów, organizowaną w forum, grupy dyskusyjne oraz konferencje (YiiConf).

Dokumentacja jest dostępna w formie wiki oraz jako oficjalny podręcznik. Dostępne są także liczne rozszerzenia publikowane w Packagist (przez Composer).

Zobacz także