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.
Wiesz już jak działa instrukcja warunkowa if,
natomiast w tej lekcji pokażę Ci jak możemy skorzystać z jej skróconego zapisu
w formie wyrażenia, które bardzo często może się przydać.
I na początek będę chciał zrobić taką rzecz, że utworzymy sobie stałą firstName tak jak
mieliśmy wcześniej i będziemy zakładać, że skądś to dostaliśmy.
Czyli czy jest takie imię czy nie
na tej podstawie na przykład będziemy wiedzieć czy ktoś jest zalogowany
w naszym programie, w naszej aplikacji czy na stronie internetowej.
I teraz na bazie tego firstName będziemy chcieli utworzyć sobie zmienną userName,
więc napiszemy userName i na początku ona
może być pusta czyli w ten sposób albo możemy jej przypisać pusty ciąg znaków,
tak może wyglądać ale może mieć również
wartość undefined czyli w tym przypadku nie zdefiniowaną.
I teraz będę chciał zrobić coś takiego.
Na początek zrobimy to za pomocą instrukcji if, napiszemy if firstName,
i tutaj moglibyśmy zrobić tak, jeżeli firstName nie jest równe pustemu ciąg znaków to chcę
ustawić zmienną userName na wartość firstName.
Natomiast w przeciwnym wypadku
jeżeli firstName nie jest podane to będziemy chcieli napisać, że userName to jest nieznajomy.
Mam nadzieję, że teraz to dobrze widzisz.
Czyli sprawdzamy czy firstName nie jest puste.
Jeżeli nie jest to userName przyjmie
wartość taką samą jak firstName w przeciwnym wypadku będzie to nieznajomy.
Ale pokaże Ci, że tutaj możemy zapisać to również krócej. Możemy zrobić coś takiego.
Dlatego, że dla instrukcji if nie ma znaczenia czy tu przekażesz
true lub false tylko czy przekażesz wartość prawdziwą czy fałszywą i pusty ciąg znaków
będzie traktowany jako wartość fałszywa czyli wtedy ta linijka się nie wykona,
natomiast jeżeli tutaj będziemy mieli podane na przykład Jacek
to wtedy if Jacek jest tu traktowany jako true userName przyjmie wartość Jacek.
OK. I teraz będziemy chcieli niżej
zrobić coś po prostu console.lod i napiszemy Witaj
i będę chciał tego dokleić userName. Zapiszmy i widzimy
witaj Jacek. Czyli wszystko jest OK.
Natomiast jeżeli nie mielibyśmy podanego imienia to zobaczymy
witaj nieznajomy.
No i teraz pokażę Ci jak możemy cały taki
zapis skrócić do wyrażenia do jednej linijki za pomocą tzw.
Ternary Operator i to jest ten skrócony zapis if.
Więc to co tutaj mamy będę chciał wykomentować i poniżej
napiszemy sobie userName,
czyli będziemy chcieli nadpisać wartość tej zmiennej, którą mamy tutaj.
Wiemy, że w nic w nie zapisaliśmy
na razie i napiszemy sobie coś takiego firstName, znak zapytania, firstName
a jeżeli nie to dwukropek nieznajomy.
Już Ci to wytłumaczę.
Otóż ten Ternary Operator przyjmuje 3 opetandy.
Zauważ to jest jeden, to jest drugi a to jest trzeci. I teraz w jaki sposób to działa.
Jeżeli tutaj na samym początku podamy
wartość prawdziwą mogłoby to być true ale równie dobrze tak jak tutaj mówiłem
może to być firstName czyli taka stała, w
której jest jakiś ciąg znaków i jeżeli coś tam będzie to zwróć to co podamy tutaj.
Czyli moglibyśmy powiedzieć, że jeżeli
firstName ma wartość prawdziwą to zwróć tutaj na przykład Jacek.
Teraz by to może było bardziej klarowne dla Ciebie,
natomiast jeżeli ta wartość jest fałszywa
to zwróć to co podaliśmy po dwukropku czyli nieznajomy.
Więc jeżeli wycofamy to mówimy tutaj mniej
więcej tyle, jeżeli w tej stałej firstName jest wartość prawdziwa,
w tym przypadku nie jest bo jest pusta,
jeżeli byłaby prawdziwa to zwróć tutaj
to co tutaj podamy a podajemy wartość tej zmiennej czy stałej firstName.
Natomiast jeżeli jest wartość fałszywa to zwróci nieznajomy zobacz to zadziała
dokładnie tak samo a jeżeli tutaj wpiszemy Jacek to mamy Witaj Jacek.
Czyli jeszcze sobie tylko to prześledźmy,
tutaj mamy Jacek więc Jacek jest wartością prawdziwą,
zgadza się.
Więc zwróć to co jest po znaku zapytania a tu co pozostawiamy?
No też Jacek. Więc to zostaje zwrócone w to miejsce.
Mam nadzieję, że jest to jasne i za pomocą jednej linijki mogliśmy sobie zapisać coś
takiego jak tutaj. Często się to przydaje natomiast przewaga takiego rozwiązania jak
wyżej jest taka, że tutaj możemy mieć oczywiście dużo więcej kodu w tych blokach
a tutaj możemy mieć jedynie jakieś proste wyrażenia. Oczywiście tu by mogło być dwa
plus dwa zostałoby to przeliczone jako cztery i zwrócone itd.
Natomiast tutaj się nie da mieć pełnych
bloków kodu gdzie mogłoby się dziać po prostu znacznie więcej ale w wielu
sytuacjach taki skrócony zapis jest bardzo bardzo przydatny.