Javascript. Wzorce
معرفی کتاب «Javascript. Wzorce» نوشتهٔ Stoyan Stefanov، منتشرشده توسط نشر Helion در سال 2012. این کتاب در فرمت pdf، زبان pl ارائه شده است. «Javascript. Wzorce» در دستهٔ بدون دستهبندی قرار دارد.
Twórz lepszy kod JavaScript! Jakie jest najlepsze podejście do tworzenia aplikacji w języku JavaScript? Z tą książką, zawierającą najlepsze praktyki i wiele wzorców kodowania, znajdziesz odpowiedź na to pytanie. Jeśli jesteś doświadczonym programistą szukającym sposobów rozwiązania problemów związanych z obiektami, funkcjami, dziedziczeniem i innymi aspektami języka, przedstawione tu abstrakcje i szablony sprawdzą się idealnie. Książka napisana przez eksperta języka JavaScript Stoyana Stefanova - starszego inżyniera Yahoo! i architekta narzędzia do optymalizacji stron WWW YSlow 2.0 - zawiera wiele praktycznych wskazówek w zakresie implementacji opisywanych wzorców, a także kilka całościowych przykładów. Znajdziesz w niej również opis wielu antywzorców, czyli podejść, które tak naprawdę powodują więcej problemów, niż są tego warte. Dowiedz się, jak: tworzyć łatwy w utrzymaniu kod wybierać właściwe nazwy dla zmiennych, metod i funkcji wykorzystać klasyczne wzorce programowania skorzystać ze wzorców specyficznych dla środowiska przeglądarki internetowej Poznaj tajniki tworzenia łatwego w utrzymaniu kodu źródłowego! Spis treści Wstęp 1. Wprowadzenie Wzorce JavaScript — podstawowe cechy Zorientowany obiektowo Brak klas Prototypy Środowisko ECMAScript 5 Narzędzie JSLint Konsola 2. Podstawy Tworzenie kodu łatwego w konserwacji Minimalizacja liczby zmiennych globalnych Problem ze zmiennymi globalnymi Efekty uboczne pominięcia var Dostęp do obiektu globalnego Wzorzec pojedynczego var Przenoszenie deklaracji — problem rozrzuconych deklaracji var Pętle for Pętle for-in Modyfikacja wbudowanych prototypów Wzorzec konstrukcji switch Unikanie niejawnego rzutowania Unikanie eval() Konwertowanie liczb funkcją parseInt() Konwencje dotyczące kodu Wcięcia Nawiasy klamrowe Położenie nawiasu otwierającego Białe spacje Konwencje nazewnictwa Konstruktory pisane od wielkiej litery Oddzielanie wyrazów Inne wzorce nazewnictwa Pisanie komentarzy Pisanie dokumentacji interfejsów programistycznych Przykład dokumentacji YUIDoc Pisanie w sposób ułatwiający czytanie Ocenianie kodu przez innych członków zespołu Minifikowanie kodu tylko w systemie produkcyjnym Uruchamiaj narzędzie JSLint Podsumowanie 3. Literały i konstruktory Literał obiektu Składnia literału obiektowego Obiekty z konstruktora Pułapka konstruktora Object Własne funkcje konstruujące Wartość zwracana przez konstruktor Wzorce wymuszania użycia new Konwencja nazewnictwa Użycie that Samowywołujący się konstruktor Literał tablicy Składnia literału tablicy Pułapka konstruktora Array Sprawdzanie, czy obiekt jest tablicą JSON Korzystanie z formatu JSON Literał wyrażenia regularnego Składnia literałowego wyrażenia regularnego Otoczki typów prostych Obiekty błędów Podsumowanie Informacje ogólne 4. Funkcje Informacje ogólne Stosowana terminologia Deklaracje kontra wyrażenia — nazwy i przenoszenie na początek Właściwość name funkcji Przenoszenie deklaracji funkcji Wzorzec wywołania zwrotnego Przykład wywołania zwrotnego Wywołania zwrotne a zakres zmiennych Funkcje obsługi zdarzeń asynchronicznych Funkcje czasowe Wywołania zwrotne w bibliotekach Zwracanie funkcji Samodefiniujące się funkcje Funkcje natychmiastowe Parametry funkcji natychmiastowych Wartości zwracane przez funkcje natychmiastowe Zalety i zastosowanie Natychmiastowa inicjalizacja obiektu Usuwanie warunkowych wersji kodu Właściwości funkcji — wzorzec zapamiętywania Obiekty konfiguracyjne Rozwijanie funkcji Aplikacja funkcji Aplikacja częściowa Rozwijanie funkcji Kiedy używać aplikacji częściowej Podsumowanie 5. Wzorce tworzenia obiektów Wzorzec przestrzeni nazw Funkcja przestrzeni nazw ogólnego stosowania Deklarowanie zależności Metody i właściwości prywatne Składowe prywatne Metody uprzywilejowane Problemy z prywatnością Literały obiektów a prywatność Prototypy a prywatność Udostępnianie funkcji prywatnych jako metod publicznych Wzorzec modułu Odkrywczy wzorzec modułu Moduły, które tworzą konstruktory Import zmiennych globalnych do modułu Wzorzec piaskownicy Globalny konstruktor Dodawanie modułów Implementacja konstruktora Składowe statyczne Publiczne składowe statyczne Prywatne składowe statyczne Stałe obiektów Wzorzec łańcucha wywołań Wady i zalety wzorca łańcucha wywołań Metoda method() Podsumowanie 6. Wzorce wielokrotnego użycia kodu Klasyczne i nowoczesne wzorce dziedziczenia Oczekiwane wyniki w przypadku stosowania wzorca klasycznego Pierwszy wzorzec klasyczny — wzorzec domyślny Podążanie wzdłuż łańcucha prototypów Wady wzorca numer jeden Drugi wzorzec klasyczny — pożyczanie konstruktora Łańcuch prototypów Dziedziczenie wielobazowe przy użyciu pożyczania konstruktorów Zalety i wady wzorca pożyczania konstruktora Trzeci wzorzec klasyczny — pożyczanie i ustawianie prototypu Czwarty wzorzec klasyczny — współdzielenie prototypu Piąty wzorzec klasyczny — konstruktor tymczasowy Zapamiętywanie klasy nadrzędnej Czyszczenie referencji na konstruktor Podejście klasowe Dziedziczenie prototypowe Dyskusja Dodatki do standardu ECMAScript 5 Dziedziczenie przez kopiowanie właściwości Wzorzec wmieszania Pożyczanie metod Przykład — pożyczenie metody od obiektu Array Pożyczenie i przypisanie Metoda Function.prototype.bind() Podsumowanie 7. Wzorce projektowe Singleton Użycie słowa kluczowego new Instancja we właściwości statycznej Instancja w domknięciu Fabryka Wbudowane fabryki obiektów Iterator Dekorator Sposób użycia Implementacja Implementacja wykorzystująca listę Strategia Przykład walidacji danych Fasada Pośrednik Przykład Pośrednik jako pamięć podręczna Mediator Przykład mediatora Obserwator Pierwszy przykład — subskrypcja magazynu Drugi przykład — gra w naciskanie klawiszy Podsumowanie 8. DOM i wzorce dotyczące przeglądarek Podział zadań Skrypty wykorzystujące DOM Dostęp do DOM Modyfikacja DOM Zdarzenia Obsługa zdarzeń Delegacja zdarzeń Długo działające skrypty Funkcja setTimeout() Skrypty obliczeniowe Komunikacja z serwerem Obiekt XMLHttpRequest JSONP Ramki i wywołania jako obrazy Serwowanie kodu JavaScript klientom Łączenie skryptów Minifikacja i kompresja Nagłówek Expires Wykorzystanie CDN Strategie wczytywania skryptów Lokalizacja elementu Wysyłanie pliku HTML fragmentami Dynamiczne elementy zapewniające nieblokujące pobieranie Wczytywanie leniwe Wczytywanie na żądanie Wstępne wczytywanie kodu JavaScript Podsumowanie Skorowidz
دانلود کتاب Javascript. Wzorce