Buch, Deutsch, 648 Seiten, Format (B × H): 172 mm x 246 mm, Gewicht: 1343 g
Reihe: Rheinwerk Computing
Design, Patterns und Praxistipps für Enterprise-fähigen Code
Buch, Deutsch, 648 Seiten, Format (B × H): 172 mm x 246 mm, Gewicht: 1343 g
Reihe: Rheinwerk Computing
ISBN: 978-3-8362-5687-2
Verlag: Rheinwerk Verlag GmbH
Aus dem Inhalt:
- Aktuelle Sprachkenntnisse aufbauen
- Design-Patterns nach JavaScript-Art
- Architekturmuster einsetzen
- Klassen emulieren
- Funktionale Sprachmittel einsetzen
- Dos und Don'ts für guten Code
- Funktional-reaktive Programmierung
- Package-Management
- Den Build-Prozess optimieren
- Dokumentation und Deployment
- Continuous Integration
- Unit Tests und Test Driven Design
- Aspektorientierte Programmierung
- Messaging
- Frameworks auswählen
Autoren/Hrsg.
Fachgebiete
Weitere Infos & Material
Geleitwort. 15
Vorwort. 17
Materialien zum Buch. 20
1. Einführung. 21
1.1. Einleitung. 21
1.2. Entstehung und Historie. 22
1.3. Einsatzgebiete von JavaScript. 24
1.4. Laufzeitumgebungen. 27
1.5. Entwicklungsumgebungen. 30
1.6. Debugging-Tools. 35
1.7. Einführung in die Sprache. 40
1.8. Zusammenfassung und Ausblick. 65
2. Funktionen und funktionale Aspekte. 67
2.1. Die Besonderheiten von Funktionen in JavaScript. 67
2.2. Standardmethoden jeder Funktion. 87
2.3. Einführung in die funktionale Programmierung. 92
2.4. Von der imperativen Programmierung zur funktionalen Programmierung. 94
2.5. Funktionale Techniken und Entwurfsmuster. 101
2.6. Funktionale reaktive Programmierung. 127
2.7. Zusammenfassung und Ausblick. 137
3. Objektorientierte Programmierung mit JavaScript. 141
3.1. Objekte. 141
3.2. Prototypen. 154
3.3. Vererbung. 158
3.4. Datenkapselung. 189
3.5. Emulieren von statischen Eigenschaften und statischen Methoden. 196
3.6. Emulieren von Interfaces. 199
3.7. Emulieren von Namespaces. 202
3.8. Emulieren von Modulen. 204
3.9. Modulsyntax. 212
3.10. Zusammenfassung und Ausblick. 215
4. ECMAScript 2015 und neuere Versionen. 219
4.1. Einführung. 219
4.2. Block-Scope und Konstanten. 221
4.3. Striktere Trennung zwischen Funktionen und Methoden. 229
4.4. Flexiblerer Umgang mit Funktionsparametern. 234
4.5. Mehrfachzuweisungen über Destructuring. 243
4.6. Iteratoren und Generatoren. 252
4.7. Promises. 258
4.8. Proxies. 260
4.9. Collections. 265
4.10. Neue Methoden der Standardobjekte. 269
4.11. Sonstiges neue Features. 279
4.12. Zusammenfassung und Ausblick. 283
5. Der Entwicklungsprozess. 285
5.1. Einleitung. 285
5.2. Node.js und NPM. 287
5.3. Styleguides und Code Conventions. 289
5.4. Codequalität. 295
5.5. Dokumentation. 302
5.6. Konkatenation, Minification und Obfuscation. 310
5.7. Package Management und Module Bundling. 318
5.8. Building. 332
5.9. Scaffolding. 341
5.10. Zusammenfassung und Ausblick. 348
6. JavaScript-Anwendungen testen. 351
6.1. Testgetriebene Entwicklung. 351
6.2. Test-Doubles. 375
6.3. Testabdeckung. 390
6.4. DOM-Tests. 396
6.5. Funktionstests. 399
6.6. Zusammenfassung und Ausblick. 406
7. Fortgeschrittene Konzepte der objektorientierten Programmierung. 409
7.1. SOLID. 409
7.2. Fluent APIs. 426
7.3. Aspektorientierte Programmierung in JavaScript. 443
7.4. Zusammenfassung und Ausblick. 458
8. Die Entwurfsmuster der Gang of Four. 459
8.1. Einführung. 459
8.2. Erzeugungsmuster. 460
8.3. Strukturmuster. 476
8.4. Verhaltensmuster. 499
8.5. Zusammenfassung und Ausblick. 544
9. Architekturmuster und Konzepte moderner JavaScript-Webframeworks. 549
9.1. Model View Controller. 550
9.2. Model View Presenter. 551
9.3. MVC und MVP in Webanwendungen. 551
9.4. Model View ViewModel. 558
9.5. Komponentenbasierte Architektur. 566
9.6. Routing. 576
9.7. Zusammenfassung und Ausblick. 578
10. Messaging. 581
10.1. Einführung. 581
10.2. AMQP. 583
10.3. AMQP unter JavaScript. 587
10.4. MQTT. 598
10.5. MQTT unter JavaScript. 602
10.6. Zusammenfassung und Ausblick. 607
11. Continuous Integration. 611
11.1. Vorbereitungen. 612
11.2. Jenkins. 619
11.3. Alternativen: Travis CI und CircleCI. 638
11.4. Zusammenfassung und Ausblick. 640
Index. 641