Zaawansowane wyszukiwanie
  Strona Główna » Sklep » Języki programowania » JavaScript » Moje Konto  |  Zawartość Koszyka  |  Do Kasy   
 Wybierz kategorię
Algorytmy Wzorce UML
Bazy danych
Bezpieczeństwo
Bioinformatyka
Biznes Ekonomia Firma
Chemia
DTP Design
E-biznes
Ekonometria
Elektronika Elektrotechnika
Energetyka
Fizyka
GIS
Grafika użytkowa
Hardware
Informatyczne systemy zarządzania
Informatyka w szkole
Języki programowania
  Ajax
  Asembler
  ASP ASP.NET
  C
  C#
  C++
  C++ Builder
  CGI Perl
  Chmura obliczeniowa
  CVS
  Delphi
  Eclipse
  Fortran
  Inne
  Java Hibernate GWT
  JavaScript
  JBuilder
  JSP JavaServlet
  PHP
  Programowanie mobilne
  Programowanie w Windows
  Prolog
  Python Django
  React
  Ruby Rails
  TypeScript
  Visual Studio
Matematyka
Multimedia
Obsługa komputera
Office
Poradniki
Programowanie gier
Programy inżynierskie
Programy matematyczne
Słowniki
Serwery
Sieci komputerowe
Systemy operacyjne
Technika
Telekomunikacja
Tworzenie stron WWW

Zobacz pełny katalog »
 Wydawnictwo:
 WNT
Inżynieria bezpieczeństwa technicznego Problematyka podstawowa

Inżynieria bezpieczeństwa technicznego Problematyka podstawowa

40.95zł
33.17zł
Tajemnice JavaScriptu Podręcznik ninja 69.00zł 51.75zł
Tajemnice JavaScriptu Podręcznik ninja

Tytuł: Tajemnice JavaScriptu Podręcznik ninja
Autor: John Resig, Bear Bibeault
ISBN: 978-83-246-8504-2
Ilość stron: 432
Data wydania: 05/2014
Oprawa: Miękka
Format: 168x237
Wydawnictwo: Helion
Cena: 69.00zł 51.75zł


Najlepsze porady dla programistów JavaScript!

JavaScript to język programowania, który wymaga od programisty szerokiej wiedzy i dokładności. Chwila nieuwagi może spowodować poważne problemy, trudne do wykrycia. Jak sobie radzić w tym wymagającym środowisku? Jak zwinnie poruszać się pomiędzy zastawionymi pułapkami?

Na te i wiele innych pytań znajdziesz odpowiedź w tej książce. Dzięki niej będziesz zwinnie jak ninja przemykał pomiędzy niuansami języka JavaScript. W trakcie lektury poznasz dogłębnie najlepszą broń przeciw błędom — debuger oraz testy automatyczne. W kolejnych rozdziałach nauczysz się korzystać z potencjału funkcji oraz domknięć.

W tej doskonałej książce znajdziesz również szerokie omówienie wyrażeń regularnych — tematu, który spędza programistom sen z oczu. Ponadto szczegółowo poznasz zasady programowania obiektowego w JavaScripcie, modyfikowania drzewa DOM, wsparcia dla różnych przeglądarek oraz obsługi zdarzeń. Książka ta zawiera praktyczne porady, które sprawdzą się w codziennej pracy z językiem JavaScript. Jest to obowiązkowa pozycja dla każdego programisty!

Dzięki tej książce:
- nauczysz się pisać testy automatyczne
- wykorzystasz wyrażenia regularne w JavaScripcie
- zmodyfikujesz drzewo DOM
- opanujesz niuanse języka JavaScript

Pisz kod JavaScript jak prawdziwy ninja!

Spis treści:

CZĘŚĆ I. PRZYGOTOWANIE DO TRENINGU (21)

Rozdział 1. Zostań wojownikiem (23)

  • 1.1. Omawiane biblioteki języka JavaScript (24)
  • 1.2. Język JavaScript (25)
  • 1.3. Kwestie dotyczące obsługi wielu przeglądarek (26)
  • 1.4. Najlepsze obecnie praktyki (30)
    • 1.4.1. Najlepsze obecnie praktyki - testowanie (30)
    • 1.4.2. Najlepsze obecnie praktyki - analizowanie wydajności (31)
  • 1.5. Podsumowanie (32)

Rozdział 2. Broń w postaci testowania i debugowania (33)

  • 2.1. Debugowanie kodu (34)
    • 2.1.1. Rejestrowanie (34)
    • 2.1.2. Punkty wstrzymania (36)
  • 2.2. Generowanie testu (38)
  • 2.3. Środowiska testowania (40)
    • 2.3.1. QUnit (43)
    • 2.3.2. YUI Test (43)
    • 2.3.3. JsUnit (43)
    • 2.3.4. Nowsze środowiska testów jednostkowych (43)
  • 2.4. Fundamenty pakietu testów (44)
    • 2.4.1. Asercja (44)
    • 2.4.2. Grupy testów (45)
    • 2.4.3. Testowanie asynchroniczne (47)
  • 2.5. Podsumowanie (49)

CZĘŚĆ II. TRENING UCZNIA (51)

Rozdział 3. Funkcje są najważniejsze (53)

  • 3.1. Na czym polega funkcyjność? (54)
    • 3.1.1. Dlaczego ważna jest funkcyjna natura języka JavaScript? (55)
    • 3.1.2. Sortowanie za pomocą komparatora (60)
  • 3.2. Deklaracje (63)
    • 3.2.1. Określanie zasięgu i funkcje (66)
  • 3.3. Wywołania (71)
    • 3.3.1. Od argumentów do parametrów funkcji (72)
    • 3.3.2. Wywołanie funkcji jako funkcji (73)
    • 3.3.3. Wywołanie funkcji jako metody (74)
    • 3.3.4. Wywołanie funkcji jako konstruktora (77)
    • 3.3.5. Wywołanie za pomocą metod apply() i call() (80)
  • 3.4. Podsumowanie (84)

Rozdział 4. Posługiwanie się funkcjami (87)

  • 4.1. Funkcje anonimowe (88)
  • 4.2. Rekurencja (90)
    • 4.2.1. Rekurencja w funkcjach z nazwą (90)
    • 4.2.2. Rekurencja z metodami (92)
    • 4.2.3. Problem z podkradanym odwołaniem (93)
    • 4.2.4. Wstawiane funkcje z nazwą (95)
    • 4.2.5. Właściwość callee (97)
  • 4.3. Używanie funkcji jako obiektów (98)
    • 4.3.1. Przechowywanie funkcji (99)
    • 4.3.2. Funkcje z automatycznym zapamiętywaniem (100)
    • 4.3.3. Oszukiwanie metod tablicowych (103)
  • 4.4. Listy argumentów o zmiennej długości (105)
    • 4.4.1. Użycie metody apply() do dostarczania zmiennej argumentów (105)
    • 4.4.2. Przeciążanie funkcji (107)
  • 4.5. Sprawdzanie pod kątem funkcji (116)
  • 4.6. Podsumowanie (118)

Rozdział 5. Zamknięcie się w domknięciach (119)

  • 5.1. Sposób działania domknięć (120)
  • 5.2. Praktyczne wykorzystanie domknięć (125)
    • 5.2.1. Zmienne prywatne (125)
    • 5.2.2. Wywołania zwrotne i liczniki czasu (127)
  • 5.3. Powiązanie kontekstów funkcji (131)
  • 5.4. Częściowe stosowanie funkcji (136)
  • 5.5. Przesłanianie działania funkcji (139)
    • 5.5.1. Zapamiętywanie (139)
    • 5.5.2. Opakowanie funkcji (142)
  • 5.6. Funkcje bezpośrednie (144)
    • 5.6.1. Zasięg tymczasowy i zmienne prywatne (146)
    • 5.6.2. Pętle (150)
    • 5.6.3. Opakowywanie biblioteki (152)
  • 5.7. Podsumowanie (153)

Rozdział 6. Obiektowość z prototypami (155)

  • 6.1. Tworzenie instancji i prototypy (156)
    • 6.1.1. Tworzenie instancji obiektu (156)
    • 6.1.2. Określanie typu obiektu za pośrednictwem konstruktorów (164)
    • 6.1.3. Dziedziczenie i łańcuch prototypów (166)
  • 6.2. Pułapki! (173)
    • 6.2.1. Rozszerzanie obiektu (173)
    • 6.2.2. Rozszerzanie liczby (175)
    • 6.2.3. Używanie podklas dla wbudowanych obiektów (177)
    • 6.2.4. Problemy z tworzeniem instancji (178)
  • 6.3. Pisanie kodu bardziej zbliżonego do kodu z klasami (183)
    • 6.3.1. Sprawdzanie pod kątem serializacji funkcji (186)
    • 6.3.2. Inicjalizacja podklas (187)
    • 6.3.3. Zachowywanie supermetod (188)
  • 6.4. Podsumowanie (190)

Rozdział 7. Borykanie się z wyrażeniami regularnymi (193)

  • 7.1. Dlaczego wyrażenia regularne są tak ważne? (194)
  • 7.2. Odświeżenie informacji o wyrażeniach regularnych (195)
    • 7.2.1. Omówienie wyrażeń regularnych (195)
    • 7.2.2. Wyrazy i operatory (197)
  • 7.3. Kompilowanie wyrażeń regularnych (201)
  • 7.4. Przechwytywanie pasujących segmentów (204)
    • 7.4.1. Wykonywanie prostych przechwytywań (204)
    • 7.4.2. Dopasowywanie za pomocą globalnych wyrażeń regularnych (205)
    • 7.4.3. Przywoływanie przechwytywań (207)
    • 7.4.4. Grupy bez przechwytywania (208)
  • 7.5. Zastępowanie za pomocą funkcji (209)
  • 7.6. Rozwiązywanie typowych problemów z wykorzystaniem wyrażeń regularnych (212)
    • 7.6.1. Obcinanie łańcucha (212)
    • 7.6.2. Dopasowywanie znaków nowego wiersza (214)
    • 7.6.3. Unicode (215)
    • 7.6.4. Znaki o zmienionym znaczeniu (216)
  • 7.7. Podsumowanie (217)

Rozdział 8. Wątki i liczniki czasu (219)

  • 8.1. Sposób działania liczników czasu i wątkowości (220)
    • 8.1.1. Ustawianie i usuwanie liczników czasu (220)
    • 8.1.2. Wykonywanie licznika czasu w obrębie wątku wykonywania (221)
    • 8.1.3. Różnice między czasami oczekiwania i interwałami (223)
  • 8.2. Minimalne opóźnienie licznika czasu i wiarygodność (225)
  • 8.3. Radzenie sobie z przetwarzaniem kosztownym obliczeniowo (228)
  • 8.4. Scentralizowane kontrolowanie liczników czasu (231)
  • 8.5. Testowanie asynchroniczne (235)
  • 8.6. Podsumowanie (236)

CZĘŚĆ III. TRENING WOJOWNIKA (237)

Rozdział 9. Alchemia wojownika. Analizowanie kodu w środowisku wykonawczym (239)

  • 9.1. Mechanizmy analizy kodu (240)
    • 9.1.1. Analizowanie za pomocą metody eval() (240)
    • 9.1.2. Analizowanie za pośrednictwem konstruktora Function (243)
    • 9.1.3. Analizowanie przy użyciu liczników czasu (244)
    • 9.1.4. Analizowanie w zasięgu globalnym (244)
    • 9.1.5. Bezpieczne analizowanie kodu (247)
  • 9.2. "Dekompilacja" funkcji (248)
  • 9.3. Analizowanie kodu w praktyce (251)
    • 9.3.1. Przekształcanie łańcuchów JSON (251)
    • 9.3.2. Importowanie kodu z przestrzenią nazw (253)
    • 9.3.3. Kompresja i ukrywanie kodu JavaScript (254)
    • 9.3.4. Dynamiczne przebudowywanie kodu (256)
    • 9.3.5. Znaczniki skryptu zorientowanego aspektowo (257)
  • 9.4. Podsumowanie (262)

Rozdział 10. Instrukcje with (263)

  • 10.1. O co chodzi z instrukcją with? (264)
    • 10.1.1. Przywoływanie właściwości w zasięgu instrukcji with (264)
    • 10.1.2. Przypisania w zasięgu instrukcji with (266)
    • 10.1.3. Kwestie dotyczące wydajności (268)
  • 10.2. Rzeczywiste przykłady (270)
  • 10.3. Importowanie kodu z przestrzenią nazw (272)
  • 10.4. Testowanie (272)
  • 10.5. Stosowanie szablonów z instrukcją with (273)
  • 10.6. Podsumowanie (276)

Rozdział 11. Opracowywanie strategii obsługi wielu przeglądarek (277)

  • 11.1. Wybór przeglądarek do obsługi (278)
  • 11.2. Pięć podstawowych kwestii programistycznych (279)
    • 11.2.1. Błędy i różnice w przeglądarkach (281)
    • 11.2.2. Poprawki błędów w przeglądarce (281)
    • 11.2.3. Radzenie sobie z zewnętrznym kodem i znacznikami (283)
    • 11.2.4. Brakujące funkcje (289)
    • 11.2.5. Regresje (290)
  • 11.3. Strategie implementowania (292)
    • 11.3.1. Bezpieczne poprawki dla różnych przeglądarek (292)
    • 11.3.2. Wykrywanie obiektu (294)
    • 11.3.3. Symulacja funkcji (295)
  • 11.4. Zmniejszanie liczby założeń (301)
  • 11.5. Podsumowanie (303)

Rozdział 12. Atrybuty, właściwości i arkusze stylów CSS (305)

  • 12.1. Atrybuty i właściwości modelu DOM (307)
    • 12.1.1. Nazewnictwo w różnych przeglądarkach (308)
    • 12.1.2. Ograniczenia dotyczące nazw (309)
    • 12.1.3. Różnice między językami XML i HTML (310)
    • 12.1.4. Działanie atrybutów niestandardowych (310)
    • 12.1.5. Kwestie dotyczące wydajności (311)
  • 12.2. Problemy z atrybutami w przypadku obsługi wielu przeglądarek (315)
    • 12.2.1. Rozszerzanie nazwy (identyfikatora) modelu DOM (315)
    • 12.2.2. Normalizacja adresu URL (317)
    • 12.2.3. Atrybut style (318)
    • 12.2.4. Atrybut type (319)
    • 12.2.5. Problem z indeksem tabulacji (320)
    • 12.2.6. Nazwy węzłów (321)
  • 12.3. Problemy związane z atrybutami stylów (321)
    • 12.3.1. Gdzie są moje style? (322)
    • 12.3.2. Określanie nazw właściwości stylów (324)
    • 12.3.3. Właściwość stylów float (326)
    • 12.3.4. Konwersja wartości pikseli (326)
    • 12.3.5. Określanie wysokości i szerokości (327)
    • 12.3.6. Przenikanie nieprzezroczystości (332)
    • 12.3.7. Poskromienie kolorowego koła (335)
  • 12.4. Uzyskiwanie stylów obliczanych (338)
  • 12.5. Podsumowanie (341)

CZĘŚĆ IV. TRENING MISTRZA (343)

Rozdział 13. Radzenie sobie ze zdarzeniami (345)

  • 13.1. Techniki wiązania zdarzeń i anulowania powiązań (346)
  • 13.2. Obiekt Event (351)
  • 13.3. Zarządzanie procedurami obsługi (355)
    • 13.3.1. Scentralizowane przechowywanie powiązanych informacji (355)
    • 13.3.2. Zarządzanie procedurami obsługi zdarzeń (358)
  • 13.4. Wyzwalanie zdarzeń (369)
    • 13.4.1. Zdarzenia niestandardowe (371)
  • 13.5. Propagacja i delegowanie (375)
    • 13.5.1. Delegowanie zdarzeń do elementu nadrzędnego (376)
    • 13.5.2. Radzenie sobie z mankamentami przeglądarek (377)
  • 13.6. Zdarzenie gotowości dokumentu (387)
  • 13.7. Podsumowanie (389)

Rozdział 14. Modyfikowanie modelu DOM (393)

    • 14.1.1. Przekształcanie kodu HTML w model DOM (396)
    • 14.1.2. Wstawianie do dokumentu (399)
    • 14.1.3. Wykonywanie skryptu (401)
  • 14.2. Klonowanie elementów (403)
  • 14.3. Usuwanie elementów (405)
  • 14.4. Treść tekstowa (407)
    • 14.4.1. Ustawianie tekstu (408)
    • 14.4.2. Pobieranie tekstu (409)
  • 14.5. Podsumowanie (410)

Rozdział 15. Mechanizmy selektorów CSS (411)

  • 15.1. Interfejs API selektorów organizacji W3C (413)
  • 15.2. Użycie języka XPath do znajdowania elementów (416)
  • 15.3. Implementacja czystego modelu DOM (418)
    • 15.3.1. Analizowanie selektora (421)
    • 15.3.2. Znajdowanie elementów (422)
    • 15.3.3. Filtrowanie zestawu (423)
    • 15.3.4. Rekurencja i scalanie (424)
    • 15.3.5. Wstępujący mechanizm selektorów (425)
  • 15.4. Podsumowanie (427)

Najniższa cena z 30 dni przed obniżką 51,75zł

Tajemnice JavaScriptu Podręcznik ninja
Tytuł książki: "Tajemnice JavaScriptu Podręcznik ninja"
Autor: John Resig, Bear Bibeault
Wydawnictwo: Helion
Cena: 69.00zł 51.75zł
Klienci, którzy kupili „Tajemnice JavaScriptu Podręcznik ninja”, kupili także:

CSS Witryny internetowe szyte na miarę. Autorytety informatyki Wydanie III, Charles Wyke-Smith, Wydawnictwo Helion

Apache 2 Leksykon kieszonkowy, Andrew Ford, Wydawnictwo Helion

ASP.NET Core 2 i Angular 5. Przewodnik dla Full-Stack Web Developera, Valerio De Sanctis, Wydawnictwo Helion

Spraw, by rzeczy przemówiły Programowanie urządzeń elektronicznych z wykorzystaniem Arduino, Tom Igoe, Wydawnictwo Helion

Nowe usługi 2.0. Przewodnik po analizie zbiorów danych, Toby Segaran, Wydawnictwo Helion

Arduino w akcji Poznaj możliwości platformy Arduino!, Martin Evans, Joshua Noble, Jordan Hochenbaum, Wydawnictwo Helion

czwartek, 28 marca 2024   Mapa strony |  Nowości |  Dzisiejsze promocje |  Koszty wysyłki |  Kontakt z nami