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.
Ostatnią rzeczą, o której powinieneś wiedzieć są dziedziny programowania. Chodzi
o to, abyś uchwycił taki przekrój tego, co jest generalnie możliwe w kontekście
kariery programisty i jednocześnie tym czym ewentualnie mógłbyś się zajmować.
Jedną z pierwszych dziedzin, bądź w zasadzie obszarów programowania jest tzw.
Front-end.
Jest to dziedzina skupiona wokół części wizualnej i tej najbliższej użytkownikowi.
Czyli programiści front-end głównie dbają o to, aby odwzorowywać
projekty graficzne w taki sposób jak zaprojektowali to designerzy
i dodać im taki element interaktywności wykorzystując kod.
Elementem warstwy front-endowej był wspomniany w jednej z poprzednich lekcji element, a
konkretnie pole tekstowe umożliwiające użytkownikowi wprowadzenie adresu e-mail.
W momencie gdy użytkownik wprowadził te dane zostały one przekazane dalej i można
powiedzieć, że zostały przekazane do warstwy Middle-end.
Co prawda Middle-end oficjalnie nie występuje
jako konkretny obszar, który jest wydzielony. Zazwyczaj rozróżniamy wyłącznie
front-end i back-end, o którym powiem za chwilę,
natomiast w ciągu ostatnich lat, w związku z tym, że mamy wieloplatformowość i fakt że
poziom złożoności projektowania aplikacji zdecydowanie wzrósł, pojawiły się różnego
rodzaju narzędzia i też specjalizacje, które obejmują programiści, zajmujący się tą
częścią znajdującą się pomiędzy front-endem i back-endem.
Skoro jesteśmy już przy back-endzie to na ten
temat musisz wiedzieć tyle, że back-end jest obszarem, który działa po stronie serwera.
Są tam też specyficzne technologie i
języki programowania, które funkcjonują właśnie po tej stronie, bo z drugiej strony
mamy wspomniany wcześniej front i middle-end.
One działają po stronie tzw. klienta.
Klientem może być chociażby przeglądarka, bądź też np.
nasz telefon. W momencie gdy uruchamiamy jakąś aplikację na telefonie
to jest właśnie klient i on komunikuje się z serwerem i
wszystkimi technologiami, które działają po tamtej stronie.
Jak się pewnie domyślasz te wszystkie warstwy muszą być w pewien sposób ze sobą
połączone i musi być możliwa komunikacja pomiędzy nimi.
Jednocześnie też mamy różnego rodzaju maszyny chociażby serwery, które trzeba
odpowiednio skonfigurować i też utrzymywać i rozwijać.
Tym właśnie zajmują się Dev Opsi.
Czyli z jednej strony oni dbają o tą całą architekturę i jednocześnie są dość blisko
naszej aplikacji upewniając się, że działa odpowiednio wydajnie i jednocześnie, że
wszystkie serwery są odpowiednio zabezpieczone i odpowiednio skonfigurowane.
No i ostatnim obszarem którym możemy
zajmować się jako programiści jest szeroko rozumiany Management.
Chodzi o to, że tworzenie programów to nie tylko pisanie kodu ale również zarządzanie
dostępnymi zasobami, dbanie o deadliny itd.
W związku z tym jeżeli nabędziemy już
odpowiednio dużo doświadczenia możemy wybrać właśnie taką ścieżkę i po prostu
przejść w obszar nieco bardziej biznesowy niż samo programowanie.
Tak że jak widzisz sam, programowanie daje ci wiele różnych możliwości i powiedzenie
że ktoś jest programistą nie zawsze oznacza dokładnie to samo.
Z jednej strony może to całkowicie
przytłaczać bo tych możliwości jest naprawdę bardzo dużo, a z drugiej strony
jest to dobra wiadomość ponieważ zawsze możemy znaleźć po prostu coś dla siebie.
Na ten moment musisz rozumieć że możliwości które przed tobą stoją są
naprawdę ogromne i one będą się cały czas poszerzać a jednocześnie Ty możesz po prostu
dostosować wszystko do swoich potrzeb, do swoich możliwości i swoich celów.
To jaką ścieżkę wybrać dla siebie nie jest do końca oczywiste,
natomiast dam ci kilka wskazówek w jaki
sposób możesz do tego podejść w kolejnych lekcjach.
Tymczasem dzięki za uwagę i do usłyszenia za chwilę.