Der umfassende Überblick zur Fullstack-WebentwicklungDieses Handbuch zur Fullstack-Webentwicklung hilft Ihnen, in der Flut aus Sprachen, Technologien und Tools der Webentwicklung den Kopf über Wasser zu halten. Sie erfahren, welche Sprache für die jeweilige Aufgabe die richtige ist, und verstehen die Zusammenhänge zwischen den Technologien. Von HTML, CSS, JavaScript und PHP bis zu Webprotokollen, Webarchitektur, Deployment u. v. m. So gibt Ihnen dieses neue Standardwerk einen umfassenden Überblick über alle relevanten Themen des Webs, vermittelt Ihnen fundiertes Fachwissen über den gesamten Technologiestack und macht Sie zum mythischen Einhorn unter den Webentwicklern.Grundlagen, Anforderungen, Best PracticesHTML, CSS, JavaScript, PHP, Web-APIs, WebarchitekturenWebservices, Datenbanken, DevOps, Testing, Deployment und Hosting Aus dem Inhalt:Web-Protokolle und Web-Formate verwendenWebseiten erstellen mit HTML, CSS und JavaScriptWeb Architekturen: MVC, MVP, MVVM, SOA, Microservices, MicrofrontendsProgrammiersprachen und Web-Frameworks einsetzenWebservices implementieren: REST und GraphQLDatenbanken beherrschen: SQL und NoSQLAuthentifizierungsmechanismen verstehenWebprojekte organisieren und verwaltenProjektmanagement und Tools
Webservices, Datenbanken, DevOps, Testing, Deployment und Hosting
Autorentext
Philip Ackermann ist CTO der Cedalo GmbH und Autor mehrerer Fachbücher und Fachartikel über Java und JavaScript. Seine Schwerpunkte liegen in der Konzeption und Entwicklung von Node.js- und JEE-Projekten in den Bereichen Industrie 4.0 und Internet of Things.
Inhalt
Materialien zum Buch ... 21
Geleitwort ... 23
Vorwort ... 25
1. Die Grundlagen verstehen ... 29
1.1 ... Begrifflichkeiten ... 29
1.2 ... Aufbau von Webapplikationen ... 33
1.3 ... Fullstack-Entwicklung ... 37
1.4 ... Tools für Fullstack-Entwickler ... 45
1.5 ... Zusammenfassung und Ausblick ... 52
2. Webseiten strukturieren mit HTML ... 55
2.1 ... Einführung ... 55
2.2 ... Die wichtigsten Elemente verwenden ... 60
2.3 ... Zusammenfassung und Ausblick ... 83
3. Webseiten gestalten mit CSS ... 85
3.1 ... Einführung ... 86
3.2 ... Farben und Textformatierungen anwenden ... 98
3.3 ... Listen und Tabellen ... 111
3.4 ... Die verschiedenen Layoutsysteme verstehen ... 122
3.5 ... Zusammenfassung und Ausblick ... 140
4. Webseiten interaktiv machen mit JavaScript ... 145
4.1 ... Einführung ... 146
4.2 ... Variablen, Konstanten, Datentypen und Operatoren ... 153
4.3 ... Kontrollstrukturen verwenden ... 157
4.4 ... Funktionen und Fehlerbehandlung ... 161
4.5 ... Objekte und Arrays ... 165
4.6 ... Zusammenfassung und Ausblick ... 168
5. Webprotokolle verwenden ... 171
5.1 ... Hypertext Transfer Protocol ... 171
5.2 ... Bidirektionale Kommunikation ... 189
5.3 ... Zusammenfassung und Ausblick ... 193
6. Webformate verwenden ... 195
6.1 ... Datenformate ... 196
6.2 ... Bildformate ... 207
6.3 ... Video- und Audioformate ... 215
6.4 ... Zusammenfassung und Ausblick ... 219
7. Web-APIs verwenden ... 221
7.1 ... Webseiten dynamisch ändern mit der DOM API ... 222
7.2 ... Daten asynchron laden mit Ajax und der Fetch API ... 233
7.3 ... Weitere Web-APIs ... 240
7.4 ... Zusammenfassung und Ausblick ... 244
8. Webseiten für Barrierefreiheit optimieren ... 247
8.1 ... Einführung ... 247
8.2 ... Bestandteile einer Webseite barrierefrei machen ... 254
8.3 ... Testen von Barrierefreiheit ... 274
8.4 ... Zusammenfassung und Ausblick ... 278
9. CSS vereinfachen mit CSS-Präprozessoren ... 281
9.1 ... Einführung ... 282
9.2 ... Sass verwenden ... 285
9.3 ... Zusammenfassung und Ausblick ... 307
10. Single-Page-Applikationen implementieren ... 309
10.1 ... Einführung ... 309
10.2 ... Setup ... 312
10.3 ... Komponenten -- die Bausteine einer React-Applikation ... 316
10.4 ... Styling von Komponenten ... 321
10.5 ... Komponentenhierarchien ... 327
10.6 ... Formulare ... 331
10.7 ... Die Kontext-API ... 335
10.8 ... Routing ... 339
10.9 ... Zusammenfassung und Ausblick ... 342
11. Mobile Anwendungen implementieren ... 345
11.1 ... Die unterschiedlichen Arten mobiler Anwendungen ... 345
11.2 ... Responsive Design ... 353
11.3 ... Cross Platform Development mit React Native ... 367
11.4 ... Zusammenfassung und Ausblick ... 379
12. Webarchitekturen verstehen und einsetzen ... 381
12.1 ... Schichtenarchitekturen ... 382
12.2 ... Monolithen und verteilte Architekturen ... 389
12.3 ... MV*-Architekturen ... 398
12.4 ... Zusammenfassung und Ausblick ... 403
13. Programmiersprachen auf der Serverseite verwenden ... 407
13.1 ... Arten von Programmiersprachen ... 408
13.2 ... Programmierparadigmen ... 412
13.3 ... Welche Programmiersprachen gibt es? ... 420
13.4 ... Zusammenfassung und Ausblick ... 432
14. JavaScript auf der Serverseite verwenden ... 435
14.1 ... JavaScript unter Node.js ... 436
14.2 ... Die eingebauten Module verwenden ... 447
14.3 ... Einen Webserver implementieren ... 452
14.4 ... Zusammenfassung und Ausblick ... 462
15. Die Sprache PHP verwenden ... 465
15.1 ... Einführung in die Sprache PHP ... 465
15.2 ... PHP und Webserver lokal installieren ... 466
15.3 ... Variablen, Datentypen und Operatoren ... 467
15.4 ... Kontrollstrukturen verwenden ... 476
15.5 ... Funktionen und Fehlerbehandlung ... 480
15.6 ... Klassen und Objekte verwenden ... 486
15.7 ... Dynamische Webseiten mit PHP entwickeln ... 491
15.8 ... Zusammenfassung und Ausblick ... 503
16. Webservices implementieren ... 505
16.1 ... Einführung ... 505
16.2 ... SOAP ... 507
16.3 ... REST ... 513
16.4 ... GraphQL ... 533
16.5 ... Zusammenfassung und Ausblick ... 537
17. Daten in Datenbanken speichern ... 541
17.1 ... Relationale Datenbanken ... 542
17.2 ... Nicht relationale Datenbanken ... 565
17.3 ... Zusammenfassung und Ausblick ... 572
18. Webanwendungen testen ... 575
18.1 ... Automatisierte Tests ... 576
18.2 ... Testabdeckung ... 586
18.3 ... Test-Doubles ... 589
18.4 ... Zusammenfassung und Ausblick ... 594
19. Webanwendungen deployen und hosten ... 597
19.1 ... Einführung ... 597
19.2 ... Container Management ... 608
19.3 ... Zusammenfassung und Ausblick ... 620
20. Webanwendungen absichern ... 623
20.1 ... Sicherheitslücken ... 624
20.2 ... Verschlüsselung und Kryptografie ... 633
20.3 ... SOP, CSP und CORS ... 637
20.4 ... Authentifizierung ... 647
20.5 ... Zusammenfassung und Ausblick ... 651
21. Die Performance von Webanwendungen optimieren ... 655
21.1 ... Einführung ... 656
21.2 ... Möglichkeiten der Optimierung ... 665
21.3 ... Zusammenfassung und Ausblick ... 684
22. Webprojekte organisieren und verwalten ... 687
<…
Webservices, Datenbanken, DevOps, Testing, Deployment und Hosting
Autorentext
Philip Ackermann ist CTO der Cedalo GmbH und Autor mehrerer Fachbücher und Fachartikel über Java und JavaScript. Seine Schwerpunkte liegen in der Konzeption und Entwicklung von Node.js- und JEE-Projekten in den Bereichen Industrie 4.0 und Internet of Things.
Inhalt
Materialien zum Buch ... 21
Geleitwort ... 23
Vorwort ... 25
1. Die Grundlagen verstehen ... 29
1.1 ... Begrifflichkeiten ... 29
1.2 ... Aufbau von Webapplikationen ... 33
1.3 ... Fullstack-Entwicklung ... 37
1.4 ... Tools für Fullstack-Entwickler ... 45
1.5 ... Zusammenfassung und Ausblick ... 52
2. Webseiten strukturieren mit HTML ... 55
2.1 ... Einführung ... 55
2.2 ... Die wichtigsten Elemente verwenden ... 60
2.3 ... Zusammenfassung und Ausblick ... 83
3. Webseiten gestalten mit CSS ... 85
3.1 ... Einführung ... 86
3.2 ... Farben und Textformatierungen anwenden ... 98
3.3 ... Listen und Tabellen ... 111
3.4 ... Die verschiedenen Layoutsysteme verstehen ... 122
3.5 ... Zusammenfassung und Ausblick ... 140
4. Webseiten interaktiv machen mit JavaScript ... 145
4.1 ... Einführung ... 146
4.2 ... Variablen, Konstanten, Datentypen und Operatoren ... 153
4.3 ... Kontrollstrukturen verwenden ... 157
4.4 ... Funktionen und Fehlerbehandlung ... 161
4.5 ... Objekte und Arrays ... 165
4.6 ... Zusammenfassung und Ausblick ... 168
5. Webprotokolle verwenden ... 171
5.1 ... Hypertext Transfer Protocol ... 171
5.2 ... Bidirektionale Kommunikation ... 189
5.3 ... Zusammenfassung und Ausblick ... 193
6. Webformate verwenden ... 195
6.1 ... Datenformate ... 196
6.2 ... Bildformate ... 207
6.3 ... Video- und Audioformate ... 215
6.4 ... Zusammenfassung und Ausblick ... 219
7. Web-APIs verwenden ... 221
7.1 ... Webseiten dynamisch ändern mit der DOM API ... 222
7.2 ... Daten asynchron laden mit Ajax und der Fetch API ... 233
7.3 ... Weitere Web-APIs ... 240
7.4 ... Zusammenfassung und Ausblick ... 244
8. Webseiten für Barrierefreiheit optimieren ... 247
8.1 ... Einführung ... 247
8.2 ... Bestandteile einer Webseite barrierefrei machen ... 254
8.3 ... Testen von Barrierefreiheit ... 274
8.4 ... Zusammenfassung und Ausblick ... 278
9. CSS vereinfachen mit CSS-Präprozessoren ... 281
9.1 ... Einführung ... 282
9.2 ... Sass verwenden ... 285
9.3 ... Zusammenfassung und Ausblick ... 307
10. Single-Page-Applikationen implementieren ... 309
10.1 ... Einführung ... 309
10.2 ... Setup ... 312
10.3 ... Komponenten -- die Bausteine einer React-Applikation ... 316
10.4 ... Styling von Komponenten ... 321
10.5 ... Komponentenhierarchien ... 327
10.6 ... Formulare ... 331
10.7 ... Die Kontext-API ... 335
10.8 ... Routing ... 339
10.9 ... Zusammenfassung und Ausblick ... 342
11. Mobile Anwendungen implementieren ... 345
11.1 ... Die unterschiedlichen Arten mobiler Anwendungen ... 345
11.2 ... Responsive Design ... 353
11.3 ... Cross Platform Development mit React Native ... 367
11.4 ... Zusammenfassung und Ausblick ... 379
12. Webarchitekturen verstehen und einsetzen ... 381
12.1 ... Schichtenarchitekturen ... 382
12.2 ... Monolithen und verteilte Architekturen ... 389
12.3 ... MV*-Architekturen ... 398
12.4 ... Zusammenfassung und Ausblick ... 403
13. Programmiersprachen auf der Serverseite verwenden ... 407
13.1 ... Arten von Programmiersprachen ... 408
13.2 ... Programmierparadigmen ... 412
13.3 ... Welche Programmiersprachen gibt es? ... 420
13.4 ... Zusammenfassung und Ausblick ... 432
14. JavaScript auf der Serverseite verwenden ... 435
14.1 ... JavaScript unter Node.js ... 436
14.2 ... Die eingebauten Module verwenden ... 447
14.3 ... Einen Webserver implementieren ... 452
14.4 ... Zusammenfassung und Ausblick ... 462
15. Die Sprache PHP verwenden ... 465
15.1 ... Einführung in die Sprache PHP ... 465
15.2 ... PHP und Webserver lokal installieren ... 466
15.3 ... Variablen, Datentypen und Operatoren ... 467
15.4 ... Kontrollstrukturen verwenden ... 476
15.5 ... Funktionen und Fehlerbehandlung ... 480
15.6 ... Klassen und Objekte verwenden ... 486
15.7 ... Dynamische Webseiten mit PHP entwickeln ... 491
15.8 ... Zusammenfassung und Ausblick ... 503
16. Webservices implementieren ... 505
16.1 ... Einführung ... 505
16.2 ... SOAP ... 507
16.3 ... REST ... 513
16.4 ... GraphQL ... 533
16.5 ... Zusammenfassung und Ausblick ... 537
17. Daten in Datenbanken speichern ... 541
17.1 ... Relationale Datenbanken ... 542
17.2 ... Nicht relationale Datenbanken ... 565
17.3 ... Zusammenfassung und Ausblick ... 572
18. Webanwendungen testen ... 575
18.1 ... Automatisierte Tests ... 576
18.2 ... Testabdeckung ... 586
18.3 ... Test-Doubles ... 589
18.4 ... Zusammenfassung und Ausblick ... 594
19. Webanwendungen deployen und hosten ... 597
19.1 ... Einführung ... 597
19.2 ... Container Management ... 608
19.3 ... Zusammenfassung und Ausblick ... 620
20. Webanwendungen absichern ... 623
20.1 ... Sicherheitslücken ... 624
20.2 ... Verschlüsselung und Kryptografie ... 633
20.3 ... SOP, CSP und CORS ... 637
20.4 ... Authentifizierung ... 647
20.5 ... Zusammenfassung und Ausblick ... 651
21. Die Performance von Webanwendungen optimieren ... 655
21.1 ... Einführung ... 656
21.2 ... Möglichkeiten der Optimierung ... 665
21.3 ... Zusammenfassung und Ausblick ... 684
22. Webprojekte organisieren und verwalten ... 687
<…
Titel
Fullstack-Entwicklung
Untertitel
Das Handbuch für Webentwickler
Autor
EAN
9783836290869
Format
E-Book (epub)
Hersteller
Veröffentlichung
05.04.2023
Digitaler Kopierschutz
frei
Dateigrösse
48 MB
Anzahl Seiten
807
Lesemotiv
Unerwartete Verzögerung
Ups, ein Fehler ist aufgetreten. Bitte versuchen Sie es später noch einmal.