Czy połączenie z framework-iem Symfony2 wyjdzie CMS-owi na dobre? Te i inne pytania z pewnością nurtują wszystkich oczekujących nowej wersji tego popularnego systemu zarządzania treścią. Są one uzasadnione nie tylko ze względu na obietnice „szybszy”, „nowocześniejszy”, „lepszy”, ale również z uwagi na fakt, iż większość kodu została napisana praktycznie od zera oraz dodano komponenty Symfony2.

Pełna treść artykułu dostępna dla naszych stałych czytelników

Dołącz do naszego newslettera lub podaj swój adres, jeśli już jesteś naszym subskrybentem

Partner technologiczny

Zdjęcie royalty free z Fotolia

Wśród wybranych nowych funkcji i usprawnień, które znajdziemy w Drupal 8 są m.in. szybka edycja treści, bez wchodzenia w peny tryb edycji, łatwiejsze zapisywanie i zarządzanie wersją roboczą treści oraz responsywne, wbudowane skórki. Warto też wspomnieć, że uaktualniona wersja zawiera bardziej intuicyjny interfejs tłumaczeń, poprawioną wydajność front-endu oraz nowy mechanizm aktualizacji. O najważniejszych funkcjach przeczytasz poniżej.

Wielojęzyczność

Na szczególną uwagę zasługuje z pewnością poprawiona wielojęzyczność, która nie dość, że w Drupalu 7 wymagała instalacji wielu modułów, to jeszcze nie była bez błędów. Drupal 8 oferuje nam wbudowane kompletne i właściwe podejście do tłumaczenia treści. „Właściwość” polega na tym, że tłumaczenie encji nie powoduje utworzenia nowej treści w systemie (jak to miało miejsce w Drupalu 7), tłumaczone są jedynie pola encji. Najwyższy czas, aby tak podstawowa funkcja jak wielojęzyczność działała „out-of-the-box”.

Symfony2

Niewątpliwie nową jakość do Drupala 8 wprowadza zastosowanie komponentów framework-a Symfony2. Obiektowa architektura oraz sprawdzony wzorzec MVC sprawiają, że kod jest uporządkowany i spójny. Wymusza to również stosowanie dobrych praktyk dla twórców modułów, co jest bezcenne z perspektywy dewelopera i nie pozostaje bez znaczenia dla klienta, choć nie wszyscy zdają sobie z tego sprawę.

Deployment

Jedną z największych bolączek Drupala był od zawsze skomplikowany proces wdrażania zmian wiążący się z faktem, iż ustawienia konfiguracyjne zapisywane są w bazie danych. W Drupalu 8 otrzymujemy możliwość zarządzania konfiguracją poprzez pliki konfiguracyjne yml. Dzięki temu konfigurację możemy wersjonować, a przy okazji odciążamy bazę danych.

Twig

Do tworzenia szablonów w Drupalu 8 służy system szablonów Twig. Jest szybki i elastyczny, jednakże, co najistotniejsze, jest bezpieczny. Szablon służy do tego do czego jest przeznaczony, a więc do prezentacji widoku i wszelkie złe praktyki polegające na umieszczaniu logiki w szablonach nie powiodą się (na szczęście), gdyż Twig na to nie pozwoli.

Wydajność

Badania wykazały, iż to najczęściej front-end jest powodem długiego ładowania strony z powodu styli, skryptów czy obrazków. W związku z tym poprawiona została agregacja styli oraz skryptów. Ponadto zwiększono wydajność kompresji obrazków, a także dodano ładowanie obrazków z wykorzystaniem metody „lazy loading”. Dzięki tym zabiegom strony w Drupalu 8 mają ładować się szybciej.

Migracja

Dotychczasowy sposób aktualizacji został porzucony. Jego niedoskonałość ujawniała się zwłaszcza przy bardziej złożonych serwisach, gdzie próba migracji najczęściej kończyła się niepowodzeniem. Drupal 8 posiada wbudowany mechanizm importu oparty o moduł Migrate. To podejście pozwala na import zarówno z Drupala 7 jak i 6, a także z innych źrodeł.

Nowe podejście aktualizacji wygląda obiecująco, jednakże za wcześnie jeszcze by jednoznacznie ocenić niezawodność takiej migracji. Pamiętać należy również o modułach i konieczności ich istnienia dla wersji 8, a to na chwilę obecną (Drupal 8 beta) wciąż jest w fazie rozwoju.

Czy trzeba będzie uczyć się Drupala od nowa?

Użytkownik Drupala 7 bez problemu odnajdzie się w Drupalu 8, gdyż większość zmian w panelu zarządzania to drobne modyfikacje lub zmiany wizualne. Deweloperów, którzy nie spotkali się wcześniej z Symfony2 czeka niemałe wyzwanie. Nauka Symfony2 w całości nie będzie konieczna, niemniej opanowanie podstaw działania framework-u oraz zapoznanie się z mechanizmami, na których się opiera, będzie jak najbardziej wskazane.

Podsumowanie

Nie co dzień zdarza się sytuacja, by jeden z najpopularniejszych CMS-ów na rynku, z ugruntowaną pozycją i setkami tysięcy użytkowników decydował się na przepisanie kodu praktycznie od początku. Krok odważny choć z pewnością ryzykowny. Czas pokaże czy był to ruch słuszny, jednakże trudno sobie wyobrazić by było inaczej.

Architektura obiektowa to lepszej jakości kod, a lepszej jakości kod to lepszej jakości produkt, a więc dokładnie to czego oczekują użytkownicy - platformy nowoczesnej, przyjaznej, łatwej w rozbudowie, wydajnej i bezpiecznej. Drupal 8 spełnia wszystkie te warunki z korzyściami zarówno dla właścicieli serwisów jak i deweloperów!

Michał Kopydłowski

Back­end Developer w Merixstudio

Pracuje w poznańskiej agencji interaktywnej, zajmującej się projektowaniem nowoczesnych zgodnych ze standardami serwisów korporacyjnych, portali i aplikacji webowych. Specjalizuje się w tworzeniu stron internetowych opartych na systemie Drupal.

Komentarze (0)