środa, 13 Czerwiec 2018

języki programowania front-end

Inne sposoby na tworzenie frontendu

Obecnie do wyboru mamy większy wybór niż frameworki czy biblioteki do tworzenia warstwy widoku,
mianowicie są to nowopowstałe, albo dopiero nabierające popularności języki programowania, narzędzia skierowane przede wszystkim na potrzeby frontendu.

 


 

Elm – funkcyjny język programowania, którego autorem jest Evan Czaplicki.

Od razu nasuwa się pytanie, dlaczego uczyć się całego języka skoro można skorzystać po prostu z frameworku.

Otóż w tym przypadku uczymy, się jednego narzędzia, oczywiście dodajemy biblioteki w razie potrzeby ale cała nauka skupia sie wokół języka. W przypadku np. Reacta musimy poznać cały jego ekosystem, architekturę flux, webpack, babel i inne rzeczy potrzebne choćby do samego rozpoczęcia pracy z nim.

Elm jako język nie stara się konkurować się z JavaScriptowymi frameworkami, ale pozwala nam skorzystać ze wszystkich możliwości jakie niesie ze sobą programowanie funkcyjne. Kod JavaScriptu wygenerowany przez Elm jest średnio od prawie 1.5 do 2 razy szybszy od topowych framerków, już na etapie kompilacji dostajemy pomocne wskazówki, gdzie występuję błąd, dzięki czemu po skompilowaniu nie powinniśmy doświadczyć pojawianie się błędu podczas użytkowania nasze aplikacji.

Zalety:

  • funkcyjny
  • czytelny kod
  • statycznie typowany
  • niemutowalne struktury danych
  • wskazówki już na etapie kompilacji

Wady:

  • dla osób preferujących obiektowe podejście do programowania, Elm nie jest za dobrym wyborem
  • wymaga trochę nauki

 

ClojureScript, kompilator kodu Clojure do kodu JavaScript

Wygenerowany kod jest pozbawiony nieużywanych funkcji, dla przykładu, jeśli w naszym kodzie używamy biblioteki, z której tylko jedna funkcja jest używana, kompilator do naszego skompilowanego kodu doda tylko ten kawałek kodu, który jest wymagany do działania tejże funkcji, reszta kodu jest pomijana.

Osoby preferujące pisanie kodu w stylu frameworka React mogą skorzystać z Reagent, który pozwala nam tworzyć Reactowe komponenty przy pomocy języka Clojure.

Wielkim plusem dla ClojureScript jest fakt, że jak w przypadku pisania aplikacji przy pomocy JavaScriptu po stronie klienta i Node.js czyli defacto używając jednego języka w tym przypadku możemy osiągnąć to samo.

Piszemy w dynamicznym, funkcyjnym języku w obu warstawach aplikacji, ten sam język po stronie klienta jak i serwera. Jedyna rzecz jaka może na początku odstraszać to składnia, ilośc nawiasów może mylić, ale po dłuższym przyjrzeniu widzimy, że kod jest naprawdę czytelny, pomimo pierwszego wrażenia.

Najpopularniejszym obecnie narzędziem do stworzenia szkieletu projektu w Clojure jest obecnie Leiningen i to od niego powinniśmy na początku rozpocząć naszą pracę.

Zalety:

  • funkcyjne podejście do programowania
  • łatwa składnia
  • możliwość podpięcia JavaScriptowych bibliotek
  • wsparcie dla Reacta

Wady:

  • składnia na wzór języka Lisp nie każdego przekonuje
  • mała popularność
Back to home
Alternatywne JavaScriptowe Frameworki

W JavaScriptowym świecie poza frameworkami React, Angular które podzieliły po między siebie popularność, a goniącym je Vue.js jest jeszcze miejsce na inne, mniej skompilowane frameworki, które nie zostały jeszcze dostrzeżone przez szersze grono ludzi.

Read more...
Flutter – pobieranie danych w formacie JSON

W tym wpisie zapoznamy się jak w prosty sposób pobrać dane w formacie JSON.

Read more...
Flutter – nowe narzędzie do tworzenia mobilnych aplikacji

Flutter to nowy framework stworzony przez Google do tworzenia mobilnych aplikacji na systemy iOS czy Android, za pomocą języka Dart. Język ten możemy wykorzystać przy tworzeniu webowych aplikacji na przykład przy pomocy frameworku AngularDart czy do wspomnianych aplikacji mobilnych.

Read more...