JavaScript od podstaw

Ta książka zacznie Twoją przygodę z programowaniem. Prezentuje wiedzę w praktyczny, przystępny i zrozumiały sposób. Pomaga zbudować solidne podwaliny pod naukę języka JavaScript oraz wytyczyć dalszy kierunek. Jeśli chcesz nauczyć się programowania albo zastanawia Cię czym ono jest, to jest to książka dla Ciebie.

Razem z tą książką wejdziesz krok po kroku do świata języka JavaScript. Pokaże Ci, że programowanie to świetna zabawa, a przy tym znacznie bardziej przydatna i dostępna umiejętność niż może się wydawać.

Dla kogo jest ta książka?

To jest książka dla każdego, kto chce nauczyć się programowania. Zamierzam obalić stereotypy i udowodnić, że zarówno 53-letnia nauczycielka, 42-letni taksówkarz, jak i 12-letnie uczeń są w stanie z niej skorzystać. Zakładam wyłącznie doświadczenie w korzystaniu z komputera i internetu, a resztę postaram się wyjaśnić.

To nie jest książka dla osób, które już potrafią programować w innym języku. Tłumaczy wszystko od zupełnych podstaw. Nie powinna być traktowana jako podręcznik akademicki. Używane słownictwo uprościłem, a pojęcia zdefiniowałem w sposób nieformalny. Oczywiście, starałem się zachować maksimum poprawności, ale przede wszystkim podstawiłem na zrozumiałość i praktyczność.

O książce

Książka podzielona jest na cztery części:

  1. To co najważniejsze w JavaScript — gdzie zaczynamy naszą przygodę z programowaniem i poznajemy najistotniejsze funkcjonalności tego języka.
  2. Głębsze wody - gdzie wyjdziemy poza podstawy i zaczniemy omawiać bardziej zaawansowane funkcjonalności języka.
  3. Napiszmy razem grę - gdzie wykorzystamy zdobyte umiejętności do napisania gry.
  4. O programowaniu - gdzie pomówimy o wykorzystaniu tych umiejętności, o nauce programowania i o branży programistycznej.

Czego nauczysz się z tej książki?

Ta książka nie wystarczy by nauczyć się programowania. Nie wiem czy istnieje taka, która by wystarczyła. To tak jakbyśmy chcieli się z jednej książki nauczyć języka fińskiego od zupełnych podstaw. Jeśli jednak sumiennie przystąpisz do nauki z tej książki (przykładów, zadań), to skończysz z wiedzą wystarczającą by wykorzystywać JavaScript w prostych zastosowaniach.

Z tej książki dowiesz się:

  • czym są zmienne i wartości,
  • jak używać warunków i pętli,
  • jak działają funkcje,
  • jakie są najważniejsze elementy programowania obiektowego i funkcyjnego,
  • jak wykorzystać zdobytą wiedzę w praktyce,
  • jak kontynuować naukę.

Akcja "Podaj dalej"

Książce towarzyszy akcja społeczna "Podaj dalej". Więcej na ten temat akcji znajdziesz na stronie akcji.

Spis treści

  • Wstęp

Część 1: To, co najważniejsze w JavaScript

Pierwszy program

  • Przeglądarka
  • Używanie konsoli
  • Edytory Online
  • Komentarze
  • Instrukcje, średniki i białe znaki

Podstawowe wartości

  • Teksty, znane jako stringi
  • Liczby
  • Wartości logiczne: prawda i fałsz
  • Operator równości i nierówności
  • Operatory porównania dla liczb
  • Typy wartości

Zmienne

  • const i let
  • Nazywanie zmiennych
  • Przypisanie rozszerzające wartość zmiennej
  • Zmienne wskazują na wartości
  • Zmienne niezdefiniowane i wartość undefined
  • Wartość null

Warunki

  • Instrukcja warunkowa if
  • Wywołanie warunkowe z alternatywą if-else
  • If-else-if
  • Operator warunkowy

Wyrażenia logiczne

  • Operator i &&
  • Operator lub ||
  • Operator negacji !
  • Czytanie wyrażeń logicznych
  • Wartości falsy i truthy
  • Zwracanie wartości przez && i ||

Pętle

  • Pętla while
  • Pętla for

Funkcje

  • Wydzielanie części kodu
  • Jak działają funkcje?
  • Odnoszenie się do elementów spoza funkcji
  • Parametry i argumenty funkcji
  • Wynik funkcji
  • Funkcje matematyczne
  • Funkcje jako wartości

Część 2: Głębsze wody

Obiekty

  • Definicja obiektu
  • Obiekt jako właściwość
  • Modyfikowanie obiektów
  • Dodawanie właściwości
  • Brakujące właściwości
  • Format zapisu danych JSON

Elementy programowania obiektowego

  • Metody, czyli funkcje jako właściwości
  • Operator new
  • Klasy

Tablice

  • Tworzenie tablic
  • Dodawanie i wyciąganie elementów
  • Odnoszenie się do elementów tablicy
  • Iteracja po tablicy

  • Funkcja forEach
  • Funkcja map
  • Funkcja join
  • Inne metody tablicy warte poznania

Funkcje strzałkowe

  • Przydatność funkcji strzałkowych
  • Ograniczenia funkcji strzałkowych

Część 3: Napiszmy razem grę

Daj mi płótno, a namaluję świat

  • Płótno, czyli HTML canvas
  • Pierwszy rysunek
  • Paletka
  • Tekst
  • Piłeczka
  • Czyszczenie płótna
  • Stan oraz stałe

  • Stałe
  • Stan
  • Zmiana stanu

Przejmujemy sterowanie

  • Ruch paletki
  • Zatrzymanie paletki
  • Blokowanie na skrajach
  • Pauzowanie
  • Lot piłeczki

  • Piłeczka wraca na środek
  • Piłeczka odbija się od ścianek
  • Piłeczka odbija się od paletek

Porządkujemy naszą grę, wykorzystując podejście obiektowe

  • Piłeczka jako obiekt
  • Gracze i paletki jako obiekty
  • Pozycja paletki
  • Obiektowe rysowanie piłeczki i paletek
  • Użycie klas

Część 4: O programowaniu

Co można robić w JavaScript?

  • Tworzenie stron internetowych
  • Pisanie gier
  • Aplikacje na telefony i komputery
  • Pisanie botów
  • Skrypty w Google Docs, Google Sheets i Google Slides
  • Prezentacje
  • Aplikacje serwerowe
  • Wizualizacja danych
  • Uczenie maszynowe
  • Robotyka
  • Muzyka, efekty wizualne, sztuka
  • Hakowanie stron
  • Wiele więcej...

Jak nauczyć się programowania?

  • Kursy internetowe
  • Akademickie kursy internetowe
  • Nauka programowania na YouTube
  • Książki
  • Podcasty
  • Bootcampy i kursy na żywo
  • Mentoring

Gry w służbie programowania

Nauka programowania na telefonie

  • Kursy do nauki programowania na telefonie
  • Platformy do kursów dostępne na telefonie
  • Gry programistyczne na telefonie

Jak zostać programistą?

  • Geneza planu
  • Dla kogo jest ten plan?
  • Ile zajmuje przejście tej ścieżki?
  • Plan w 7 krokach

Przyszłość programowania

  • Liczba programistów jest duża
  • Liczba programistów szybko rośnie
  • Specjalizacja postępuje, czyli bycie programistą jak kiedyś inżynierem
  • Programowanie ułatwia wiele zawodów, może ułatwiać niemal każdy
  • Przyszłość programowania

Rozwiązania do ćwiczeń

Słowniczek

Marcin Moskała

Marcin Moskała

Marcin Moskala is a highly experienced developer and Kotlin instructor as the founder of Kt. Academy, an official JetBrains partner specializing in Kotlin training, Google Developers Expert, known for his significant contributions to the Kotlin community. Moskala is the author of several widely recognized books, including "Effective Kotlin," "Kotlin Coroutines," "Functional Kotlin," "Advanced Kotlin," "Kotlin Essentials," and "Android Development with Kotlin."

Beyond his literary achievements, Moskala is the author of the largest Medium publication dedicated to Kotlin. As a respected speaker, he has been invited to share his insights at numerous programming conferences, including events such as Droidcon and the prestigious Kotlin Conf, the premier conference dedicated to the Kotlin programming language.

Chapters available as articles

Pierwszy program w JavaScript

Napiszemy pierwszy program, a także nauczymy się czym jest programowanie, jak przygotować środowisko, oraz jak korzystać z tych materiałów.

Wartości w JavaScript

Nauczymy się czym są i jakie są podstawowe wartości i typy w JavaScript. Sprawdzimy też, czy JavaScript może nam służyć jako kalkulator.

Zmienne w JavaScript

Dowiemy się czym są i jak działają zmienne, co różni const i let oraz jak je nazywać, skąd wziął się camelCase, a także czym są null i undefined.

Warunki w JavaScript

Dowiemy się jak działają warunki if, if-else oraz if-else-if, poznamy wyrażenia i operatory logiczne oraz sprawdzimy, co zrobił Jasio, aby pójść do kina.

Wyrażenia logiczne w JavaScript

Jak działają operatory i && oraz lub ||.

Pętle w JavaScript

Poznamy pętle while i for, jak również dowiemy się, jak zazwyczaj są one używane.

Funkcje w JavaScript

Poznamy najważniejszą funkcjonalność języka: funkcje. Dowiemy się czym są parametry i argumenty, a także jak przekazywać funkcje do funkcji.

Obiekty w JavaScript

Dowiemy się czym są obiekty i pola, jak je modyfikować oraz co się dzieje, gdy ich brak. Poznamy też format JSON.

Elementy programowania obiektowego w JavaScript

Dodamy naszym programom trochę klasy dzięki metodom, operatorowi new oraz przy użyciu samych klas.

Tablice w JavaScript

Dowiemy się czym są tablice, jak dodawać i wyciągać z nich wartości, a także jak sprawdzić ich wielkość.

Iteracja po tablicy w JavaScript

Nauczymy się iterować po tablicach i poznamy nowoczesne funkcje forEach, map oraz join.

Funkcje strzałkowe w JavaScript

Dowiemy się czym są oraz jak wykorzystywać popularne współcześnie funkcje strzałkowe.

Napiszmy grę w JavaScript: Daj mi płótno, a namaluję świat

Pisanie naszej gry zaczynamy od rysowania elementów: piłeczki, paletek i punktacji.

Napiszmy grę w JavaScript: Stan oraz stałe

Do naszej gry wprowadzamy pojęcia stanu oraz stałych.

Napiszmy grę w JavaScript: W odpowiedzi na Twoje kliknięcie

Uczymy się reagować na kliknięcia użytkownika.

Napiszmy grę w JavaScript: Lot kulki

Sprawiamy, aby piłeczka się odbijała i wracała na środek, oraz żeby punkty się dodawały. Gra staje się grywalna.

Napiszmy grę w JavaScript: Wprowadzamy podejście obiektowe

Porządkujemy grę poprzez użycie obiektów, a potem klas.

Co można robić w JavaScript?

Pisanie stron, botów, robotów... co jeszcze można zrobić przy użyciu JavaScript?

Jak nauczyć się programowania?

Jak można uczyć się programowania: kursy online, YouTube, bootcampy... pomówmy o nich po kolei.

Gry w służbie programowania

Gry, które wspomagają naukę programowania.

Nauka programowania na telefonie

Smartfon, jako świetne narzędzie do nauki programowania.

Jak zostać programistą?

Plan, jak krok po kroku nauczyć się programowania i zostać programistą.

Przyszłość programowania

Analiza stanu branży programistycznej i jaka w związku z tym czeka ją przyszłość.

Rozwiązania do zadań: JavaScript od podstaw

Zebrane rozwiązania do zadań ze wszystkich rozdziałów

Updates

Książka w przedsprzedaży na Allegro!

3 Sie 2021

Książkę już można kupić na Allegro. Zostanie wysłana 7 Sierpnia 2021.

Już jest!

3 Sie 2021

Wreszcie dotarła! Teraz wyślemy ją do hurtowni oraz wreszcie możemy zacząć dzielić się egzemplarzami typu "Podaj dalej".

Książka wysłana do druku

14 Lip 2021

Książka poszła do druku w Mazowieckim Centrum Poligrafii i liczymy na to, że już nie długo będziemy mogli ją odebrać i zacząć rozdawać.

Podcast Przeprogramowani

26 Cze 2021

Autor książki wystąpił w podcast Przeprogramowani. Rozmawiał między innymi o książce.