EcmaScript 2015 i nowsze

Wersja JavaScript na której w większości się dzisiaj opieramy to ES5, która została wprowadzona w 2009 roku.

W 2015 roku została wprowadzona kolejna - 6 wersja EcmaScript, która także wprowadzała sporo zmian do tego języka.
Wprowadzono klasy, moduły, funkcje strzałkowe, naprawiono kilka nieścisłości, które występowały w ES5 itp. Ogólny kierunek, który przyjęto to bardziej poważne podejście do pisania kodu.

Wśród developerów wersję tą zaczęto nazywać ES6, lub ES2015. Wersja ta była dość dużą aktualizacją.

Kolejne wersje Javascriptu przyniosły następne udogodnienia dla programistów. Wśród nich znajdziemy ułatwienie pracy z asynchronicznym kodem - doszły nam asynchroniczne funkcje i asynchroniczne iteracje, czy kilka "pomniejszych" udogodnień takich jak np. spread operator.

Ewolucja Javascript

Język Javascript, podobnie jak CSS charakteryzują się tym, że są różnie wspierane na różnych przeglądarkach. Możesz zobaczyć to na stronie http://kangax.github.io/compat-table/es2016plus/. Na górze strony masz przyciski, które przełączają wersje Javascript. Z wersją 5 nie powinno być żadnych problemów - chyba, że celujemy w naprawdę specyficzne przeglądarki. Wersja 6 też jest porządnie wspierana, ale przy niektórych nowościach trzeba uważać.

Użycie danej wersji Javascript wiąże się z wymaganiami, które są indywidualne dla każdego projektu z osobna. Blog webmasterski traktujący o nowościach w świecie webdevu śmiało będzie mógł korzystać z najnowszych rozwiązań takich jak fetch czy funkcje asynchroniczne. Ale już sklep o globalnym zasięgu raczej nie będzie mógł sobie pozwolić na rzucanie się na każdą nowinkę.

W linku, który powyżej dałem, autor dał sugestię "target the oldest version that has the features you need", co oznacza byśmy używali możliwie jak najstarsze wersji, która ma wszystkie nowości których nam potrzeba. Nie sposób się z tym nie zgodzić.

Warto tutaj zauważyć, że na rynku pojawiła się spora liczba różnych frameworków takich jak React, Vue, Angular czy wiele pomniejszych. Wielu autorów tworząc aplikacje w Javascript używa do tego dodatkowych narzędzi takich jak Webpack czy Gulp, które można zmusić do konwersji nowoczesnego kodu na starszą wersję, dzięki czemu my możemy pisać używając nowinek, a nasz kod jest wspierany przez większą liczbę przeglądarek.

Ale znowu - nie ma tutaj jednego dobrego rozwiązania. Jedni będą miłować się w tworzeniu swoich Reactowych apek za pomocą Webpacka, czy Parcela, a inni z kolei będą tworzyć bardziej klasyczne strony, w których żadne wspomniane narzędzia nie będą im potrzebna. Tu i tu podejście będzie poprawne - ale inne.

Co pozostaje? Przyjmować nowości z otwartymi rękoma, ale i ze stosownym opanowaniem. A poza tym - uczyć się i testować. Nauki i testów nigdy za wiele.

W tym dziale pouczymy się kilku nowości - które już kilka razy w tym kursie używaliśmy.

No to wio do nauki.