Czym jest headless i co musisz o nim wiedzieć?

Michał Kuśmierz-small-image
Michał KuśmierzHead of Frontend, Monogo
Poruszane tematy
Udostępnij ten wpis

Dla kogo headless?

Zacznijmy od wyjaśnienia czym jest monolit. Monolit składa się z jednego miejsca, w którym zarządzamy danymi, posiadamy całą logikę biznesową, mamy interfejs administracyjny, a także webowy interfejs klienta. Jest tu jedna duża zaleta – mamy wszystko w jednym miejscu. W bardziej złożonych systemach uwidaczniają się jego wady.

Pierwsza z nich to częsty wymóg nowoczesnych sklepów internetowych np. możliwość wielokanałowości lub omnichannel. Innymi słowy- obsługa wielu kanałów sprzedaży poza sklepem internetowym: dedykowana aplikacja, dzięki której klienci mogą łatwo robić zakupy będąc w ruchu, link do Instagrama, dzięki któremu produkty z linkiem mogą być umieszczane bezpośrednio na zdjęciach influencerów, czy połączenia z marketplacami takimi jak Empik, Allegro i wiele innych.

Inną kluczową wadą monolitów jest ograniczona możliwość dostosowywania graficznego interfejsu użytkownika przez klientów. Te monolity i wtyczki są zwykle dostarczane
z domyślnymi motywami i stronami wzorcowymi, które trudno dostosować, aby pasowały do ​​unikalnych, markowych wrażeń wizualnych.

Obecny trend headless, który próbuję tutaj wyjaśnić, w uproszczeniu, dzieli te monolity na niezależne podsystemy: zarządzanie treścią jest podzielone na własny Headless CMS(builder.io albo prismic), logika biznesowa na interface API, a graficzny interfejs klienta zyskuje niezależne życie, na którym nie ma ograniczeń co do możliwości projektowania wizualnego i wdrażania zmian wizualnych.

Zalety Headless

Technologia Headless oferuje szereg zalet, które sprawiają, że jest atrakcyjna dla wielu firm i programistów. Oto kilka z nich:

  1. PWA - możesz o tym przeczytać w innym moim artykule: "Kiedy PWA, a kiedy Aplikacja w e-commerce"
  2. Szybsze wprowadzanie nowych funkcjonalności - w architekturze monolitycznej prace backend i frontend są od siebie uzależnione, w architekturze headless, każdy z zespołu może pracować niezależnie. API zapewnia elastyczność serwisu. Błędy systemu backend mogą nie mieć wpływu na to, że zatrzymają prace nad rozwojem jakiejś części na frontendzie. Wyobraźmy sobie, że musimy zaktualizować jedną z mikrousług w naszym sklepie internetowym, ponieważ każda mikro usługa istnieje oddzielnie, ewentualne niezgodności nie zatrzymają działania sklepu. Oznacza to, że możesz szybciej wprowadzić rozwiązanie, co pomoże przewyższyć konkurencję, która można napotkać na ten sam problem w architekturze monolitycznej i zatrzyma działanie całego sklepu
  3. Aktualizacje UX - aplikacje headless mają szanse na uzyskanie wyższych współczynników konwersji, ponieważ aplikacje typu Headless działają szybciej, a wdrażanie zmian UX odbywa się bez udziału backendu, co skraca proces wdrażania zmian o połowę. Szybsze ładowania aplikacji wpływa również na rankingi w google page speed, co z kolei ma pozytywny wpływ na SEO.
  4. Personalizacja - Headless zapewnia maksymalną swobodę dostosowania we wszystkich obszarach, co pozwala na swobodę w tworzeniu spersonalizowanych danych dla użytkowników.
  5. Integracja kanałów innych niż internetowe - dzięki ukierunkowaniu wykorzystywania interfaców API, możemy pozwolić sobie na bezproblemowe integracje we wszystkich kanałach sprzedaży. Przyszłe zmiany i aktualizacje platformy też są łatwe. Jeżeli np Tik Tok, czy inna platforma udostępni funkcję zakupów, będziesz mógł szybko wejść w nowy kanał przez integrację. Wystarczy, że połączysz go przez interface API, a zaczniesz sprzedawać.
  6. Możliwość eksperymentowania - dzięki nowoczesnej architekturze Twoja Aplikacja jest otwarta na eksperymenty. Marketing może szybko wdrażać zmiany CMS bez wpływu na logikę aplikacji, bez udziału zespołu developerskiego. Zmiany Frontend można wdrażać, gdy klienci dokonują zakupów. Nie ma potrzeby zatrzymywania działania sklepu, kiedy wdrażamy tylko zmiany frontend.
  7. Oszczędność czasu i pieniędzy na wsparciu IT - najczęstsze zmiany jakie wdrażane są na sklepach, to rzeczy marketingowe. Aktualnie dzięki architekturze Headless CMS (np builder.io), zespół marketingu może wdrażać bardzo szybko zmiany bez udziału wsparcia zespołu IT.
  8. Mniejsze ryzyko na zmiany na rynku platform eCommerce - jeżeli kiedyś będziemy chcieli zmienić platformę eCommerce np. z Shopware na Magento 2 bez zmiany wyglądu aplikacji, wystarczy tylko dostosować API, jaki dana platforma nam dostarczy, bez potrzeby budowania aplikacji od zera.

Wady Headless

Oczywiście, mimo licznych zalet, technologia Headless CMS ma także pewne wady, które warto wziąć pod uwagę. Poniżej znajdziesz kilka przykładów minusów:

  1. Technologia Headless nie pokrywa 100% opcji dostępnych w monolitycznym Magento 2 albo Shopware - żeby pokryć 100% funkcjonalności dostępnych w tych ogromnych platformach eCommerce, musi być pokrycie danych z bazy danych w API w 100%. Tak się jednak nie dzieje. Dostawcy oprogramowania nie dostarczają całkowitego pokrycia i kiedy będzie nam zależało na określonych funkcjonalnościach logiki biznesowej, będziemy musieli dopisać odpowiednie metody albo poczekać, aż dostawca sam je pokryje.
  2. Wysokie koszty - wszystko co budujemy w technologii headless musimy opłacić osobno, ponieważ wszystko budujemy indywidualnie. Oznacza to, że w technologii Headless za CMS musimy zapłacić osobno, co w monolicie mamy w jednym miejscu.
  3. Logistycznie jest to ogromne przedsięwzięcie - budujemy wszystko od zera, wdrażamy niestandardowe interfejsy API, oddzielnie testujemy backend oddzielnie testujemy frontend oraz integracje. Wymaga to bardzo dużo pracy, którą muszą wykonać wykwalifikowani specjaliści.

Różnorodny duży zespół - w przypadku wielu firm frontend, backend i QA, PM tworzą jeden zespół. Mały zespół nie poradzi sobie z technologią Headless. Zbudowanie od podstaw platformy opartej na interfejsie API, wymaga użycia znacznie większej ilości technologii niż w przypadku tradycyjnej architektury. Członkowie zespołu specjalizujący się w każdej technologii będą potrzebni zarówno w procesie rozwoju jak i bieżącego utrzymania. Mając duży zespół musimy delegować zazwyczaj ogromną ilość zadań.

Czy Headless jest dla mnie?

Trafiłeś na ten artykuł, ponieważ najprawdopodobniej stoisz przed wyborem technologii dla Twojego sklepu internetowego. Szukasz odpowiedzi, czy warto rozważyć Headless. Mogę odpowiedzieć na to pytanie w taki sposób: to zależy.

Jeżeli termin jest napięty, wymagania do designu niekoniecznie skomplikowane, a modyfikacji wyglądu sklepu nie przewidujesz robić zbyt często, integracji z innymi systemami masz mało, to prawdopodobnie wybór technologii Headless byłby nierozsądny. W takim przypadku rekomenduję Ci wybrać standardowe rozwiązanie Magento 2 albo Shopware. Tylko pamiętaj skorzystać ze stabilnego rozwiązania serwerowego, najlepiej „szytego na miarę". Doskonałym wyborem będzie Monogo Cloud.

Reprezentujesz większą firmę, masz bardziej złożone wymagania i chcesz obsługiwać kilka kanałów sprzedaży? Chcesz często modyfikować wizualizacje na swojej aplikacji, a przy tym potrzebujesz elastycznego i przyszłościowego systemu wspierającego PWA? Wybór Headless będzie idealnym dla Ciebie wyborem. Koszt wdrożenia Headless jest większy, ale późniejszy jego rozwój jest tańszy.

Większość dużych monolitów, wspomnianych wcześniej Magento i Shopware, oferuje swoje wersje Headless. W firmie Monogo mamy swoje rozwiązanie, które rozwijamy od 2018 roku, więc jest to dojrzała i sprawdzona technologia.

Po szczegóły zapraszam do kontaktu: [email protected]