JavaScript

Aktualizacja: 07.07.2017

Zastosowanie

Przy tworzeniu stron internetowych, oprócz samego języka Javascript, niezbędne jest zrozumienie kodu HTML oraz podstaw CSS-a.

Javascript to dynamicznie typowany język wysokiego poziomu. Najczęściej jest używany przy tworzeniu stron WWW, zapewniając interaktywność stron oraz obsługę zdarzeń, walidacji formularzy czy budowanie elementów nawigacyjnych. Takie wykorzystanie języka JavaScript ułatwia zastosowanie bilbioteki, takiej jak jQuery. Warto przy tym zauważyć, że używanie biblioteki nie powinno zastępować sensownej znajomości samego języka.

Dzięki platformom, takim jak Electron.js czy nw.js, możliwe jest tworzenie pełnoprawnych, wieloplatformowych aplikacji/gier przy użyciu wyłącznie technologii sieciowych (HTML, CSS, JS…) dzięki połączeniu platformy Node.js oraz silnika przeglądarki Chromium.

Node.js jest wieloplatformowym środowiskiem uruchomieniowym JavaScript. Oznacza to, że za jego pomocą można uruchomić kod JavaScript bezpośrednio na komputerze, bez wykorzystania przeglądarki. Node.js został oparty o popularny silnik JS, V8 - używany chociażby w Google Chrome i zapewniający szybkie wykonanie kodu. Node.js sam w sobie nie jest serwerem, umożliwia jednak stworzenie własnego serwera HTTP lub innych usług sieciowych. Node.js daje również dostęp do systemu plików, metod pracy z plikami oraz innych narzędzi, dzięki którym możliwe jest wykonywanie wielu operacji w systemie operacyjnym. Co więcej, dzięki globalnej bibliotece modułów npm, każdy może łatwo zainstalować niestandardowe moduły, jak i również podzielić się ze światem własnymi.

Istnieje wiele poradników oraz przykładowych projektów, które pozwalają na przyjemną naukę oraz pisanie swoich pierwszych aplikacji. Node.js który w ostatnich latach zyskał bardzo na popularności, obecnie jest używany przez wielu gigantów, takich jak: Yahoo, Netflix, Medium, LinkedIn, Uber czy PayPal.

Poziom skomplikowania

JavaScript jest bardzo łatwym językiem do rozpoczęcia nauki programowania, zwłaszcza, że jest to język wysokiego poziomu, a do pisania kodu wystarczy tylko notatnik oraz przeglądarka - nie ma potrzeby kompilowania kodu. Problematyczne dla początkujących może być jednak fakt, że ten sam kod może działać inaczej w różnych przeglądarkach. Te różnice na szczęście powoli zanikają wraz z rozwojem przeglądarek oraz dzięki dynamicznemu procesowi standaryzacji.

Język JavaScript jest językiem jednowątkowym, co w uproszczeniu oznacza tyle, że naraz może być wykonywana tylko jedna operacja. W przypadku większych aplikacji może stanowić to problem, gdyż kolejne operacje będą blokowane przez pozostałe. Stąd powstała potrzeba wprowadzenia do języka asynchroniczności, a zatem – w dużym skrócie – możliwości wykonywania operacji "w tle", bez potrzeby czekania na ich wynik. To umożliwiło wypracowanie takich technik, jak Ajax (nieblokująca komunikacja z serwerem w celu pobrania dodatkowych danych), niemniej wprowadziło całą nową klasę problemów związanych z faktem, że zaburzona została kolejność wykonywania kodu (nie wiadomo bowiem, kiedy operacje asynchroniczne zwrócą swój wynik).

Debugowanie JavaScriptu nie jest jakoś specjalnie trudne. Tym bardziej, że przeglądarki mają wbudowane narzędzia dla programistów, które pomagają rozwiązać większość problemów bez używania internetu czy dokumentacji. Jest to podstawowa umiejętność, którą należy poznać na samym początku. Smutne jest to, że spora część kursów kompletnie omija ten aspekt.

Im większa aplikacja, tym trudniej jest ją poprawnie utrzymać. Pomogą w tym podzielenie kodu na moduły, stosowanie odpowiednich wzorców projektowych oraz trzymanie się dobrych praktyk.

Podsumowując, nauka języka JavaScript jest dość łatwa, jednak pełne opanowanie tego języka jest już wymagające.

Popularność

JavaScript to "must know" jeśli chodzi o programowanie webowe. Stąd jego popularność. JavaScript jest obecnie na 7 miejscu w rankingu TIOBE index, a zainteresowanie tym językiem wzrosło o 22.3% w ubiegłych latach. Z kolei ranking spectrum daje mu miejsce 6.

JavaScript jest także najczęściej oznaczanym językiem na Githubie z łączną liczbą projektów 1,320,166, a prawie 5000 z nich ma więcej niż 500 gwiazdek. Na StackOverflow jest również na pierwszej pozycji z liczbą pytań równą 1 302 415, gdzie rozwiązany jest chyba każdy problem początkującego programisty (pamiętaj o tym). Jakby tego było mało, również na portalu Meetup.com jest to największa społeczność z 2 377 702 członkami oraz 4 583 spotkaniami na całym świecie.

Przyszłość języka

JavaScript jest jednym z najpopularniejszych języków programowania oraz jest stale rozwijany. W najbliższym czasie się to nie zmieni, wręcz przeciwnie. Jego ostatnia wersja wersja wyszła w 2017 roku. Głównie dzięki coraz to nowszych frameworkom i narzędziom poszerzających jego możliwości i zastosowanie. Szczególnie obiecująco zapowiada się node.js. JavaScript to bezpieczny wybór.