Strony Internetowe - kontakt, email Strony Internetowe - telefon komórkowy Strony Internetowe - kontakt telefoniczny, Łódź
Strony WWW - wersja polska Strony WWW - english version
tworzenie stron www, Łódź

Technologie służące projektowaniu stron WWW

Technologie wspomagające projektowanie stron internetowych

Poniżej przedstawiamy Państwu listę najważniejszych, wykorzystywanych przez nas technologii podczas projektowania stron internetowych. Są to narzędzia, jakimi posługują się nasi programiści oraz graficy przy tworzeniu serwisów WWW. Podstawową zaletą stosowania niżej opisanych technologii jest większa pewność o swój produkt, przyszłego właściciela strony internetowej. Wymienione poniżej technologie w rękach projektanta strony WWW, służą szybszemu, sprawniejszemu i bezpieczniejszemu tworzeniu nowoczesnych witryn posiadających najnowszą dostępną funkcjonalność.

Dla nas najważniejszą informacją jest fakt, że poniżej przedstawione technologie są niezwykle popularne i wciąż rozwijane, co gwarantuje, że ich funkcjonalność będzie się nadal zwiększać. Daje nam to pewność, że aplikacje internetowe, które tworzymy za ich pomocą będą działały coraz sprawniej i posiadały coraz większe możliwości, a co za tym idzie będą wciąż cieszyły coraz bardziej wymagających użytkowników Internetu.

HTML, CSS HTML + CSS

Język XHTML 1.0 (ang. Extensible HyperText Markup Language, rozszerzalny hipertekstowy język znaczników) jest obecnie standardem tworzenia stron internetowych. To właśnie za pomocą HTML strony są tak wygodne i mogą cieszyć oko swoimi graficznymi szablonami. Różnorodność wyglądów stron WWW nie byłaby możliwa gdyby nie ten stosunkowo prosty w użyciu język. To dzięki niemu projektant strony może tworzyć odnośniki, tabele, wstawiać obrazki, zmieniać kolory tła oraz formaty i rodzaje czcionek.

Obecnie odchodzi się od szczegółowego definiowania wyglądu bezpośrednio w kodzie HTML i przenosi się go do tzw. Kaskadowych Arkuszy Styli (ang. Cascading Style Sheets, CSS). Za pomocą kodu HTML, tworzymy wówczas tylko szkielet strony internetowej, ale podpisujemy poszczególne jej elementy, aby móc później odnieść się do nich w CSS. To za pomocą CSS określamy położenie, kolorystykę oraz rozmiar poszczególnych elementów witryny.

Dla programisty projektowanie strony w ten sposób to tworzenie czytelniejszego i bardziej uporządkowanego kodu, który można łatwiej edytować, czyli w razie potrzeby szybciej dokonać w nim zmian. W tym miejscu ważną informacją dla przyszłego właściciela strony jest fakt, że programowanie w taki sposób jest rekomendowane przez W3C oraz wyszukiwarki internetowe. Dlatego szczególnie zwracamy uwagę na poprawność tworzonego kodu HTML oraz CSS, dzięki czemu strony są przyjazne wyszukiwarkom i osiągają w ten sposób wyższą pozycje w ich wynikach. Dodatkowo umiejętne posługiwanie się HTML oraz CSS daje gwarancje, iż tworzone za ich pomocą strony WWW będą wyglądały identycznie pod każdą popularną przeglądarką, a umieszczenie kodu CSS w oddzielnym pliku spowoduje jego zapamiętanie w przeglądarkach użytkowników i przyspieszy ładowanie się strony.

Flash Flash

Adobe Flash jest technologią tworzenia animacji, dzięki której projektowane przez nas strony internetowe posiadać mogą błyszczące loga, poruszające się nagłówki lub efektownie reagujące menu. To dzięki animacjom Flash strony "ożywają", bardziej przyciągają oko i na dłużej pozostają w pamięci odwiedzających je osób.

Za pomocą technologii Adobe Flash można jednak projektować dużo poważniejsze aplikację niż tylko pojedyncze animacje. Flash służy nam również do tworzenia multimedialnych prezentacji, zarówno w obrębie strony WWW jak i zupełnie oddzielnej aplikacji. Całość takiej aplikacji jest w pełni interaktywna i kolejność prezentowanych elementów uzależniona jest od reakcji i wyboru użytkownika. W podobny sposób tworzone są strony internetowe oparte w całości na technologii Flash. Efektem jest witryna, której każdy poszczególny element można animować w dowolny sposób.

PHP PHP 5

Skrypty naszych programów pisane są w języku PHP. Jest to najpopularniejszy język wykorzystywany do pisania aplikacji internetowych. Posiada niezliczoną rzeszę użytkowników na całym świecie, dzięki czemu mamy pewność, że będzie on wciąż rozwijany i udoskonalany. PHP zyskuje coraz większe uznanie i wraz z piątą wersją nawiązał do bardziej zaawansowanych odpowiedników m.in. dzięki wydajnym mechanizmom zorientowanym obiektowo. Korzystając w pełni z możliwości obiektowego języka jakim stał się PHP5 nasi programiści stworzyli wysoce zaawansowany framework, który posłużył do budowy Systemu CMS oraz wykorzystywany jest przy tworzeniu każdej kolejnej indywidualnej aplikacji dla naszych klientów.

Framework stworzony przez firmę Silversite to struktura wspomagająca tworzenie powstających za jego pomocą aplikacji. Framewok powstał w oparciu o popularny wzorzec projektowania MVC (ang. Model-View-Controller - Model-Widok-Sterownik), przedstawiany jako dobra architektura aplikacji internetowej. MVC wyodrębnia trzy podstawowe komponenty:
  • logikę biznesową (Model)
    Funkcjonalność związana ze sposobem przechowywania danych, w naszym przypadku są to klasy umożliwiające komunikację z bazą danych z wykorzystaniem PEAR MDB oraz własnego autorstwa biblioteki obsługującej generowanie zapytań SQL
  • logikę prezentacyjną (View)
    Jest odpowiedzialna za wyświetlanie danych użytkownikom do czego wykorzystujemy napisane przez naszych programistów Plugin-y systemu szablonów Smarty, których wynikiem wyjściowym jest oczywiście kod HTML
  • logikę sterowania (Controller)
    Sterownik jest sercem framework’a i zasadniczą częścią każdej biblioteki implementującej MVC. Analizuje on żądanie (adres HTTP) i decyduje, jakie akcje należy wykonać i jaki widok wyświetlić. W przypadku naszego Systemu adresami poszczególnych zakładek są przyjazne linki (typu: www.domena.com/pl/kontakt.html) których odczyt odbywa się za pomocą aplikacji Mapper - zaprojektowanej przez naszych programistów.

Warto dodać, że mimo otwartości kodu PHP, nad rozwojem oficjalnej wersji projektu czuwa firma Zend Company z Izraela założona przez twórców języka. Zapewnia ona dodatkowe narzędzia i opiekę prawną, a także wyznacza kierunki rozwoju projektu.

MySQL MySQL

W przypadku Systemów CMS niezbędne jest przechowywanie treści witryny w osobnym miejscu, ponieważ, jak wskazuje sama nazwa systemu, umożliwia on zarządzanie treścią, czyli administrator po zalogowaniu do panelu, może ją dowolnie edytować. Najczęściej do tego celu używa się baz danych, które posiadają wbudowane mechanizmy uwierzytelniania oraz przechowywania danych w najbardziej optymalny sposób.

MySQL jest bardzo szybkim i solidnym systemem zarządzania relacyjnymi bazami danych. Umożliwia on wydajne przeszukiwanie, sortowanie i odczytywanie danych. Serwer MySQL kontroluje dostęp do nich w celu zapewnienia równoważnego szybkiego dostępu wielu użytkownikom oraz dostępu jedynie dla uwierzytelnionych użytkowników.

Domyślnie SilverCMS korzysta z ponad 30 tabel bazy danych. Ich liczba spowodowana jest m.in. architekturą systemu umożliwiającą przechowywanie treści modułów w dowolnej liczbie zakładek, dowolnej liczbie ich zagłębień oraz dowolnej liczbie języków.

W odróżnieniu od rozwijanych przez społeczność Open Source większości systemów baz danych pod aplikacje internetowe, system MySQL tworzony jest przez pojedynczy podmiot - szwedzką firmę MySQL AB.

Smarty Smarty

System szablonów Smarty jest obiektową biblioteką ułatwiającą oddzielenie logiki aplikacji od jej wyglądu (oddzielenie kodu PHP wykonującego swoje działania na serwerze od kodu HTML przekazywanego do przeglądarek użytkowników strony internetowej). Dzięki temu praca nad jednym projektem, osoby odpowiedzialnej za jej działanie i osoby odpowiedzialnej za wygląd, nie odbywa się na tych samych plikach.

System Smarty cechuje się wysoką wydajnością dzięki kompilowaniu szablonów do postaci skryptów PHP, a także wbudowanemu systemowi buforowania pozwalającemu na cache’owaniu stron w postaci statycznych plików HTML.

Architektura szablonów oparta jest na wtyczkach (plugins) z których korzystają nasi programiści przy tworzeniu kolejnych modułów. Poszczególne moduły CMS-a uruchamiane są przez plugin naszego autorstwa, co pozwala nam w łatwy sposób oddzielać kolejne moduły od siebie i dopisywać nowe bez nadmiernej ingerencji w już istniejący kod. Pozwala to na wygodne i szybkie tworzenie nowych funkcjonalności oraz rozbudowę obecnych bez obawy o stabilność całości systemu CMS nowej strony WWW.

PEAR PEAR - PHP Extensions and Application Repository

PEAR (ang. PHP Extension and Application Repository) jest frameworkiem zawierjącym zbiór rozszerzeń do języka PHP, którego głównym założeniem jest dystrybucja w postaci tzw. paczek. Każda z paczek jest oddzielnym projektem, tworzonym i rozwijanym przez inną grupę programistów. Posiada własną dokumentację i zdefiniowane zależności między nią a innymi paczkami.

Do tworzenia SilverCMS użyto dwóch bibliotek PEAR.
  • MDB2
    Jest połączeniem Metabase i warstwy abstrakcji bazy danych PEAR (PEAR::DB). Udostępnia on standardowy sposób korzystania z różnych sterowników baz danych, co oznacza, że SilverCMS pracujący na bazie MySQL mógłby równie dobrze pracować pod każdą inną bazą danych SQL, czyli MDB2 ujednolica interfejs API. Na warstwy abstrakcji tworzone przez MDB2 można spojrzeć z kilku perspektyw. Są to warstwy abstrakcji dla interfejsu bazy danych (ujednolicenie połączeń i przesyłu danych z bazą), warstwy abstrakcji dla kodu SQL (w razie potrzeby emulującą kod SQL do zgodnego z wybraną bazą danych), warstwy abstrakcji typów danych.
  • QuickForm
    Pakiet QuickForm przeznaczony jest do generowania i zarządzania formularzami. Dzięki niemu tworzenie formularzy odbywa się za pomocą odpowiednich klas z biblioteki QuickForm. Za ich pomocą tworzymy kolejne pola formularza i oznaczamy jakie dane przyjmuje oraz konkretnie określamy walidacje tych danych, która może być przeprowadzona podwójnie: po stronie użytkownika oraz na serwerze. Walidację po stronie użytkownika przeprowadzają funkcje JavaScript uruchamiane w przeglądarce użytkownika, a co najciekawsze, są one generowane automatycznie przez QuickForm.
    Podejście do bezpieczeństwa obsługi formularzy w Systemie CMS jest bardzo ważne ponieważ panel administracyjny posiada bardzo dużą liczbę formularzy za pomocą których administrator kontroluje treść strony. Ich poprawna walidacja jest niezmiernie ważna w kontekście stabilnej pracy całej strony internetowej.
    Dzięki zastosowaniu QuickForm do generowania i walidacji danych formularzy, przyszły użytkownik panelu administracyjnego może mieć większą pewność o jego poprawne działanie, ponieważ PEAR to bardzo zaawansowane narzędzie tworzone przez grupy doświadczonych fachowców i testowany przez ogromną rzeszę jego użytkowników na całym świecie.

Mootools JavaScript, Mootools

Obiektowy język JavaScript ma swoje zastosowanie praktycznie jedynie na stronach internetowych. Funkcjonalność tworzona za pomocą JavaScript jest wykonywana przez przeglądarkę na komputerze użytkownika. Strony WWW oparte na silniku SilverCMS od strony frontowej (użytkownika, odwiedzającego witrynę) wykorzystują JavaScript głównie w efektach animacji, takich jak rozwijane menu i otwieranie się okna z powiększonym obrazkiem galerii, czy asynchroniczne przesyłanie informacji z Newslettera lub Sondy.

Dużo większe zastosowanie JavaScript znalazła w panelu administracyjnym. Znajduje się tam wiele akcji przeprowadzanych asynchronicznie. Oznacza to, że zmiana ustawienia pewnych konfiguracji odbywa się bez przeładowania strony. Jest to tak zwana technologia AJAX, czyli niejawne przekazywanie danych w tle za pomocą XML do bazy danych. W panelu istnieją również mechanizmy "przeciągnij i upuść" (ang. drag and drop) znane z systemu Windows, wykorzystywane do uproszczenia zarządzaniem kolejności takich elementów jak zakładki, czy zdjęcia w galeriach. Za pomocą JavaScript wykonane jest również przesyłanie plików (np. obrazków do galerii) z poziomu panelu administracyjnego, wraz z animacją pasków postępu.

Stosując tak potężną funkcjonalność opartą na języku JavaScript, którego działanie uzależnione jest od przeglądarki internetowej, programiści musieli wziąć pod uwagę różnice interpretacji tego języka. Dlatego zdecydowaliśmy się na zastosowanie bardzo popularnego i rozbudowanego Frameworka jakim jest Mootools.

Posługując się klasami Mootools, zamiast standardowymi klasami JavaScript, programista ma większą pewność, że jego kod zadziała na każdej z popularnych przeglądarek. Dodatkowo biblioteki Mootools skracają kod i poszerzają funkcjonalność wielu standardowych klas JavaScript. Zawierają również ogromną liczbę wtyczek z gotowymi efektami animacji oraz klasę Request obsługującą technologię AJAX.

Funkcjonalność Systemu SilverCMS poszerza również spora liczba bibliotek pisanych pod framework Mootools, których zastosowanie ułatwia i ubarwia korzystanie ze stron internetowych oraz przyspiesza zarządzanie stroną z poziomu panelu administracyjnego. Dodatków takich (bibliotek) można odnaleźć bardzo dużo na stronach internetowych fanów Mootools.