Witaj w nowej rzeczywistości...

W świecie frontendu od kilku lat zauważyć można dynamiczny rozwój technologii i narzędzi. Minęły te czasy, kiedy developer posiadający wiedzę w zakresie jednego języka programowania może spokojnie przepracować kilka lat, pogłębiając swoją wiedzę w mozolnie tworzonych aplikacjach.

Dzisiejszy frontend developer musi posiadać umiejętności i wiedzę, która wielokrotnie przekracza pojęcie frontendu. Ale najważniejsza jest umiejętność dostosowania.
Frameworki w JavaScript oraz narzędzia zmieniają się często. Zbyt często. Średnio deweloper musi raz w tygodniu aktualizować swoje środowisko programistyczne. A raz na pół roku poznawać składnię nowego frameworka.

Gdzie i od czego zacząć ?

Aby poznać nowości warto wesprzeć się na mocnych podstawach. Zanim zaczniesz mnożyć i dzielić liczby musisz najpierw poznać same liczby – prawda? JavaScript Vanilla – to twój początek w poznawaniu świata współczesnego frontendu.
Na pewno warto zajrzeć do:

Teraz po takim wstępie jesteś gotowy na poznanie trendów i nowości w JavaScript, aby w przyszłości łatwiej było ci się poruszać w świecie developerów.

W tym roku Sacha Grief (http://stateofjs.com) prowadził bardzo intensywnie badania środowiska javascryptowców. Opublikowane dane są zaskakujące, ale potwierdzają trendy na najbliższe miesiące.

Dominuje ES6/ES7

Tak, nastąpiła chwila kiedy ta nowość stała się nie tylko trendem, a wręcz standardem. O czym mówimy? ES6 można rozszyfrować jako ECMAScript 6 / ECMA 2015, a jeszcze prościej, jako standard dla języka JavaScript. Ludzie zajmujący się standaryzowaniem i ujednolicaniem JS są skupieni w organizacji, która dba o to, aby język JS rozwijał się w pożądanym kierunku. Przez ostatnie 6 lat niewiele się nie działo. Jednak rok 2015 był przełomowy i teraz prawie co roku mamy nowy standard.

Dowiedz się więcej: Kurs ES6 nowa generacja JavaScript Zobacz kurs

ES6 i ES7 (najnowsza odsłona z 2016) jest bardzo trendy, ale nie jest to przyczyną „owczego pędu” do nowinek jak w przypadku innych nowości. Standardy jakie są wprowadzane, można powiedzieć, dały JS nowy oddech, nowe horyzonty. Z tych najważniejszych haseł-kluczy usłyszysz o : klasach, modułach, generatorach, kolekcjach (mapy,sety i weaky), ale najważniejszy to zasięg zmiennych (let,const). Tak zmienia język JS i warto być z tym na bieżąco. O fundamentach języka JavaScript mówimy szczegółowo w naszym kursie LINK do sklepu

Frameworki

Trend na powstawanie nowych frameworków jest ogromny, a te poniżej wymienione to tylko kilka przykładów:

  • Angular 2 (https://angular.io/) - kiedyś jego starszy brat był pogromcą wszystkich leniwych deweloperów. Obecna wersja została oficjalnie zaprezentowana, stabilna, z potencjałem. W kuluarach rozmawia się o przejściu z wersji 1.x do 2.0 a duże korporacje uważają za punkt honoru przepisanie na nową wersje swoich angularowych aplikacji. Nie można przegapić tego trendu i wielcy o tym wiedzą. Angular
Dowiedz się więcej: Kurs Angular 2 - od podstaw Zobacz kurs
  • Vue.js(https://vuejs.org) – skromnie nazywają się frameworkiem od interfejsów. W prosty i szybki sposób pozwala na stworzenie aplikacji, które zaskoczą przejrzystością i wydajnością. Ci którzy poznali Vue zalecają naukę frameworka JS właśnie od tego zamiast już leciwego jQuery. Czy słusznie ? Na pewno. vue
  • Aurelia(http://aurelia.io/) - ten rozbudowany framework ma szanse zdominować część świata deweloperów. Mocno wspierany przez środowiska korporacyjne. Uważany za naturalnego konkurenta Angular 2. W tym linku masz możliwość porównania ilości kodu w obu frameworkach. aurelia
Dowiedz się więcej: Nowoczesne aplikacje webowe z Aurelia JS Zobacz kurs
  • Elm-lang(http://elm-lang.org/) - w tym zestawieniu chyba najbardziej trendy i najbardziej nowatorski. Dzięki Elm można pracować spokojnie nad kodem już istniejącym i wdrażać nowe funkcjonalności przy jego pomocy. Utworzenie środowiska programistycznego to zaledwie sekundy, a całość języka to kolekcja najlepszych programistycznych praktyk.
    ostatni, ale nie mniej ważny …
  • TypeScript(TS) – to nie framework a „wisienka na torcie”, „lukier” składniowy lub po prostu składnia która całkowicie ułatwia życie deweloperowi piszącemu w JS. Każdy z wymienionych wyżej frameworków daje możliwość, albo wręcz wymusza (Angular2) użycie TS. O co chodzi w tym? O bezpieczeństwo, niezawodność, szybkość pisania kodu i … statyczne typowanie. Dzięki temu już w trakcie pisania kodu mamy możliwość zauważenia błędów wynikających ze źle przypisanych zmiennych. To aż tyle i tylko tyle, ale każdy deweloper piszący kod na kilka tysięcy linijek doceni to i uważa za konieczne.

Co będzie można robić w JS?

To właśnie chyba jest najbardziej nurtujące deweloperów pytanie. Trudno być prorokiem w tej kwestii, bo rozwój Javascript uzależniony jest od wyobraźni programistów. Skupię się jednak na tych komercyjnych zastosowaniach, w których warto poszerzać wiedzę.

Dowiedz się więcej: Ekosystem JavaScript - wprowadzenie Zobacz kurs
  • Native Application(też Hybrid) – dzięki takim „wynalazkom” jak React Native, Native Script czy Electron można tworzyć aplikacje na wszystkie platformy (Android, iOS, Windows, IoT). Nie trzeba się uczyć do tego innych języków programowania. Wystarczy nam JavaScript. To jest trendy i w tym kierunku zmierza branża. Dzięki temu programista JS staje się uniwersalnym „narzędziem” w zmieniającym się szybko świecie deweloperskim.
  • Service workers– to dzięki nim możemy się spodziewać przyśpieszenia i polepszenia komunikacji pomiędzy serwerami i naszą przeglądarką. I nie tylko nią. „Pracownicy usług” to przyszłość dla wzmożonego ruchu w sieci i opanowaniu napływających w coraz większej liczbie do nas usług. Zapewnią nam dostęp do aplikacji online i offline. I wszystko to z pomocą JavaScript.
  • Node.js – ktoś powie, że to nie nowość, to nie trendy, przecież z Node już pracuje się od kilku lat. Tak ale właśnie w tym roku i w przyszłości przewiduje się wzrost jego znaczenia dla powstających aplikacji. Wiele wskazuje na to, że node.js zastąpi mocno przepracowane serwery Java i inne maści przeżytki. Przyszłość backendu i IoT to node.js. Programowanie funkcyjne – JS odchodzi od programowania obiektowego a podąża w kierunku znanego już z innych języków programowania funkcyjnego. Poruszamy się tutaj na dużej warstwie abstrakcji, co pozwala na tworzenie jeszcze bardziej uniwersalnych aplikacji. O tym się teraz mówi. Poczekamy co przyniesie przyszłość, ale warto zainteresować się tematem już dziś.
Dowiedz się więcej: Kurs Node.js - dynamiczne aplikacje Zobacz kurs

A na koniec

Modne IDE

Każdy deweloper wie, że jego środowisko programistyczne to jego drugi dom. I nie jest skłonny zmieniać go zbyt często. Są nawet ortodoksi twierdzący, że notatnik (no trochę zmodyfikowany – Notepad++) jest wystarczający. Ale w rzeczywistości zmian i pojawiających się nowinek ciężko pracować na niezaktualizowanych edytorach tekstu czy IDE. Na rynku mamy kilka nowości, które urastają do miana popularnych „ponad inne”.
Pierwszy to VS Code – ze stajni Microsofta. I co ciekawe, jeden z najbardziej udanych produktów tej firmy. Rozwijany i wspierany przez ludzi, którzy znają świat JS. VS Code spełnia wszystkie wymogi bardzo dobrego i stabilnego środowiska, a równocześnie zaimplementowane ma najnowsze wsparcia dla najnowszych frameworków i narzędzi.
Drugi edytor, dokładnie IDE(zintegrowane środowisko programistyczne) jest znane od kilku lat, ale zmiana wyglądu oraz ujednolicenie standardów przyniosły mu miano modnego. Mowa o Webstorm ze stajni JetBrains. Wspiera wszystkie najnowsze narzędzia i frameworki i robi to w bardzo profesjonalny sposób.

Podsumowanie

Zdajemy sobie sprawę, że tekst nie wyczerpuje w całości tematu trendów i przewidywań rozwoju JavaScript. Jest to subiektywna i wybiórcza kolekcja informacji z jakimi stykamy się w swojej pracy zawodowej oraz hobbystycznej. Jedno jest jednak pewne JavaScript jest i będzie w przyszłości dominującym językiem programowania. Warto zatem już teraz poszerzyć swoją wiedzę z tego zakresu.