Technologie

Framework

Do budowy aplikacji WWW, jak również serwisów informacyjnych, realizowanych jako proste aplikacje, używamy standardowego zestawu bibliotek, wzorców projektowych i standardów. Dzięki temu projekty mają powtarzalny i ustandaryzowany charakter (oczywiście tylko na poziomie programistycznym, gdyż interfejs użytkownika i funkcjonalności za każdym razem budowane są oddzielnie). Wykorzystywany zestaw bibliotek i wzorców projektowych nosi nazwę framework-u. Wykorzystywany przez nas framework oparty jest o wzorzec projektowy MVC, czyli Model-View-Controller. Model odpowiada za reprezentację struktur bazy danych, widok (view) - za wygląd interfejsu użytkownika, a kontroler (controller) - za logikę aplikacji.

Używany przez nas framework, to autorski produkt, oparty CakePHP, o nazwie extreme. Początkowo stanowił tylko rozszerzenie CakePHP, usuwające jego błędy i braki. W końcu ewoluował do zupełnie oddzielnego bytu, stanowiącego obecnie podstawę większości naszych prac. Jego główne cechy to:

  • Prostota. Jądro systemu stanowi zestaw kilkudziesięciu plików, zawierających podstawowe funkcjonalności, niezbędne do działania systemu.
  • Szybkość działania. Przy budowaniu extreme kładliśmy duży nacisk na osiągnięcie dużej wydajności. Uzyskaliśmy ją dzięki optymalizacji dostępu do bazy danych, użycie mechanizmu cache (czyli zapamiętywania najczęściej używanych danych), a także prostocie kodu.
  • Łatwość rozbudowy. W prosty sposób można rozszerzać możliwości extreme poprzez dodawanie kolejnych modułów, odpowiedzialnych za np. walidację pól formularzy, formatowanie danych czy nowe funkcjonalności.
  • Obsługa skomplikowanych struktur danych. Nawet duże, skomplikowane formularze danych, używające kilku, czy kilkunastu tabel w bazie danych nie stanowią dla modelu danych extreme problemu.
  • Dynamiczne strony WWW. Extreme, łącznie z dołączonymi bibliotekami javascript, umożliwia budowanie stron WWW, których fragmenty są zmieniane dynamicznie, tj. bez przeładowywania treści całej strony. Technologia ta nosi nazwę ajax. Dzięki temu interfejs użytkownika działa szybciej, jest bardziej przyjazny dla użytkownika i zbliżony do standardowych aplikacji off-line-owych.

Serwer

Tworzone przez nas aplikacje współpracują z najbardziej popularnymi serwerami WWW oraz z szerokim wachlarzem baz danych, wspieranych przez wewnętrzny model dostępu do baz danych PHP: PDO, m.in.: Microsoft SQL Server, Sybase, Firebird/Interbase, IBM, Informix, MySQL, Oracle, ODBC, DB2, PostgreSQL. Dzięki temu mogą być instalowane zarówno na komputerach Klienta, zewnętrznym hostingu, czy na naszym serwerze. Nie ma również problemu z przeniesieniem aplikacji na inny serwer lub z migracją danych do bardziej wydajnej bazy.

Cms

Tworzone przez nas serwisy informacyjne standardowo wyposażamy w moduł CMS, umożliwiający zmianę treści strony przez naszego Klienta. Dzięki temu strony mogą być szybciej aktualizowane, przy zachowaniu zdefiniowanego wyglądu (stylu, układu). Osoba dokonująca zmian nie musi znać języka HTML. Wszystkie zmiany widoczne są od razu w docelowym układzie strony, co pozwala na lepsze zapanowanie nad wyglądem całości.

System CMS umożliwia zarządzanie plikami na serwerze - kopiowanie, ładowanie nowych dokumentów czy ich usuwanie. Interfejs użytkownika podobny jest do standardowego menadżera plików.

Ajax

ajaxUżycie technologii AJAXAJAX (Asynchronous JavaScript and XML) jest technologią tworzenia aplikacji internetowych, w której dane przekazywane pomiędzy przeglądarką a serwerem www wysyłane są bez przeładowywania całego dokumentu (strony). Umożliwia to tworzenie interfejsu zbliżonego do klasycznego, znanego z offline-owych aplikacji. Aplikacja ajax-owa działa szybciej, w sposób bardziej intuicyjny i przyjazny dla uzytkownika.

W tworzonych przez nas aplikacjach w korzystamy z rozwiązań dostępnych dzięki tej technologii. Są to między innymi okienka, wyszukiwarki z natychmiastową podpowiedzią, komunikaty typu popup.

Standardy

xhtml validEkran walidatora XHTMLPrzy tworzeniu warstwy prezentacyjnej (wygląd strony www, interfejs użytkownika aplikacji web-owej) kładziemy duży nacisk na dostosowanie się do standardów budowy stron www. Treść strony oddzielona jest od informacji o jej wyglądzie. Używamy XHTML-a jako języka opisu strony i arkuszy stylów CSS do opisu wyglądu. Dzięki temu strony ładują się szybciej, zajmują mniej miejsca na serwerze, mogą być w prostszy i szybszy sposób modyfikowane. Dla naszego Klienta oznacza to możliwość dodarcia do szerszego grona odbiorców, korzystających z tradycyjnych przeglądarek na komputerach PC, jak i używających urządzeń przenośnych, takich jak palmtopy czy telefony komórkowe. Strony ładowane są szybko, co wpływa korzystnie na pozytywne nastawienie osób odwiedzających witryny. Oznacza to również, że strony będą poprawnie funkcjonować przez długi okres czasu, niezależnie od uaktualnień przeglądarek internetowych.

css validEkran walidatora CSSInonki "W3C XHTML" i "W3C CSS" umieszczone w stopce niniejszej strony oznaczają jej zgodność ze standardami internetowymi. Klikając na jedną z ikonek można to zweryfikować na stronie niezależnej organizacji (The World Wide Web Consortium) ustanawiającej i propagującej standardy internetowe. Wszystkie tworzone przez nas strony spełniają wymogi standardów internetowych.

Dzięki stosowaniu się do standardów przy projektowaniu i wykonaniu aplikacji i stron www osoby odwiedzające tworzone przez nas serwisy nie mają problemów z ich przeglądaniem. Najpopularniejsze przeglądarki stron www (Internet Explorer 7 i 8, Firefox, Opera, i inne) w pełni wspierają wyświetlanie stron stosujących standardy www. Niezależnie od używanego systemu operacyjnego czy przeglądarki strony wyglądają i działają w ten sam sposób.