Jak nauczyć się JavaScript od podstaw?

23 stycznia 2019

Mnogość ofert pracy dla front-end developerów o specjalności Java Script zachęca do zainteresowania się nauką tego języka.

Być może zastanawiasz się, czy można nauczyć się samego Java Script i już być guru programowania. Niestety nie jest tak łatwo. Jeżeli chcesz się zajmować front-endem, konieczna będzie dobra znajomość języków HTML i CSS. Opowiemy ci dlaczego!

Jak nauczyć się JavaScript od podstaw?

Musisz wiedzieć, że Java Script jest językiem programowania, który nie funkcjonuje samodzielnie. Służy głównie do manipulowania tym, co zostało napisane w HTML-u i CSS. Najprostszy przykład? Za pomocą Java Script możemy np. zmienić kolor jakiegoś elementu w CSS (kaskadowe arkusze stylów), po tym, jak wystąpi jakieś zdarzenie, np. kliknięcie myszką na buton może spowodować zmianę jego koloru.

Żeby było nieco trudniej, programowanie nie odbywa się w jednym pliku. Osobno tworzymy pliki HTML, CSS i Java Script. Pliki HTML łączą w sobie CSS i Java Script. Co to oznacza? To właśnie w pliku HTML musimy podać, z jakiego CSS i Java Script będzie korzystać dana strona. Znajomość HTML jest więc niezbędna, aby zastosować to, co napiszemy w Java Script.

Wiesz już, że zanim zaczniemy swoją przygodę z Java Script, musimy posiadać przynajmniej podstawową wiedzę na temat HTML i CSS. Jak w prosty sposób trenować praktyczne umiejętności? Trzeba wyznaczyć sobie prosty cel, jak np. napisanie prostej gry memory, którą stworzyć można właśnie za pomocą HTML-a i CSS-a.

Jak zabieramy się za to w Codecool? W module webowym naszego kursu programowania studenci Codecool zapoznają się z HTML i CSS a później uczą się,  jak ożywiać swoje strony dzięki zastosowaniu Java Script.

Przeczytaj również: Przydatne skrypty w JavaScript

Skąd czerpać wiedzę na temat Java Script i jak zacząć naukę tego języka? Na stronie JavaScript.info znajduje się kompletne i bardzo rozbudowane kompendium wiedzy na temat Java Script. Z uwagi na fakt, że Java Script jest bardzo rozbudowanym językiem, ilość materiałów do nauki może się wydać wręcz przytłaczająca.

Spokojnie! To tylko jeden obszerny tutorial dla osób, które chcą zgłębić język Java Script. Istnieje też wiele innych, które pomogą nieco łagodniej wejść w temat nauki Java Script. Przykładowo możemy wymienić tu stronę Java Script for Cats. Również na stronie HTML DOG znajdziecie co nieco na temat nauki Java Scriptu.

Wyzwania i trudności Java Script

Java Script jest językiem asynchronicznym i to sprawia największą trudność naszym studentom. Oznacza to, że język nie gwarantuje, że kod będzie wykonywany w takiej kolejności, w jakiej go zapisaliśmy. Dzieje się tak dlatego, że w Java Script operujemy na tzw. zdarzeniach, czyli informujemy przeglądarkę o tym, co ma robić, jeśli nastąpi jakieś zdarzenie. Przykładowo, okienko z informacją wyskoczy dopiero, jeżeli użytkownik kliknie w danym miejscu. Powoduje to również takie konsekwencje, że jedno zdarzenie może wywoływać kolejne. Na początku przygody z programowaniem w Java Script ciężko się w tym połapać, wymaga to praktyki i przyzwyczajenia się do specyfiki tego języka.

Java Script bardzo luźno podchodzi do typów danych. Próbuje się domyślać, co użytkownik chce wykonać. Jeżeli chcemy wykonać działanie 2+1, ale zapiszemy cyfry w cudzysłowie, to zostanie to zinterpretowane jako chęć połączenia tekstu i pokaże nam się wynik 21. Jeżeli zamiast plusa damy minus, to JS skonwertuje to jako działanie i pokaże wynik 1.

komenda:
alert("2" + "1")
wyświetli nam na ekranie 21
natomiast komenda
alert("2" - "1")
wyświetli nam na ekranie 1.

W Java Script możemy zaobserwować sporo tego rodzaju sprzeczności, nawet w tak podstawowych działaniach. Jak wspomnieliśmy we wpisie, w którym tłumaczyliśmy czym jest Java Script,  sami projektanci tego języka nie spodziewali się, że stanie się on aż tak popularny i że urośnie do takich rozmiarów. Stąd tyle nieprzewidywalnych zachowań w Java Script. Jak sobie z tym radzić? Niestety działa tu zasada “Jak się nie przewrócisz, to się nie nauczysz”. Początkujący programista nie ma więc innego wyjścia, jak tylko się tego po prostu nauczyć i zapamiętać, jak język się zachowuje się w konkretnych sytuacjach. W problematycznych sytuacjach pomocne będzie użycie debuggera, dzięki któremu sprawdzimy, co dzieje się w programie w czasie jego działania. Gdy już znajdziemy błąd, trzeba wymyślić jego rozwiązanie lub skorzystać z zasobów dostępnych np. na StackOverflow. Jest to strona, na której można zadawać pytania i opisywać programistyczne zagwozdki. Eksperci tłumaczą dokładne przyczyny błędów lub nieoczekiwanych zachowań Java Scriptu.

Dlaczego warto uczyć się Java Script?

Na to pytanie można odpowiedzieć nawet jednym zdaniem: Java Script jest obecnie najpopularniejszym, najczęściej stosowanym językiem programowania, który pozwala pisać programy, które działają na wielu platformach. w przeglądarce, na desktopie, na urządzeniach mobilnych i serwerach. Znajomość tego języka przyda się programistom w różnych branżach. Specjalista od Java Script może na przykład znaleźć zatrudnienie w branży gier. Istnieje wiele gier online, które działają w oparciu o Java Script.  Z Java Script korzystają nie tylko programiści, ale również designerzy, projektujący dynamiczne interfejsy dla użytkowników.

Zainteresuje Cię również: Od jakiego języka zacząć naukę programowania?

Program nauki JS w Codecool.pl

W module webowym zaczynamy z naszymi studentami naukę HTML i CSS, a następnie przechodzimy do nauki programowania w Java Script. W dalszej części kursu, a dokładnie w module zaawansowanym, studenci Codecool mogą wybrać specjalizację front-endową. Rozpoczynają wówczas naukę frameworków Java Scriptowych, takich jak React i Angular. Student, który wybierze taką specjalizację, może zajmować się później projektowaniem zaawansowanych interfejsów użytkownika, tworzyć rozbudowane aplikacje takie jak Arkusze Google czy Facebook, który również jest dynamiczną aplikacją webową, działającą na wielu platformach. 🙂 Podobnie komunikator tekstowy Messenger jest aplikacją opartą o Java Script.

Podsumowanie

Nauka samego Java Script nie wystarczy, by starać się o pracę na stanowisku front-end developera. By nim zostać, trzeba także znać przynajmniej podstawy HTML i CSS, bo dopiero wtedy będziemy w stanie wcielić w życie to, co zaprogramowaliśmy w Java Script.