Masz już konto? Zaloguj się

Kurs Program JavaScript

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.

189 lekcji

5h 20min

5 (3 oceny)

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.

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ą

Zawartość

Program JavaScript

34 rozdziały 189 lekcji 5h 20min

  • Konfiguracja terminala

    52min

    Dlaczego potrzebujesz dobrego terminala?

    4min

    Wybór terminala

    6min

    Konfiguracja terminala

    13min

    Techniki pracy z terminalem

    9min

    Przydatne polecenia

    12min

    Praca z SSH

    8min

  • IDE

    58min

    Wybór IDE

    14min

    Lekkie edytory kodu

    9min

    Konfiguracja edytora

    12min

    Dodatkowe narzędzia

    9min

    Sandboxy

    6min

    Techniki pracy

    7min

  • Dodatkowe narzędzia

    49min

    Praca koncepcyjna

    5min

    Tooling

    11min

    Narzędzia wspomagające

    10min

    Narzędzia ułatwiające skupienie

    6min

    Organizacja wiedzy

    9min

    No-code

    8min

  • Package Managery

    32min

    Przegląd package managerów

    6min

    Manifest projektu

    6min

    Konfiguracja

    7min

    Własne skrypty

    5min

    CLI

    7min

  • Tooling

    35min

    Narzędzia

    9min

    ESLint Prettier Vite

    10min

    Tailwind i Tailwind UI

    7min

    Build produkcyjny

    9min

  • Aktualności ES6-ES13

    38min

    Standard ECMAScript

    6min

    Szybka powtórka ES6+

    12min

    Nowości w ES7-ES9

    8min

    Nowości w ES10-ES13

    12min

  • TypeScript

    55min

    Czy potrzebujesz TypeScriptu

    9min

    Co daje TypeScript?

    10min

    Aktualizacja stacku JS & TS

    9min

    TypeScript 3.8-4.0

    11min

    TypeScript 4.0-4.7

    15min

  • HTTP

    51min

    Praktyczna praca z metodami HTTP

    14min

    Praktyczna praca ze statusami kodów

    17min

    Praktyczna komunikacja

    11min

    Webhooki

    9min

  • Formaty wymiany danych

    20min

    Rodzaje Payloadu

    5min

    Client Payload

    8min

    Server Payload

    7min

  • Komunikacja w aplikacji

    1h 12min

    Schemat komunikacji

    15min

    Komunikacja po stronie front-endu

    21min

    Komunikacja po stronie back-endu

    9min

    Wymiana informacji

    14min

    Problemy komunikacji

    13min

  • Komunikacja w REST

    38min

    Standard REST

    14min

    Endpointy

    13min

    Wyjątki

    11min

  • Komunikacja w GraphQL

    28min

    Wprowadzenie do GraphQL

    11min

    GraphQL na froncie

    5min

    GraphQL fetch

    6min

    GraphQL w Nest.js

    6min

  • Walidacja danych

    20min

    Walidacja po stronie front-endu

    6min

    Walidacja po stronie back-endu

    7min

    Checklista

    6min

  • Architektura baz danych

    45min

    Wybór bazy danych

    8min

    Zasady projektowania baz danych

    10min

    Rodzaje relacji

    7min

    Najczęściej popełniane błędy

    9min

    Bazy lokalne i produkcyjne

    11min

  • Wprowadzenie do aplikacji full-stack

    4min

    Wprowadzenie do projektu

    4min

  • Back-end z SQL builderem

    1h 21min

    Wariant back-end z knex.js i sqlite3

    5min

    Struktura bazy w oparciu o migracje

    18min

    Seed bazy danych

    18min

    Korzystanie z Query Buildera

    20min

    Migracje i produkcja

    20min

  • Back-end z rozwiązywaniem ORM

    1h 43min

    Objection.js

    17min

    Relacje pomiędzy modelami w Objection.js

    16min

    Prisma

    14min

    Relacje pomiędzy modelami w Prisma

    10min

    Seed bazy danych w Prisma

    20min

    Porównanie dwóch podejść ORM

    26min

  • Back-end jako serwer API

    5h 43min

    Implementacja serwera HTTP w Node.js

    15min

    Dodatkowe narzędzia developerskie

    8min

    REST i obsługa błędów na serwerze

    13min

    CRUD

    24min

    Resource Resolvers

    24min

    Połączenie z bazą danych

    21min

    Express.js

    26min

    REST w Express.js

    21min

    Routing i Kontrolery

    16min

    Walidacja zapytań

    20min

    Warstwa serwisowa

    21min

    API w Adonis.js

    12min

    Warstwa kontrolerów

    16min

    Walidacja danych

    19min

    Providery

    23min

    JWT

    34min

    Poprawa obsługi błędów

    10min

    Podsumowanie API - 3 podejścia

    20min

  • Front-end jako SPA

    7h 47min

    Przygotowanie do budowy SPA

    12min

    React

    26min

    Resources

    20min

    Resources i Stan

    24min

    Queries

    15min

    Mutations

    17min

    Mutations i Queries

    21min

    Context i stan globalny

    36min

    Vue

    27min

    Resources i Stan w Vue

    23min

    Pinia

    34min

    Angular

    13min

    Podział na moduły

    29min

    Modele danych

    18min

    Stan globalny

    33min

    Interceptory i RxJS

    14min

    Odczytywanie route params

    27min

    Svelte

    26min

    Svelte-Query

    11min

    Stores i Observables

    22min

    Widoki zamówień

    10min

    Widoki restauracji

    11min

  • Autoryzacja i Uwierzytelnienie

    1h 19min

    Autoryzacja i Uwierzytelnienie

    9min

    Dane wrażliwe

    9min

    Rodzaje uwierzytelnienia

    8min

    Basic Auth

    4min

    API Key

    4min

    Oauth 2.0 & JWT

    9min

    Session Cookie

    5min

    Błędy CORS

    9min

    Zabezpieczenia CSRF

    11min

    Najczęściej spotykane błędy Security

    9min

  • Szkielet, konfiguracja i pierwszy endpoint

    56min

    Generowanie projektu w oparciu o @nestjs cli

    21min

    Porównanie Nest.js z Express.js

    24min

    Deklaratywny sposób pisania kontrolera

    12min

  • Kontrolery i walidacja danych wejściowych

    1h

    Generowanie kontrolerów i model danych

    22min

    Wykorzystanie DTO (Data Transfer Object) i walidacja danych

    16min

    Obsługa i kody błędów - rzucanie wyjątków

    7min

    Kontrolery, DTO i model danych - podsumowanie

    15min

  • Warstwa serwisowa i DI (Dependency Injection)

    57min

    Serwisy - dodatkowa warstwa na logikę aplikacji

    25min

    Współdzielenie danych dzięki Dependency Injection

    14min

    Zależności pomiędzy serwisami

    18min

  • Modułowa budowa aplikacji

    10min

    Grupowanie logiki biznesowej za pomocą Feature Modules

    10min

  • Twardy zapis danych w oparciu o ORM

    56min

    TypeORM - podłączenie do bazy danych i Encje

    20min

    ActiveRecord: Odczyt i Zapis w bazie danych

    14min

    Implementacja relacji: OneToMany - ManyToOne

    8min

    Wykorzystanie Repository Pattern - separacja zależności

    13min

  • Rozbudowa struktury bazy danych

    1h 24min

    Projektowanie struktury bazy

    14min

    Rodzaje relacji danych

    7min

    Dodanie relacji do bazy danych

    7min

    Techniki pracy ze zmiennymi środowiskowymi

    15min

    Własne repozytoria i wykorzystanie relacji

    9min

    Migracje w TypeORM

    15min

    Seedowanie bazy

    18min

  • Autoryzacja i Uwierzytelnienie w praktyce

    1h

    Rejestrowanie użytkowników

    13min

    Własny dekorator

    6min

    Globalna obsługa błędów

    7min

    Tokeny JWT

    10min

    Logowanie z pomocą tokenów

    8min

    Tworzenie Refresh Token

    8min

    Guardy

    9min

  • Dodawanie i odczytywanie danych

    1h

    Tworzenie nowych wpisów

    15min

    Pobieranie i filtrowanie informacji o wpisach

    20min

    Pobieranie i filtrowanie relacji

    9min

    Strategie wyszukiwania

    10min

    Throttling i Limity

    7min

  • Usuwanie danych

    45min

    Aktualizowanie danych

    14min

    Sposoby usuwania danych

    11min

    Usuwanie rekordów

    10min

    Kaskadowe usuwanie rekordów

    10min

  • Middleware

    33min

    Middleware

    10min

    Pipe

    5min

    Guard

    7min

    Filter

    6min

    Interceptor

    4min

  • Wprowadzenie do testowania

    2h 36min

    Powrót do projektu

    7min

    Testing debugger

    20min

    Pierwszy test

    27min

    Grupy testów

    21min

    Naprawa wygenerowanych testów

    16min

    Testowanie Kontrollerów

    38min

    Testowanie Serwisu

    27min

  • Aplikacja na produkcji

    1h 13min

    Połączenie z VPS

    9min

    Konfiguracja NGINX

    8min

    Konfiguracja domeny

    9min

    Awaryjne połączenie z serwerem

    2min

    Instalacja bazy danych

    9min

    Ręczne uruchomienie aplikacji na serwerze

    13min

    Wprowadzenie do CI&CD

    6min

    Github Actions i Node.js

    7min

    Przykłady Github Actions

    10min

  • Newslettery i Maile Transakcyjne

    37min

    Systemy mailowe

    10min

    Integracja Sendgrid

    10min

    Praktyczna praca z e-mailami

    10min

    Upload plików

    6min

  • Zakończenie Programu

    12min

    Podsumowanie

    12min

Autor kursu

Adam Gospodarczyk

Średnia ocen autora: 5

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.
Inne kursy tego autora
Prompt Engineering Osobisty Avatar AI No-code Newsletter na Autopilocie NestJS w Praktyce NestJS od Podstaw

Dołącz do ponad 10 tys. zadowolonych z naszych kursów

Żenada. Chłop albo nie umie, albo mu się nie chce skonfigurować IDE i usilnie próbuje wmówić jaki to VSC jest zły. Może najpierw się naucz z niego korzystać, a dopiero potem się wypowiadaj?

Paweł

23 października 2022

Świetny kurs do ugruntowania wiedzy.

Łukasz Czerwiński

1 listopada 2022

Świetny kurs, wiele przydatnych nigdzie indziej niewspominanych rzeczy

Patryk

19 listopada 2022

Kurs Program JavaScript

  • 189 lekcji wideo

  • 5h 20min materiału

  • Ostatnia rewizja 16.09.2022

  • Certyfikat w ramach ścieżek

  • Dostęp z urządzeń mobilnych

Dlaczego wybrać właśnie ten kurs?

Efektywna nauka

Kurs wideo to najbardziej efektywna a zarazem najprzyjemniejsza forma nauki. Jest on tak prowadzony, byś cały czas mógł go śledzić z zainteresowaniem i zaangażowaniem, a także czerpać satysfakcję ze zdobytej wiedzy!

Wiedza ekspertów

Wiedza, którą otrzymujesz w tym kursie, to nie tylko sucha teoria, ale również wskazówki od praktyka z wieloletnim doświadczeniem, dzięki którym dużo łatwiej będzie Ci opanować materiał i pracować efektywniej.

Praktyczne przykłady

Uczysz się na praktycznych przykładach. Kurs, który masz przed sobą to esencja praktycznej wiedzy i doświadczenia a także wzorów, które oszczędzą Ci godziny pracy i poszukiwań.

Pytania i odpowiedzi

Przeczytaj najczęściej zadawane pytania

Masz więcej pytań?

Porozmawiaj z nami na na czacie

Wyślij nam e-mail

Zadzwoń +48 880880606

Czy każdy kurs ma pliki źródłowe?

Nie każdy. Jeśli pliki są dostępne dla danego kursu, znajdziesz je w zakładce źródła. Niektóre kursy nie posiadają źródeł ponieważ nie są potrzebne, inne nie mogły być zamieszczone np. ze względu na prawa autorskie do wykorzystania komercyjnych prac naszych autorów. Staramy się aby kursy były maksymalnie praktyczne i chętnie pokazujemy zaplecze zawodowe naszych autorów, ale niekiedy nie możemy dołączyć go w postaci źródeł.

Jak jest skonstruowany kurs?

Kurs składa się z rozdziałów oraz lekcji. Staramy się, aby optymalnie kursy miały 5-7 rozdziałów po około 5-10 lekcji w każdym. W ten sposób nauka jest optymalna a podtrzymanie uwagi staje się łatwiejsze. Rekomendujemy przerabianie nie więcej niż jednego rozdziału naraz a po jego przerobieniu powtórzenie materiału we własnym zakresie.

Jak najlepiej wykorzystać kurs?

Potraktuj kurs jako inspirację do własnej pracy. Tam, gdzie się da staraj się powtarzać czynności, które wykonuje autor. Nie powtarzaj ich jednak bezmyślnie - spróbuj zmodyfikować przykłady i dostosować je do swoich potrzeb. W ten sposób przyswoisz materiał jeszcze lepiej!

Jak mogę uzyskać dostęp do kursu?

Możesz albo wykupić ten konkretny kurs przez koszyk, uzyskując do niego (i jego rewizji) bezterminowy dostęp, albo wykupić wariant abonamentu, który obejmuje dany kurs i w ten sposób oglądać go oraz inne materiały na platformie tak długo, jak Twój abonament jest aktywny.

Czy kurs jest aktualny?

Staramy się aby wszystkie materiały na stronie były aktualne. Nie znaczy to, że kurs powstał bardzo niedawno. Często na stronie znajdziesz trochę starsze kursy, jednak regularnie wykonujemy ich rewizję i zmieniamy lekcje - czy to przez dodanie stosownych komentarzy z aktualizacją, czy poprzez nagranie danej lekcji jeszcze raz. Datę ostatniej rewizji znajdziesz w informacjach o kursie.

Czym się różni kurs od warsztatu i ścieżki?

Kursy to kilku godzinne, kompleksowe opracowanie danego zagadnienia, podzielone na lekcje i rozdziały. Często uzupełniają je Warsztaty, które mają formę jednej dłuższej, praktycznej lekcji (30min-1h), natomiast ścieżki stanowią zbiór jednych i drugich materiałów - ułożoną z kursów i warsztatów playlistę, która pozwala Ci kompleksowo opanować dane zagadnienie.

We frontendzie nie można stać w miejscu, niezależnie od tego, czy jest się początkującym, czy zaawansowanym. Narzędzia i techniki się zmieniają, więc trzeba cały czas trzymać rękę na pulsie. Jako twórca kursów i programista mogę spokojnie polecić eduweb.pl jako aktualne i dobre źródło wiedzy.

Adam Romański

helloroman.com

Zacznij naukę w Program JavaScript

  • 189 lekcji wideo

  • 5h 20min materiału

  • Ostatnia rewizja 16.09.2022

  • Certyfikat w ramach ścieżek

  • Dostęp z urządzeń mobilnych