Czym są moduły?
Część sekcji Programowanie obiektowe ścieżki JavaScript w Coddy. Lekcja 7 z 56.
Gdy Twój kod JavaScript staje się duży i złożony, trudno jest zarządzać wszystkim w jednym pliku. Rozwiązaniem są moduły: podzielenie kodu na osobne, uporządkowane pliki.
Moduł to plik JavaScript zawierający powiązany kod. Każdy moduł wykonuje jedno określone zadanie, dzięki czemu aplikacja jest łatwiejsza do zrozumienia i utrzymania.
Moduł JavaScript to zwykły plik .js, który może eksportować kod (zmienne, funkcje, klasy), aby inne pliki mogły go importować i używać.
Przykład:
Jeden nieuporządkowany plik:
// plik: messy-app.js
let user = "John";
let score = 0;
function login() {
console.log("Welcome " + user);
}
function addPoints(points) {
score += points;
}Dwa pliki uporządkowane za pomocą modułów:
// plik: user-module.js
let user = "John";
function login() {
console.log("Welcome " + user);
}
// plik: game-module.js
let score = 0;
function addPoints(points) {
score += points;
}user-module.js – Obsługuje uwierzytelnianie użytkowników i dane z nimi związane, a także zawiera funkcjonalność związaną z nazwą użytkownika i logowaniem.
game-module.js – Zarządza punktacją w grze i systemem punktów, śledzi wynik oraz obsługuje obliczanie punktów.
Wyzwanie
ŁatwyMasz już połączone dwa moduły: user-module.js i game-module.js.
Twoim zadaniem jest wywołać funkcję addPoints z wartością 10 w pliku user-module.js.
Oczekiwany wynik:
Score increased! Current score: 10
Spróbuj swoich sił
import { addPoints } from './game-module.js';
let user = "John";
// TODO: Wywołaj funkcję addPoints z wartością 10
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Programowanie obiektowe
1Obiekty i słowo kluczowe this
Szybka powtórka: obiektyDodawanie metod do obiektówZrozumienie słowa kluczowego thisFunkcje konstruktoraSłowo kluczowe newWyzwanie podsumowujące7Dziedziczenie i słowo kluczowe extends
DziedziczenieRelacja „jest rodzajem”Słowo kluczowe extendsMetoda super()Dziedziczenie właściwości i metodWyzwanie podsumowujące10Polimorfizm
Czym jest polimorfizm?Nadpisywanie odziedziczonych metodUżywanie superWyzwanie podsumowujące13Kompozycja a dziedziczenie
Relacja „ma” a relacja „jest”Ograniczenia głębokiego dziedziczeniaTworzenie obiektów2Organizowanie kodu
Czym są moduły?Eksportowanie za pomocą exportImportowanie za pomocą importEksporty domyślne a nazwane5Enkapsulacja i dostęp
EnkapsulacjaPubliczne i prywatne pola klasyMetody prywatneWyzwanie podsumowujące8Organizowanie kodu OOP
Organizowanie klas w moduły11Projekt: Renderer kształtów
Konfiguracja: klasa Shape i eksportDziedziczenie klasy CircleNadpisywanie i metoda obliczania polaStatyczny licznik kształtów14System zarządzania biblioteką
Projektowanie bibliotekiKlasa Book z kompozycjąWalidacja autora książki9Metody i właściwości statyczne
Poziom klasy a poziom instancjiWłaściwości statyczneStatyczne metody pomocniczeWyzwanie podsumowującePoćwicz samodzielnie: Kompilator JavaScript online