powiązania między klasami

Przedstawiam underscore library

Biblioteka PHP wspierająca tworzenie stron internetowych. Mała objętościowo, prosta w obsłudze (funkcje opakowane w klasy), nie wymagająca umiejętności zaawansowanego programowania obiektowego. Zawiera podstawowe funkcjonalności wykorzystywane przy budowie każdej strony internetowej, takie jak:

  • Filtr danych przychodzących – czyszczenie przed atakami XSS
  • Obsługa sesji, zapamiętywanie formularzy, historia itp.
  • Wywołanie akcji ze zdarzeniami przed i po
  • Obsługa wyjątków, logów, błędów – zapis do pliku
  • Rozszerzenie PDO Zapytania pobierane z pliku
  • Własna obsługa szablonów i formatowanie tekstu
  • Walidacja danych – nie tylko wyjściowych
  • Funkcje operacji na ciągach znakowych UTF8
underscore - klamra

Oferuje

  • Mały rozmiar – PHAR 48k lub pliki 164k
  • Szybkość przetwarzania kodu
  • Konfiguracja organicza się do zmian w jednym pliku
  • Dowolna struktura katalogów aplikacji
  • Nie wymaga używania linii komend
  • System szablonów oparty na zmiennych i komentarzach, nie musisz poznawać nowej składni
  • Proste jest najlepsze – tworzysz stronę a nie aplikację do chwalenia przed innymi programistami
  • Tworzenie rozszerzeń jest wręcz banalne – nie ma określonego standardu dołączania
  • Wykorzystaj komercyjne – oparty na licencji BSD
underscore - so fresh

Świeża jak rozcięta dobra pomarańcza

„Wykorzystywana w każdym projekcie własnym”

Każdy nowy projekt, każde wykorzystanie biblioteki wiąże się z nowymi pomysłami, Biblioteka jest cały czas rozwijana, praktycznie codziennie.

underscore - klucz do tworzenia

Klucz francuski do tworzenia stron

Wybierz:

  • Czy linki mają mieć postać /index.php?action=ostronie czy też /ostronie
  • Jaką bazę danych będziesz używać: SQLite czy MySQL
  • Sterownik sesji baza danych czy natywny
  • Strukturę aplikacji – wszystko dostępne w konfiguracji
  • Własne strony informujące o błędzie, autoryzacji, uprawnieniach
  • Pliki szablonów: wszystko w jednym, czy też oddzielnie
  • Wygląd stronicowania stron (numeracja, czy też następny/poprzedni)
  • Czy usuwac wulgaryzmy z danych wejściowych
  • Zdarzenia przed i po wywołaniem danej akcji
underscore - czas jest cenny

Rozmiar ma znaczenie

A jeśli mówili ci inaczej, kłamali!

Underscore library to tylko 164k plików nieskompresowanych, pomyśl że to się ładuje do procesu serwera WWW.

Testy porównawcze z frameworkami Code Igniter, Kohana czy też YII plasują bibliotekę na 1 miejscu razem z YII; później jest CI, a na końcu Kohana(v3). Testy wykonany na prostym Hello World! i przetworzonym przez profiler oraz Apache Benchmark (100, 1000 zapytań przy różnej ilości połączeń równoległych).

Różnice między YII a Underscore sięgały ok. 0,1 sek. na połączenie w jedną lub też drugą stronę. Należy pamiętać, iż YII ma wbudowany lazy loading i na starcie nie ładuje wszystkiego. W underscore załadowany jest cały moduł.