dla Początkujących
6 godz. 26 min · JavaScript · Full-stack i Programowanie
Adam GospodarczykProgramowanie to szeroka dziedzina, która nieustannie się rozwija. Rozpoczynając naukę możemy opierać się głównie na wskazówkach bardziej doświadczonych osób, bądź autorach kursów i nauczycielach. W praktyce najważniejsze na początku jest dobre zrozumienie tego, czym jest programowanie, jakie możliwości daje oraz jakie możemy wybrać ścieżki rozwoju. W tym kursie spojrzymy na programowanie z szerokiej perspektywy, dając Ci solidne podstawy do dalszej nauki.
To kolejne trudne pytanie, na które nie ma jednoznacznej odpowiedzi. Dobra wiadomość jest taka że języki programowania, podobnie jak angielski, niemiecki czy hiszpański mają cechy wspólne. Nie oznacza to że nauka jednego, da Ci dostęp do wszystkich ale poznasz ogólne mechanizmy, które spotkasz w niemal wszystkich pozostałych technologiach. W tym kursie skupiamy się właśnie na takich obszarach, opierając przykłady o obecnie najpopularniejszy język jakim jest JavaScript.
Być może zastanawiasz się jak dokładnie wygląda praca programisty? Czym różni się front-end od back-endu i czy wysokie umiejętności analityczne są wymagane niezależnie od obszaru programowania, którym się zajmujemy? Dodatkowo samo zostanie programistą to tylko początek drogi. Możliwości jakie przed nami stoją nie tylko są ogromne, ale również nieustannie się rozwijają, stawiając przed nami nowe wyzwania.
Ten kurs podzielony jest na dwie części - teoretyczną, która przedstawi Ci szerokie spojrzenie na programowanie oraz praktyczną, w której samodzielnie będziesz w stanie przekonać się jak pisać programy z wykorzystaniem języka JavaScript - najpopularniejszego języka na świecie. To, że będziemy przerabiać przykłady w JavaScript, nie stanowi przeszkody a wręcz lepiej przygotuje Cię do pracy z innymi językami jak Python, C# czy C++ lub Kotlin. To wszystko ułatwi Ci podejmowanie decyzji dotyczących dalszej nauki i rozwoju jako programista.
W pierwszych lekcjach części praktycznej kursu dowiesz się jak skonfigurować środowisko pracy wraz z edytorem, w którym przyjdzie Ci pracować. Pomożemy Ci w dobraniu odpowiednich ustawień i wtyczek, które przyspieszą naukę i pomogą w lepszym zrozumieniu podstawowych koncepcji programistycznych. Krok po kroku dowiesz się jak przygotować środowisko i rozpocząć komfortową pracę.
Mimo, że będziemy pracować z JavaScript, posłuży nam on do przedstawienia najważniejszych koncepcji programowania w każdym innym języku. Nie będziemy uczyć się tworzenia stron i środowiska przeglądarki a jedynie przećwiczymy najważniejsze koncepcje języków programowania w środowisku konsolowym. Dzięki temu zdobyte umiejętności z łatwością przełożysz na inne języki jak Python, Java czy Swift, bo wszystkie posiadają identyczne konstrukcje, a poznać należy wyłącznie różnice.
OOP to jeden z najważniejszych paradygmatów programowania, który powinien poznać każdy aspirujący Programista. Dzięki temu będziesz mógł zdecydowanie lepiej zrozumieć możliwości i powiązania klas i obiektów, które tworzą programiści a także pisać kod, który jest prostszy i reużywalny. To koncepcja, którą także wyjaśnimy obrazowo w kursie. Oczywiście, poza teorią w kursie pokażemy Ci przykłady tworzenia funkcjonalnych klas w JavaScript.
Kolejną ważną koncepcją, którą musi znać każdy początkujący Programista jest praca z błędami - innymi słowy obsługa błędów lub debugowanie naszej aplikacji. To niezwykle ważne, bo oszczędzi Ci mnóstwa frustracji oraz wielu godzin rozpoznawania, co w kodzie nie działa poprawnie. Z kursu w praktyce dowiesz się, jak testować swoje aplikacje, łatwo wykrywać błędy i korzystać z narzędzi, które będą je dla nas wykrywać lub automatycznie poprawiać!
Ten kurs przygotowaliśmy tak, aby był fundamentem wiedzy o Programowaniu, którego używamy w wielu naszych ścieżkach na eduweb.pl. To znaczy, że kurs który masz przed sobą rozpoczyna ścieżkę Python, JavaScript, Ruby i wiele innych. Wiemy, że w sieci jest mnóstwo materiałów na temat podstaw programowania i chcieliśmy przygotować wyjątkowy kurs, który da Ci spokój w natłoku wielu informacji w sieci. Zaangażowaliśmy w to najlepszych autorów eduweb oraz naszym zdaniem jednych z najlepszych programistów w Polsce. To, co jest jednak najważniejsze - kurs omawia programowanie bardzo prostym językiem, dzięki czemu jest przystępny dla każdego!
Kurs przeznaczony jest dla osób początkujących, które stawiają swoje pierwsze kroki na scieżce programisty lub programistki. Jednak skorzystają z niego także te osoby, które myślą o nauce programowania w celu uzupełnienia innych umiejętności, na przykład internetowi przedsiębiorcy, freelancerzy, UI/UX i web designerzy. Jeżeli czujesz się zagubiony lub przytłoczony dużą ilością często sprzecznych informacji - ten materiał pozwoli Ci szerzej spojrzeć na programowanie. To z kolei przełoży się na lepsze decyzje, które będziesz podejmować w kontekście swojego rozwoju. W kursie znajdziesz wskazówki i porady dotyczące efektywnej nauki programowania, które pomogą Ci szybciej zdobyć nowe umiejętności i pracę w zawodzie. Najważniejszą z nich jest fakt, że programowanie to dynamicznie rozwijająca się dziedzina, która wymaga od Ciebie nieustannej nauki. Zatem wypracowanie odpowiednich nawyków i technik nauki jest niezwykle istotne, niezależnie od miejsca w którym aktualnie się znajdujesz.
Kolejnym typem danych jakim chciałbym
żebyśmy się zajęli jest null, ale także w przypadku języka JavaScript
taki specjalny typ jak undefined. On się nie musi pojawiać we wszystkich językach
programowania natomiast jeżeli chodzi o null to znajdziesz go niemal wszędzie.
Jest to bardzo ważna wartość. Dlatego będę chciał ci teraz pokazać na czym to polega.
Po pierwsze utworzę sobie zmienną firstName i do tej pory widziałeś, że przypisywaliśmy jakąś wartość np.
Jan. Ale co ważne możemy również utworzyć
zmienną w języku JavaScript, która nie ma żadnej wartości.
Po prostu utworzyliśmy zmienną nic w niej nie przechowując.
Później na pewnym etapie naszego programu,
z uwagi na to, że jest to zmienna, nie mamy tutaj const tylko let,
jest to po prostu zmienna, więc wiemy że możemy zmieniać jej wartość, więc w
dowolnym etapie naszego programu będziemy mogli napisać firstName równa się Jan
i jest to jak najbardziej poprawne.
Oczywiście moglibyśmy na początku
przypisać pustą wartość, żeby zasygnalizować, że tutaj jakiś tekst
będziemy później przechowywać, ale nie musimy tego robić.
No i teraz pytanie brzmi co przechowuje taka zmienna jeżeli nie
przypisaliśmy jej żadnej wartości? To jest dobre pytanie więc spróbujmy sobie na nie
odpowiedzieć. Jeżeli zapisze ten program on się uruchomi.
Nic się nie wydarzyło, bo tak naprawdę nic
konkretnego w nim nie zrobiliśmy. Ale spróbujmy wypisać sobie w konsoli firstName
czyli co przechowuje ta zmienna? I okazuje się, że otrzymaliśmy wartość undefined.
Jest to taka specjalna wartość w
języku JavaScript, która mówi nam, że zmienna nie została zdefiniowana. Czyli ona
jest zadeklarowana, jest jakby utworzona a jej wartość nie jest zdefiniowana.
Więc warto wiedzieć, że w języku JavaScript taki typ jak undefined się pojawia.
On również będzie dla nas bardzo istotny
później, kiedy będziemy tworzyć funkcje z
parametrami, argumentami itd, więc wtedy również to zobaczysz.
Czyli jeżeli do zmiennej nie pisaliśmy żadnej wartości ma ona wartość undefined.
Ale co jeżeli zmienna by nie istniała.
Co gdybym chciał zapytać jaką wartość ma
zmienna o nazwie lastName? Wtedy nasz program się mówiąc brzydko
wyłoży, bo przestanie po prostu działać, zgłaszając nam błąd, że zmienna lastName w
ogóle nie została zdefiniowana. I teraz tutaj taki komunikat, który może nas zmylić
bo mówi lastName is not defined a przed chwilą dla firstName widzieliśmy że to jest
undefined. I wydawałoby się, że to jest praktycznie to samo.
Jednak tak nie jest, dlatego że ta zmienna w ogóle nie została zadeklarowana,
natomiast ta została zadeklarowana, ale nie miała początkowo żadnej wartości.
Teraz chciałbym żebyśmy przeszli jeszcze do wartości null, od której zacząłem tę lekcję,
wspominałem o niej. Dlatego że mamy również
taką wartość jak null w ten sposób przypisujemy
I pamiętaj znowu bez żadnych cudzysłowów bo
wtedy to byłby tekst, który przypadkiem ma słowo null.
Natomiast jeżeli jest tak zapisany to ma to specjalną wartość.
Jeżeli teraz to wypiszemy konsola zwraca nam null. I ta wartość oznacza co innego.
To oznacza że myśmy na jakimś etapie naszego programu celowo do jakiejś
zmiennej przypisali null, albo później kiedy powiemy o funkcjach
będzie to oznaczało, że z jakiejś funkcji celowo zwróciliśmy null.
Dla programisty, który by korzystał z takiego naszego kodu
to oznacza tylko tyle, że ta wartość jest pusta z jakiegoś intencjonalnego powodu.
Na tym etapie jest to naprawdę trudno wytłumaczyć, szczególnie kiedy zaczynasz
dopiero swoją przygodę z programowaniem. Później stanie się to bardziej jasne.
Ale wyobraź sobie, że na przykład w bazie danych wyszukiwalibyśmy jakiegoś słowa.
Powiedzmy tak jak w Google, wyszukuje jakieś frazy
i czasami zdarza się że Google mówi nam, że
nic nie zostało znalezione. Więc możemy sobie wyobrazić, że przeszukując taką bazę
danych na pewnym etapie otrzymaliśmy wartość null.
To oznacza że intencjonalnie ktoś
tworząc taki kod zwrócił null, co sugerowało by nam, że po prostu żadnych
wyników wyszukiwania nie udało się znaleźć.
I my wtedy możemy w naszym kodzie podjąć decyzję jeżeli jest null to np.
wyświetlimy tekst
nie udało się znaleźć tego czego szukasz. Więc null oznacza, że ktoś nam to null zwrócił,
czy przypisał do zmiennej czy zwrócił z funkcji, o czym będzie później specjalnie.
Natomiast jeżeli zobaczysz gdzieś undefined to należy się zastanowić, że być może
jest to jakiś błąd w programie, że mamy wartość undefined, że ta wartość się
pojawia. Ta wartość nie powinna się pojawiać w normalnych okolicznościach,
a w zasadzie ona się nam może pojawić tylko w funkcjach, gdzie będą parametry i nie
przekażemy wartości, ale nie uprzedzajmy faktów
do tego również dojdziemy.
Na tym etapie po prostu zapamiętaj, że w języku JavaScript zmienne, które którym nie
pisaliśmy wartości mają wartość undefined, a także że istnieje praktycznie w każdym
języku programowania taka specjalna wartość jak null, która wprost mówi nam, że
mamy tutaj wartość pustą. Z jakiegoś powodu ją tutaj przypisaliśmy czy zwróciliśmy np.
dlatego, że nie udało się czegoś znaleźć w bazie danych itd.