Ta lekcja jest w bazie eduweb

Zaloguj się kontem z dostępem albo wykup dostęp do bazy, żeby obejrzeć wideo.

Lekcja 111/ 189Svelte

0:00 / 0:00

Program JavaScript: Svelte

5 godz. 20 min wideo189 lekcji34 moduły

Czego się nauczysz

  • Tooling & Konfiguracja
  • Najnowszy JavaScript i TypeScript
  • Szeroka perspektywa web developmentu
  • Projektowanie back-endu (Nest.js)
  • Praca z bazami danych
  • Produkcyjne praktyki pracy z aplikacją

Program JavaScript - na Wszystkich Frontach

JavaScript na frontach to 5-tygodniowy Program dla front-end developerów i developerek, chcących poznać wszystkie obszary nowoczesnego projektowania aplikacji webowych, pod okiem senior full-stack developerów, którzy wspólnie zajmują się programowaniem od najmłodszych lat.

Tooling & Konfiguracja

W pierwszym tygodniu Programu poznasz szereg narzędzi i sposobów ich konfiguracji. Twoim celem będzie zorganizowanie swojego środowiska pracy tak, aby służyło Ci jak najlepiej, zarówno pod kątem efektywności jak i komfortu. Poznasz opracowane przez Adama techniki pracy, oraz zobaczysz jak wykorzystuje w praktyce najnowsze aplikacje, które wykorzystuje na granicy ich możliwości (a czasem poza nią) poprzez wykorzystanie wiedzy programistycznej, nie tylko w celu rozwoju projektów.

Najnowsze wersje JavaScript i TypeScript

Cały ekosystem JavaScriptu rozwija się w bardzo dużym tempie. Z tego powodu część naszej uwagi skupi się na tym, aby zapoznać się z najnowszymi możliwościami zarówno JavaScriptu, jak i najnowszych wersji narzędzi, z których korzystasz niemal każdego dnia. Na tym etapie zakładamy że posiadasz już przynajmniej dobrą znajomość JavaScript oraz podstawy TypeScript.

Szeroka perspektywa full-stack web developmentu

Poruszanie się po różnych obszarach aplikacji w roli full-stack'a, wymaga nie tylko ich głębokiej znajomości ale też umiejętności spojrzenia na nie z szerokiej perspektywy. W wielu przypadkach świadomość możliwości jest ważniejsza niż posiadanie faktycznej wiedzy o wąskim obszarze. W tym Programie dowiesz się o wielu zagadnieniach, które pomimo tego że nie będą omówione na głębokim poziomie, pozwolą Ci swobodnie poruszać się po aplikacjach tworzonych w ekosystemie JavaScriptu.

Projektowanie back-endu

JavaScript oraz obecność Node.js sprawiają, że możesz z ich pomocą projektować również back-end. Jest to bardzo rozległe zagadnienie, które samo w sobie może stać się specjalizacją. Pomimo tego w Programie zebraliśmy najważniejsze zagadnienia oraz przeprowadzimy Cię przez proces tworzenia back-endu aplikacji na przykładzie jednego z najlepszych obecnie frameworków - Nest.js.

Praca z bazami danych

Nieodłącznym elementem praktycznie każdej aplikacji są bazy danych. Ich projektowanie oraz odpowiednia optymalizacja jest złożona ale jednocześnie uwzględnia szereg najważniejszych praktyk, które wystarczy znać aby rozpocząć z nimi pracę. Materiał uwzględniony w tym Programie pozwoli Ci na ogólne zrozumienie tego jak działają bazy danych oraz jak pracować z informacjami, które są w nich przechowywane.

Produkcyjne techniki pracy

Ostatnim etapem rozwoju aplikacji jest jej udostępnienie na serwerze produkcyjnym i właśnie na nim skupia się ostatnia część Programu. Poznasz w niej nie tylko sposoby organizacji środowiska produkcyjnego ale też najważniejszych praktyk pracy nad jej rozwojem oraz utrzymaniem, w oparciu o m.in. CI&CD czy zespołową pracę w rozbudowanym repozytorium GIT.

Dla kogo jest ten kurs?

JavaScript na Wszystkich Frontach to Program opracowany przede wszystkim z myślą o osobach znających JavaScript po stronie front-endu, chcących rozszerzyć swoje kompetencje w szeroko pojętym full-stack web developmencie.

Kurs Program JavaScript

34 rozdziały189 lekcji5h 20min

Konfiguracja terminala

52min
  • Dlaczego potrzebujesz dobrego terminala?4min(zablokowana)
  • Wybór terminala6min(zablokowana)
  • Konfiguracja terminala13min(zablokowana)
  • Techniki pracy z terminalem9min(zablokowana)
  • Przydatne polecenia12min(zablokowana)
  • Praca z SSH8min(zablokowana)

IDE

58min
  • Wybór IDE14min(zablokowana)
  • Lekkie edytory kodu9min(zablokowana)
  • Konfiguracja edytora12min(zablokowana)
  • Dodatkowe narzędzia9min(zablokowana)
  • Sandboxy6min(zablokowana)
  • Techniki pracy7min(zablokowana)

Dodatkowe narzędzia

49min
  • Praca koncepcyjna5min(zablokowana)
  • Tooling11min(zablokowana)
  • Narzędzia wspomagające10min(zablokowana)
  • Narzędzia ułatwiające skupienie6min(zablokowana)
  • Organizacja wiedzy9min(zablokowana)
  • No-code8min(zablokowana)

Package Managery

32min
  • Przegląd package managerów6min(zablokowana)
  • Manifest projektu6min(zablokowana)
  • Konfiguracja7min(zablokowana)
  • Własne skrypty5min(zablokowana)
  • CLI7min(zablokowana)

Tooling

35min
  • Narzędzia9min(zablokowana)
  • ESLint Prettier Vite10min(zablokowana)
  • Tailwind i Tailwind UI7min(zablokowana)
  • Build produkcyjny9min(zablokowana)

Aktualności ES6-ES13

38min
  • Standard ECMAScript6min(zablokowana)
  • Szybka powtórka ES6+12min(zablokowana)
  • Nowości w ES7-ES99min(zablokowana)
  • Nowości w ES10-ES1312min(zablokowana)

TypeScript

55min
  • Czy potrzebujesz TypeScriptu9min(zablokowana)
  • Co daje TypeScript?10min(zablokowana)
  • Aktualizacja stacku JS & TS9min(zablokowana)
  • TypeScript 3.8-4.011min(zablokowana)
  • TypeScript 4.0-4.715min(zablokowana)

HTTP

51min
  • Praktyczna praca z metodami HTTP14min(zablokowana)
  • Praktyczna praca ze statusami kodów17min(zablokowana)
  • Praktyczna komunikacja11min(zablokowana)
  • Webhooki9min(zablokowana)

Formaty wymiany danych

20min
  • Rodzaje Payloadu5min(zablokowana)
  • Client Payload8min(zablokowana)
  • Server Payload7min(zablokowana)

Komunikacja w aplikacji

1h 12min
  • Schemat komunikacji15min(zablokowana)
  • Komunikacja po stronie front-endu21min(zablokowana)
  • Komunikacja po stronie back-endu9min(zablokowana)
  • Wymiana informacji14min(zablokowana)
  • Problemy komunikacji13min(zablokowana)

Komunikacja w REST

38min
  • Standard REST14min(zablokowana)
  • Endpointy13min(zablokowana)
  • Wyjątki11min(zablokowana)

Komunikacja w GraphQL

28min
  • Wprowadzenie do GraphQL11min(zablokowana)
  • GraphQL na froncie5min(zablokowana)
  • GraphQL fetch6min(zablokowana)
  • GraphQL w Nest.js6min(zablokowana)

Walidacja danych

20min
  • Walidacja po stronie front-endu6min(zablokowana)
  • Walidacja po stronie back-endu7min(zablokowana)
  • Checklista6min(zablokowana)

Architektura baz danych

45min
  • Wybór bazy danych8min(zablokowana)
  • Zasady projektowania baz danych10min(zablokowana)
  • Rodzaje relacji7min(zablokowana)
  • Najczęściej popełniane błędy9min(zablokowana)
  • Bazy lokalne i produkcyjne11min(zablokowana)

Wprowadzenie do aplikacji full-stack

5min
  • Wprowadzenie do projektu5min(zablokowana)

Back-end z SQL builderem

1h 21min
  • Wariant back-end z knex.js i sqlite35min(zablokowana)
  • Struktura bazy w oparciu o migracje18min(zablokowana)
  • Seed bazy danych18min(zablokowana)
  • Korzystanie z Query Buildera20min(zablokowana)
  • Migracje i produkcja20min(zablokowana)

Back-end z rozwiązywaniem ORM

1h 43min
  • Objection.js17min(zablokowana)
  • Relacje pomiędzy modelami w Objection.js16min(zablokowana)
  • Prisma14min(zablokowana)
  • Relacje pomiędzy modelami w Prisma10min(zablokowana)
  • Seed bazy danych w Prisma20min(zablokowana)
  • Porównanie dwóch podejść ORM26min(zablokowana)

Back-end jako serwer API

5h 43min
  • Implementacja serwera HTTP w Node.js15min(zablokowana)
  • Dodatkowe narzędzia developerskie8min(zablokowana)
  • REST i obsługa błędów na serwerze13min(zablokowana)
  • CRUD24min(zablokowana)
  • Resource Resolvers24min(zablokowana)
  • Połączenie z bazą danych21min(zablokowana)
  • Express.js26min(zablokowana)
  • REST w Express.js21min(zablokowana)
  • Routing i Kontrolery16min(zablokowana)
  • Walidacja zapytań20min(zablokowana)
  • Warstwa serwisowa21min(zablokowana)
  • API w Adonis.js12min(zablokowana)
  • Warstwa kontrolerów16min(zablokowana)
  • Walidacja danych19min(zablokowana)
  • Providery23min(zablokowana)
  • JWT34min(zablokowana)
  • Poprawa obsługi błędów10min(zablokowana)
  • Podsumowanie API - 3 podejścia20min(zablokowana)

Front-end jako SPA

7h 47min
  • Przygotowanie do budowy SPA12min(zablokowana)
  • React26min(zablokowana)
  • Resources20min(zablokowana)
  • Resources i Stan24min(zablokowana)
  • Queries15min(zablokowana)
  • Mutations17min(zablokowana)
  • Mutations i Queries21min(zablokowana)
  • Context i stan globalny36min(zablokowana)
  • Vue27min(zablokowana)
  • Resources i Stan w Vue23min(zablokowana)
  • Pinia34min(zablokowana)
  • Angular13min(zablokowana)
  • Podział na moduły29min(zablokowana)
  • Modele danych18min(zablokowana)
  • Stan globalny33min(zablokowana)
  • Interceptory i RxJS14min(zablokowana)
  • Odczytywanie route params27min(zablokowana)
  • Svelte26min(zablokowana)
  • Svelte-Query11min(zablokowana)
  • Stores i Observables22min(zablokowana)
  • Widoki zamówień10min(zablokowana)
  • Widoki restauracji11min(zablokowana)

Autoryzacja i Uwierzytelnienie

1h 19min
  • Autoryzacja i Uwierzytelnienie9min(zablokowana)
  • Dane wrażliwe9min(zablokowana)
  • Rodzaje uwierzytelnienia8min(zablokowana)
  • Basic Auth4min(zablokowana)
  • API Key4min(zablokowana)
  • Oauth 2.0 & JWT9min(zablokowana)
  • Session Cookie5min(zablokowana)
  • Błędy CORS9min(zablokowana)
  • Zabezpieczenia CSRF11min(zablokowana)
  • Najczęściej spotykane błędy Security9min(zablokowana)

Szkielet, konfiguracja i pierwszy endpoint

56min
  • Generowanie projektu w oparciu o @nestjs cli21min(zablokowana)
  • Porównanie Nest.js z Express.js24min(zablokowana)
  • Deklaratywny sposób pisania kontrolera12min(zablokowana)

Kontrolery i walidacja danych wejściowych

1h
  • Generowanie kontrolerów i model danych22min(zablokowana)
  • Wykorzystanie DTO (Data Transfer Object) i walidacja danych16min(zablokowana)
  • Obsługa i kody błędów - rzucanie wyjątków7min(zablokowana)
  • Kontrolery, DTO i model danych - podsumowanie15min(zablokowana)

Warstwa serwisowa i DI (Dependency Injection)

57min
  • Serwisy - dodatkowa warstwa na logikę aplikacji25min(zablokowana)
  • Współdzielenie danych dzięki Dependency Injection14min(zablokowana)
  • Zależności pomiędzy serwisami18min(zablokowana)

Modułowa budowa aplikacji

10min
  • Grupowanie logiki biznesowej za pomocą Feature Modules10min(zablokowana)

Twardy zapis danych w oparciu o ORM

56min
  • TypeORM - podłączenie do bazy danych i Encje20min(zablokowana)
  • ActiveRecord: Odczyt i Zapis w bazie danych15min(zablokowana)
  • Implementacja relacji: OneToMany - ManyToOne8min(zablokowana)
  • Wykorzystanie Repository Pattern - separacja zależności13min(zablokowana)

Rozbudowa struktury bazy danych

1h 24min
  • Projektowanie struktury bazy14min(zablokowana)
  • Rodzaje relacji danych7min(zablokowana)
  • Dodanie relacji do bazy danych7min(zablokowana)
  • Techniki pracy ze zmiennymi środowiskowymi15min(zablokowana)
  • Własne repozytoria i wykorzystanie relacji9min(zablokowana)
  • Migracje w TypeORM15min(zablokowana)
  • Seedowanie bazy18min(zablokowana)

Autoryzacja i Uwierzytelnienie w praktyce

1h
  • Rejestrowanie użytkowników13min(zablokowana)
  • Własny dekorator6min(zablokowana)
  • Globalna obsługa błędów7min(zablokowana)
  • Tokeny JWT10min(zablokowana)
  • Logowanie z pomocą tokenów8min(zablokowana)
  • Tworzenie Refresh Token8min(zablokowana)
  • Guardy9min(zablokowana)

Dodawanie i odczytywanie danych

1h
  • Tworzenie nowych wpisów15min(zablokowana)
  • Pobieranie i filtrowanie informacji o wpisach20min(zablokowana)
  • Pobieranie i filtrowanie relacji9min(zablokowana)
  • Strategie wyszukiwania10min(zablokowana)
  • Throttling i Limity7min(zablokowana)

Usuwanie danych

45min
  • Aktualizowanie danych14min(zablokowana)
  • Sposoby usuwania danych11min(zablokowana)
  • Usuwanie rekordów10min(zablokowana)
  • Kaskadowe usuwanie rekordów10min(zablokowana)

Middleware

33min
  • Middleware10min(zablokowana)
  • Pipe5min(zablokowana)
  • Guard7min(zablokowana)
  • Filter6min(zablokowana)
  • Interceptor4min(zablokowana)

Wprowadzenie do testowania

2h 36min
  • Powrót do projektu7min(zablokowana)
  • Testing debugger20min(zablokowana)
  • Pierwszy test27min(zablokowana)
  • Grupy testów21min(zablokowana)
  • Naprawa wygenerowanych testów16min(zablokowana)
  • Testowanie Kontrollerów38min(zablokowana)
  • Testowanie Serwisu27min(zablokowana)

Aplikacja na produkcji

1h 13min
  • Połączenie z VPS9min(zablokowana)
  • Konfiguracja NGINX8min(zablokowana)
  • Konfiguracja domeny9min(zablokowana)
  • Awaryjne połączenie z serwerem2min(zablokowana)
  • Instalacja bazy danych9min(zablokowana)
  • Ręczne uruchomienie aplikacji na serwerze13min(zablokowana)
  • Wprowadzenie do CI&CD6min(zablokowana)
  • Github Actions i Node.js7min(zablokowana)
  • Przykłady Github Actions10min(zablokowana)

Newslettery i Maile Transakcyjne

37min
  • Systemy mailowe10min(zablokowana)
  • Integracja Sendgrid10min(zablokowana)
  • Praktyczna praca z e-mailami10min(zablokowana)
  • Upload plików6min(zablokowana)

Zakończenie Programu

12min
  • Podsumowanie12min(zablokowana)

Ten kurs jest w bazie eduweb

Dostęp do wszystkich kursów z bazy eduweb za 199 zł/mies.

Wykup dostęp do bazy

Autor kursu

Średnia ocen autora: 4,7

Bio

Nazywam się Adam Gospodarczyk, jestem designerem i full-stack developerem. Przez całą swoją karierę zawodową pracuję w świecie startupów z branży edukacji, szkoleń pracowników oraz rekrutacji. Jestem współzałożycielem trzech produktów, które rozwijałem w roli CTO od samego początku. Przez ten czas zdobyłem szerokie doświadczenie znacznie wykraczające poza zakres samej technologii. W maju 2017 roku założyłem kanał na YouTube „overment” (https://overment.com) w ramach side-project’u po godzinach. Dziś jest to jeden z największych w Polsce tego typu projektów dla programistów za który otrzymałem nagrodę „JavaScript Hero of Community” podczas konferencji JS Poland 2019. Łącząc moje startup’owe doświadczenie z pasją do technologii, pomogę Ci nauczyć się programowania patrząc szerzej na perspektywę całego biznesu - jest to doceniana przez pracodawców umiejętność, którą wiele osób całkowicie pomija. Przy tym wszystkim pokażę Ci jak ważna jest regularna nauka i pozostawanie na bieżąco.