JavaScript od podstaw do technik zaawansowanych
Najbliższe terminy tego szkolenia
Standardy JSystems
- Wszyscy nasi trenerzy muszą być praktykami i osiągać średnią z ankiet minimum 4.75 na 5. Nie ma wśród nas trenerów-teoretyków. Każdy trener JSystems ma bogate doświadczenie komercyjne w zakresie tematów z których prowadzi szkolenia.
- Wszystkie szkolenia mają format warszatowy. Każde zagadnienie teoretyczne jest poparte rzędem warsztatów w ściśle określonym formacie.
- Terminy gwarantowane na 100%. Jeśli jakiś termin jest oznaczony jako gwarantowany, oznacza to że odbędzie się nawet jeśli część grupy wycofa się z udziału. Ryzyko ponosimy my jako organizator.
- Do każdego szkolenia które wymaga jakiegokolwiek oprogramowania dostarczamy skonfigurowane, gotowe hosty w chmurze. Dzięki temu uczestnik nie musi nic instalować na swoim komputerze (i bić się z blokadami korporacyjnymi). Połączenie następuje przez zdalny pulpit lub SSH - w zależności od szkolenia.
Program szkolenia
- Wprowadzenie
- Krótka historia JavaScript
- Środowisko pracy
- Edytory kodu
- Przeglądarki i inne środowiska uruchomieniowe
- Narzędzia debugowania
- Składnia JavaScript
- Czym są zmienne i jak je deklarować? Kiedy let a kiedy const? Czy używamy jeszcze var?
- Komentarze
- Typy danych - proste i złożone
- Operatory
- Instrukcje warunkowe i pętle
- Dobre praktyki związane ze składnią i formatowaniem kodu
- Funkcje
- Czym są funkcje?
- Różne rodzaje tworzenia funkcji (definicja funkcji, wyrażenie funkcyjne, funkcja strzałkowa)
- Parametry i zwracane wartości
- Zakres zmiennych w funkcjach
- Dobre praktyki
- Obiekty i tablice
- Tworzenie obiektów i tablic
- Dodawanie i usuwanie elementów
- Iterowanie przez obiekty i tablice
- Kopiowanie przez wartość i przez referencje
- Destrukturyzacja obiektów i tablic
- Rest / spread syntax - czyli pobieranie reszty i rozpraszanie tablic i obiektów
- Dobre praktyki
- DOM - czyli Document Object Model
- Czym jest DOM?
- Wyszukiwanie elementów DOM
- Manipulacja elementami DOM i ich stylami
- Dodawanie i usuwanie elementów DOM
- Obsługa zdarzeń - czyli interakcji użytkownika takich jak klikanie, najeżdżanie itp.
- Dobre praktyki
- AJAX - czyli Asynchroniczny JavaScript i XML
- Czym jest asynchroniczność ? - oraz kilka słów o tym jak działa JavaScript
- Wyjaśnienie, dlaczego AJAX jest używany w tworzeniu interaktywnych aplikacji internetowych
- Asynchroniczne żądania do serwera
- Pobieranie i wysyłanie danych
- Obsługa odpowiedzi serwera i aktualizacja strony
- Obsługa błędów AJAX
- Dobre praktyki
- Obsługa wyjątków
- Przegląd różnych typów błędów w JavaScript, takich jak ReferenceError, TypeError, SyntaxError itp.
- Bloki try-catch
- Rzucanie wyjątków - za pomocą instrukcji - throw
- Debugowanie kodu
- Unikanie zagrożeń bezpieczeństwa
- Dobre praktyki w obsłudze wyjątków
- Moduły
- Zrozumienie czym są moduły w JavaScript i dlaczego są używane?
- Tworzenie, eksportowanie i importowanie modułów
- Omówienie zakresu zmiennych w modułach
- Sposoby zarządzania zależnościami między modułami.
- Generatory
- Czym są generatory?
- Omówienie podstawowych pojęć
- Wyjaśnienie, do czego generatory są używane i jakie problemy rozwiązują.
- Składnia generatorów
- Zapoznanie się ze składnią deklaracji generatorów za pomocą funkcji function* oraz instrukcji yield.
- Praktyczne przykłady definiowania i wywoływania generatorów.
- Iteracja przez generatory
- Wyjaśnienie, jak iterować przez wartości zwracane przez generator za pomocą pętli for...of.
- Praktyczne zastosowanie iteracji przez generatory do przetwarzania danych
- Wartości zwracane przez generatory
- Omówienie sposobów zwracania wartości za pomocą instrukcji yield.
- Wyjaśnienie, jak przekazywać wartości do generatora i je odbierać.
- Kontrola przepływu w generatorach
- Generatory jako iteratory
- Praktyczne przykłady
- Map i Weak Map
- Czym są mapy? - Omówienie koncepcji map w JavaScript i porównanie ich z tradycyjnymi obiektami.
- Tworzenie map - jak tworzyć mapy za pomocą konstruktora Map() oraz dodawanie i usuwanie elementów z mapy.
- Operacje na mapach - Zapoznanie się z różnymi operacjami, takimi jak pobieranie wartości, sprawdzanie obecności klucza, iterowanie po elementach itp.
- Czym są weak mapy? - Wyjaśnienie koncepcji weak map w JavaScript i różnic między weak mapami a standardowymi mapami.
- Tworzenie weak map - jak tworzyć weak mapy za pomocą konstruktora WeakMap() oraz dodawanie i usuwanie z nich elementów.
- Praktyczne przykłady zastosowania, takie jak np.: przechowywanie dodatkowych danych bez ryzyka wycieku pamięci.
- Zarządzanie danymi w przeglądarce
- Czym są Local Storage i Session Storage?
- Wyjaśnienie różnic
- Omówienie sposobów, w jaki dane są przechowywane w przeglądarce za pomocą tych mechanizmów.
- Dostęp do Local Storage i Session Storage
- Zapisywanie danych - Praktyczne przykłady zapisywania danych wykorzystując metody setItem()
- Pobieranie danych - jak pobierać dane korzystając z metody getItem().
- Usuwanie danych - Omówienie sposobów usuwania danych przy użyciu metody removeItem().
- Praca z różnymi typami danych
- Jak obsługiwać błędy, takie jak przekroczenie limitu pamięci lub brak dostępu.
- Omówienie kwestii bezpieczeństwa oraz praktyk, które należy stosować w celu ochrony danych użytkowników.
- Praktyczne przykłady.
- Dziedziczenie w JavaScript
- Wprowadzenie do dziedziczenia
- Obiekty i prototypy
- Jak tworzyć obiekty za pomocą literałów obiektów oraz konstruktorów obiektów?
- Omówienie koncepcji prototypów
- Jak działa łańcuch prototypów (prototype chain) w JavaScript?
- Dziedziczenie prototypowe
- Wyjaśnienie mechanizmu dziedziczenia prototypowego
- Jak dziedziczyć właściwości i metody z innego obiektu za pomocą prototypów?
- Metoda Object.create()
- Funkcje konstruktora i dziedziczenie
- Klasy w JavaScript (ES6+)
- Wyjaśnienie koncepcji klas w JavaScript
- Porównanie klas z tradycyjnym mechanizmem prototypowym.
- Dziedziczenie klas
- Metoda extends i super
Opis szkolenia
Szkolenie odbywa się na żywo z udziałem trenera. Nie jest to forma kursu video!Szkolenie "JavaScript od podstaw do technik zaawansowanych" jest kompleksowym kursem, który prowadzi uczestników od podstawowych pojęć języka do bardziej skomplikowanych tematów. Uczestnicy zdobędą wiedzę na temat składni JavaScript, typów danych, funkcji, obiektów, manipulacji DOM, obsługi zdarzeń, AJAX, obsługi wyjątków, modułów oraz zaawansowanych technik, takich jak generatory, mapy i weak mapy, a także dziedziczenie w JavaScript.
Szkolenie skupia się na praktycznych aspektach programowania, dostarczając uczestnikom narzędzi do tworzenia interaktywnych aplikacji internetowych. Jest dedykowane dla początkujących i średniozaawansowanych programistów, którzy chcą poszerzyć swoją wiedzę na temat JavaScript i zdobyć umiejętności niezbędne do budowy nowoczesnych aplikacji webowych. Wymagane jest podstawowe zrozumienie podstaw programowania oraz podstawowa znajomość HTML i CSS.
Prowadząca szkolenie: Agata Malec-Sromek
Absolwentka Akademii Górniczo-Hutniczej na kierunku Inżynieria Systemów i Oprogramowania oraz Politechniki Krakowskiej na kierunku Grafika Komputerowa i Multimedia. Swoją przygodę z programowaniem rozpoczęła w 2012 roku pracując w małej agencji kreatywnej na Saskiej Kępie. Od tamtego czasu przeszła przez kilka firm od małych start-upów po duże korporacje, ciągle zwiększając swoje umiejętności. W 2016 roku rozpoczęła współpracę z jedną ze szkół programowania, w której uczyła początkujących programistów tworzenia stron i aplikacji webowych. Aktualnie pracuje w jednej z większych warszawskich firm rozwijając oprogramowanie dla klientów z całego świata. Prowadzi podstawowe i zaawansowane szkolenia zarówno z JavaScript jak i z technologii takich jak m.in.: React, Redux. Wystąpiła na kilku konferencjach (m.in. na 4Developers i Programistok.) oraz prowadziła wiele warsztatów w ramach inicjatywy Women in Technology, Geek Girls Carots, Girls in IT i innych.
Stanowisko robocze
Do tego szkolenia każdy uczestnik otrzymuje dostęp do indywidualnej wirtualnej maszyny w chmurze. Ma ona zainstalowane i skonfigurowane wszystko co potrzebne do realizacji szkolenia. Maszyna będzie dostępna przez cały okres szkolenia.
Gdy na jakiś termin zgłosi się minimalna liczba osób, termin oznaczamy jako gwarantowany.
Jeśli jakiś termin oznaczony jest jako gwarantowany to oznacza to, że na 100% się odbędzie we wskazanym czasie i miejscu.
Nawet gdyby część takiej grupy zrezygnowała lub przeniosła się na inny termin, raz ustalony termin gwarantowany takim pozostaje.
Ewentualne ryzyko ponosimy my jako organizator.
Przejdź do terminów tego szkolenia