Leanpub Header

Skip to main content

Jetzt werde ich Web-Entwickler!

Protokolle, HTML, CSS, JavaScript, TypeScript, Node, Express, Angular, React, Redux, ngrx, Rx

Dieses Buch beschreibt umfassend die Grundlagen des Webs: Protokolle, HTML, CSS, JavaScript, TypeScript und die vielen Werkzeuge einschließlich NodeJS sowie Angular, React und Redux. Dies ist die Basis für alle Anwendungen und unabhängig von Plattform und Umgebung.

Minimum price

$15.00

$29.90

You pay

$29.90

Author earns

$23.92
$

...Or Buy With Credits!

You can get credits monthly with a Reader Membership
PDF
EPUB
WEB
628
Pages
92,728Words
About

About

About the Book

Dieses Buch beschreibt umfassend die Grundlagen des Webs:

  • Protokolle
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • Viele Werkzeuge einschließlich NodeJS
  • Für die Server-Programmierung: Express und Pug
  • Einführung in wichtige Bibliotheken: Angular, React und Redux
  • Programmierung wichtiger Server-Dienste

Dies ist die Basis für alle Anwendungen und unabhängig von Plattform und Umgebung.

Share this book

Categories

Author

About the Author

Jörg Krause

I like to introduce myself as an experienced expert in the field of Web Technologies, especially for JavaScript/TypeScript, NodeJS, Azure Development, SQL Server, and related subjects.

I'm a developer, consultant, trainer, and software architect. I work as a freelance consultant for enterprises and run a few amazing projects on my own, such as a very smart Web Component framework and helpers for cloud-native architectures.

Contents

Table of Contents

Grundlagen der Web-Programmierung

  1. Zielgruppe
  2. Was du haben solltest
  3. Umgang mit dem Text
  4. Schreibweisen
  5. Symbole
  6. Tipp
  7. Information
  8. Warnung
  9. Hinweis
  10. Spielen und Testen
  11. https://justrun.it
  12. Über den Autor
  13. Elektronische Version

WE2018e01

1.Protokolle und Standards

  1. 1.1Standardisierung mit RFCs
  2. 1.2Das OSI-Referenzmodell
  3. 1.3Die Internet-Protokollfamilie
  4. 1.3.1Address Resolution Protocol (ARP)
  5. 1.3.2Internet Control Messaging Protocol (ICMP)
  6. 1.3.3Internet Protocol (IP)
  7. Keine Fehlerkorrektur
  8. IPv6 vs IPv4
  9. 1.3.4Transmission Control Protocol (TCP)
  10. 1.3.5User Datagram Protocol (UDP)
  11. 1.3.6Session Initiation Protocol (SIP)
  12. 1.4Die Hochsprachenprotokolle
  13. 1.4.1File Transfer Protocol (FTP)
  14. 1.4.2Network News Transfer Protocol (NNTP)
  15. 1.4.3Simple Mail Transfer Protocol (SMTP) / Extended SMTP (ESMTP)
  16. 1.4.4Hypertext Transfer Protocol (HTTP)
  17. Methode oder Verb?
  18. 1.4.5HTTP 2.0
  19. 1.4.6Ergänzende Standards
  20. 1.5REST
  21. Webdienst
  22. 1.5.1Merkmale
  23. 1.5.2Beispiel
  24. 1.5.3URI
  25. 1.5.4HTTP-Methoden für REST
  26. 1.5.5MIME
  27. 1.5.6JSON
  28. 1.5.7Das Format ATOM
  29. Atom in Webseiten
  30. 1.5.8Grenzen von REST
  31. 1.6GraphQL
  32. 1.6.1Implementierungen
  33. 1.6.2Abfragen

2.HTML – Hypertext Markup Language

  1. 2.1Grundlagen HTML
  2. 2.1.1Geschichte
  3. 2.2XML – Grundlage für HTML
  4. 2.2.1Markup
  5. 2.2.2XML-Dokumente
  6. 2.2.3Verarbeitung
  7. 2.2.4Der Begriff “Markup”
  8. 2.3Seitenaufbau
  9. DOM
  10. 2.4Elemente der Seite
  11. 2.4.1Textelemente
  12. 2.4.2Fließtextauszeichnung
  13. 2.4.3Verweise
  14. 2.4.4Tabellen
  15. 2.4.5Multimedia und Grafiken
  16. 2.4.6Formulare
  17. 2.4.7Skripte
  18. 2.4.8Interaktive Elemente
  19. 2.5Allgemeine und universelle Attribute
  20. 2.5.1id
  21. 2.5.2class
  22. Missbrauch von class
  23. 2.5.3accesskey
  24. 2.5.4contenteditable
  25. 2.5.5contextmenu
  26. Unterstützung
  27. 2.5.6dir
  28. 2.5.7draggable
  29. 2.5.8dropzone
  30. 2.5.9hidden
  31. Kein Schutz!
  32. 2.5.10lang
  33. 2.5.11spellcheck
  34. Rechtschreibprüfung
  35. 2.5.12style
  36. 2.5.13tabindex
  37. 2.5.14title
  38. Browserverhalten

3.Cascading Style Sheets (CSS)

  1. 3.1Grundlagen
  2. 3.2Syntax
  3. 3.3Selektor
  4. 3.3.1Elemente (Tags)
  5. 3.3.2ID
  6. 3.3.3Klassen
  7. 3.3.4Attribute
  8. 3.3.5Logische Auswahl
  9. 3.3.6Weitere Selektoren
  10. Browserunterstützung
  11. 3.4Das Box-Modell
  12. 3.4.1Bausteine der Box
  13. Zählweise
  14. Ausnahmen
  15. 3.4.2Das Box-Modell in CSS3
  16. 3.5Das Flexbox-Modell
  17. 3.5.1Prinzipien
  18. 3.5.2Eigenschaft der Container
  19. 3.6Beachtung von Medien
  20. 3.6.1Syntax
  21. Umgang mit Einheiten
  22. 3.6.2Parameter
  23. 3.7Der Viewport
  24. 3.7.1Viewport einstellen
  25. 3.7.2Viewport-Einstellungen
  26. 3.8Einheiten
  27. 3.8.1Absolute Einheiten
  28. Typografische Angaben
  29. Empfehlung
  30. 3.8.2Relative Einheiten
  31. Empfehlung

4.JavaScript

  1. 4.1Einführung
  2. 4.1.1Sprachmerkmale und Entwurfsmuster
  3. 4.1.2Vergleich mit Programmiersprachen
  4. 4.2JavaScript-Syntax
  5. 4.3Variablen und Scope
  6. var
  7. 4.3.1Scope – der Sichtbarkeitsbereich
  8. 4.3.2Das return-Schlüsselwort
  9. 4.3.3Kommentare
  10. 4.3.4Literale
  11. 4.3.5Umlaute
  12. 4.3.6Numerische und Boolesche Literale
  13. 4.3.7Sonstige Literale
  14. 4.3.8Operatoren
  15. 4.4Typen
  16. 4.4.1Automatische Typkonvertierung
  17. 4.4.2Number
  18. Integer
  19. 4.4.3Zeichenketten (String)
  20. UCS-2
  21. Veraltete Elemente
  22. 4.4.4Boolean
  23. 4.4.5Objekte
  24. Das Objekt-Literal {}
  25. 4.4.6Spezielle Typen
  26. 4.4.7Arrays
  27. Spezialfunktionen statt Klassen
  28. 4.5Operatoren
  29. 4.5.1Operatoren für Objekte
  30. 4.5.2Vergleichsoperatoren
  31. 4.6Anweisungen – Statements
  32. 4.6.1Kontrollstrukturen: if – else
  33. Blockklammern oder nicht
  34. 4.6.2Kontrollstrukturen: switch – else – default
  35. Umgang mit break
  36. 4.6.3Kontrollstrukturen: Schleifen
  37. foreach
  38. 4.6.4Fehlerbehandlung
  39. 4.7Umgang mit Objekten
  40. 4.7.1Erstellen von Objekten
  41. 4.7.2Deklaration mit new
  42. 4.7.3Deklaration mit der Literalnotation
  43. 4.7.4Die Konstruktorfunktion
  44. 4.7.5Methoden und Eigenschaften
  45. 4.7.6Vertiefung des Prototyping
  46. 4.7.7Objektvererbung
  47. 4.7.8Exkurs Objekthierarchie
  48. 4.7.9Vertiefung zu Bindungen
  49. 4.7.10Zusammenfassung
  50. 4.8Module
  51. 4.8.1Einfache Module
  52. 4.8.2Privater Funktions-Scope
  53. IIFE
  54. Stilvarianten
  55. 4.8.3Öffentliche Schnittstellen
  56. 4.8.4Instanzen von Modul-Objekten
  57. 4.8.5Globale Objekte
  58. 4.8.6Erweiterbare Module
  59. Reihenfolgen sichern
  60. 4.8.7Namensräume
  61. 4.8.8Zusammenfassung
  62. 4.9Globale Standardfunktionen
  63. 4.9.1Timerfunktionen
  64. 4.9.2Prüffunktionen
  65. 4.10ES2015 / ECMAScript 6
  66. 4.10.1Pfeilfunktionen (Lambdas)
  67. 4.10.2Klassen
  68. 4.10.3Erweiterte Objektliterale
  69. 4.10.4Vorlagenzeichenfolgen
  70. 4.10.5Destrukturierung
  71. 4.10.6Standardargumente
  72. 4.10.7Argument-Arrays
  73. 4.10.8Variablen mit let und const
  74. 4.10.9Schleifen mit for..of
  75. 4.10.10Unicode
  76. 4.10.11Module
  77. 4.10.12Stellvertreter: Proxies
  78. Fehlende Unterstützung
  79. 4.10.13Symbole
  80. Fehlende Unterstützung
  81. 4.10.14Ableiten von internen Typen
  82. 4.10.15Promise
  83. 4.10.16Reflektions-API
  84. 4.11Tipps und Tricks
  85. 4.11.1Strikt-Mode use strict
  86. 4.11.2Allgemeine Tipps
  87. 4.11.3Spezielle Tipps
  88. 4.12Suchmuster
  89. 4.12.1Einführung in reguläre Ausdrücke
  90. Die Testumgebung
  91. REPL
  92. Website
  93. Das Muster
  94. Zeilenumbrüche
  95. 4.12.2Metazeichen
  96. Vorsicht mit Referenzen
  97. LookAhead und LookBehind
  98. 4.12.3Die JavaScript-Funktionen
  99. Die Option g
  100. Umgang mit Literalen
  101. 4.12.4Das Glob-Pattern

5.TypeScript

  1. 5.1Vorbemerkungen
  2. 5.2Variablen und Konstanten
  3. 5.2.1Scope – der Sichtbarkeitsbereich
  4. 5.2.2Konstanten
  5. 5.3TypeScript-Syntax
  6. 5.3.1Kommentare
  7. 5.3.2Literale
  8. 5.3.3Umlaute
  9. alert
  10. 5.3.4Numerische Literale
  11. 5.3.5Sonstige Literale
  12. 5.3.6Operatoren
  13. 5.4Das Typsystem
  14. 5.4.1Die Basistypen
  15. Typen und Typdefinitionen
  16. 5.4.2Symbole
  17. 5.5Anweisungen – Statements
  18. 5.5.1Kontrollstrukturen
  19. 5.5.2Fehlerbehandlung
  20. 5.6Schnittstellen
  21. Duck Typing
  22. 5.6.1Implizite Implementierung
  23. Das Objekt-Literal
  24. 5.6.2Explizite Implementierung
  25. Strukturelles Typsystem
  26. 5.6.3Optionale Eigenschaften
  27. 5.6.4Schnittstellen erweitern
  28. 5.6.5Funktionstypen
  29. 5.6.6Union-Typen
  30. 5.6.7Array-Typen
  31. Dictionary (Wörterbuch)
  32. 5.6.8Hybride Schnittstellen
  33. 5.7Klassen
  34. 5.7.1Vererbung
  35. 5.7.2Schutz von Mitgliedern
  36. 5.7.3Eigenschaften
  37. 5.7.4Implementierung von Schnittstellen
  38. 5.7.5Statische Klassen
  39. 5.7.6Statische Eigenschaften
  40. 5.7.7Konstruktoren
  41. 5.7.8Schnittstellen aus Klassen
  42. 5.8Module
  43. 5.8.1Module erstellen
  44. 5.8.2Module über Dateigrenzen
  45. ///-Direktiven
  46. 5.8.3Externe Module
  47. 5.8.4Optionales Laden von Modulen
  48. 5.8.5Standard-Export
  49. 5.8.6Werte-Export
  50. 5.8.7Typische Probleme mit Modulen
  51. 5.9Typings
  52. 5.9.1Fertige ambiente Bibliotheken
  53. 5.9.2Der TypeScript Definition Manager
  54. Typings
  55. 5.9.3Typ-Deklarationsdateien via npm

6.Dynamische Webseiten

  1. 6.1Dynamische Webseiten entstehen
  2. 6.2Vorgehensweise
  3. 6.2.1Herunterladen
  4. 6.2.2Installation und Konfiguration
  5. 6.2.3Initialisieren der Node-Applikation
  6. ‘npm start’ versus ‘node server.js’
  7. 6.2.4Die erste Applikation
  8. 6.2.5Pakete
  9. DRY
  10. Versionen
  11. 6.2.6Eine Serverapplikation erstellen
  12. Mehr zu Express
  13. Port
  14. 6.2.7Dynamisches HTML
  15. 6.2.8HTML-Dateien senden
  16. UTF-8
  17. 6.2.9Beschränkung der HTTP-Methoden
  18. 6.2.10Umgang mit Formulardaten
  19. POST und MIME
  20. Dokumentation
  21. 6.2.11Verarbeiten des Querystring
  22. 6.3Die erste Applikation
  23. Bad Request
  24. POST und Querystring
  25. Server- versus Client-Upload
  26. 6.3.1Zusammenfassung
  27. 6.4Optimierung
  28. 6.4.1Werkzeuge
  29. 6.4.2Serverseitige Optimierung
  30. 6.4.3Allgemeines und Banales
  31. ETag
  32. 6.4.4Clientseitige Optimierung
  33. 6.5Authentifizierung
  34. 6.5.1Federation
  35. 6.5.2OAuth
  36. 6.5.3Autorisierung
  37. 6.6Framework-Bausteine

7.Die Entwicklungsumgebung

  1. DRY
  2. 7.1Einsatz
  3. 7.1.1Paketverwaltung mit npm oder yarn
  4. 7.1.2Build-Automation mit Gulp
  5. 7.2Testen
  6. 7.2.1Testen mit Jasmine und Karma
  7. 7.2.2Eine Beispiel-Applikation mit Tests
  8. 7.3Optimierung
  9. 7.3.1Anwendungen mit WebPack verpacken
  10. 7.3.2Entwicklungsunterstützung
  11. 7.3.3Loader für CSS
  12. FOUC
  13. 7.3.4HTML
  14. 7.3.5Denken in Modulen
  15. 7.4ECMSScript 2015 und Neuer
  16. 7.4.1Babel
  17. 7.4.2Installation
  18. 7.4.3Babel nutzen

8.Die Serverumgebung

  1. 8.1Node
  2. 8.1.1Globale Module
  3. Echtzeit
  4. 8.1.2Globale Objekte
  5. 8.2HTTP und HTTPS
  6. 8.2.1Grundlagen
  7. 8.2.2Felder
  8. 8.2.3Methoden
  9. 8.2.4HTTP-Klassen
  10. Content-Length
  11. 8.2.5Klasse http.ClientRequest
  12. 8.2.6HTTPS
  13. 8.3Dateien und Pfaden
  14. 8.3.1Zugriff auf das Dateisystem
  15. Synchron oder Asynchron
  16. 8.3.2Funktionen für den Dateizugriff
  17. Plattformabhängigkeit
  18. Vorsicht bei Testfunktionen
  19. 8.3.3Funktionen zum Umgang mit Streams
  20. Streams
  21. 8.4Express
  22. 8.4.1Installation
  23. 8.4.2Applikationsstruktur
  24. LESS oder SASS
  25. Windows
  26. Nur zum Start
  27. 8.4.3Routing in Node-Applikationen
  28. RESTful
  29. API
  30. 8.4.4Eine Beispielapplikation
  31. Middleware
  32. Vereinfachung der Beispiele
  33. Infrastruktur nutzen!
  34. Wo ist das HTML?
  35. 8.5Pug
  36. Editor einrichten
  37. 8.5.1Vorbereitung
  38. Installationsanleitung
  39. 8.5.2Installationsanleitung
  40. 8.5.3Applikationsstruktur

9.JQuery

  1. 9.1Einführung
  2. 9.1.1Einsatzmöglichkeiten
  3. 9.2jQuery einbinden
  4. CDN (Content Delivery Network)
  5. 9.3jQuery nutzen
  6. 9.3.1Auswählen von Elementen
  7. 9.3.2Ändern von Inhalten
  8. 9.3.3HTML-Klassen hinzufügen und entfernen
  9. 9.3.4Effekte
  10. 9.4AJAX mit jQuery
  11. AJAX
  12. 9.5Zusammenfassung

10.Angular

  1. 10.1Einführung
  2. 10.1.1Einführung in Angular
  3. 10.1.2Die Programmiersprache
  4. 10.1.3Ein triviales Beispiel
  5. 10.2Direktiven und Komponenten
  6. 10.2.1Direktiven
  7. 10.2.2Komponenten
  8. 10.2.3Das *-Symbol in Angular
  9. 10.2.4Attribut-Direktive
  10. 10.2.5Benutzen von Komponenten und Direktiven
  11. 10.2.6Schleifen mit *ngFor
  12. 10.2.7Pipes
  13. 10.2.8Dienste
  14. 10.2.9HTTP in Angular
  15. 10.2.10Lebendauer der Komponenten
  16. 10.3Architektur einer Angular-Anwendung
  17. 10.3.1Bestandteile der Anwendung
  18. 10.3.2Benennungsregeln
  19. 10.3.3Komponenten
  20. Groß- oder Kleinschreibung?
  21. 10.4Routing – Der Weg zur SPA
  22. SPA
  23. 10.4.1Konfiguration
  24. Routen
  25. 10.4.2Definition
  26. 10.4.3Nutzung
  27. 10.5Rx – Die Reactive Extensions
  28. 10.5.1Geschichte
  29. 10.5.2Observables
  30. Lambda
  31. 10.6Zusammenfassung

11.React

  1. 11.1Merkmale
  2. 11.1.1Tipps
  3. 11.1.2Das virtuelle DOM
  4. 11.2Erste Schritte
  5. 11.2.1Professionelle Einrichtung mit npm
  6. 11.2.2Testserver einrichten
  7. 11.3Dienste
  8. 11.4Komponenten erstellen
  9. 11.4.1Dynamische Inhalte
  10. 11.4.2Lebensdauer
  11. 11.4.3Status
  12. 11.4.4Ereignisse
  13. 11.5Listen und Tabellen
  14. 11.5.1Einfache Listen
  15. 11.5.2Listen mit Schlüsselwerten
  16. 11.6Wiederverwendbare Komponenten
  17. 11.6.1Einfache Komponenten
  18. 11.6.2Erweiterte Komponenten
  19. 11.7Formulare
  20. 11.7.1Standard-Elemente
  21. 11.7.2Textarea
  22. 11.7.3Listenelemente
  23. 11.7.4Komplexe Formulare
  24. 11.7.5Validierung
  25. 11.8React und TypeScript
  26. 11.8.1Einrichten
  27. 11.8.2Projektstruktur
  28. 11.8.3Komponenten in TypeScript
  29. 11.9Routing – Der Weg zur SPA
  30. SPA
  31. 11.9.1Konfiguration
  32. Routen
  33. 11.10Dienste
  34. 11.11Bereitstellung
  35. 11.11.1Vorbereitung
  36. 11.11.2Konfiguration
  37. 11.12Zusammenfassung

12.Flux

  1. 12.1Einführung
  2. 12.1.1Ein Zustandsbaum
  3. 12.1.2Der Ereignisfluss
  4. 12.1.3Der Zustandsfluss
  5. 12.2Redux mit React
  6. 12.2.1Actions
  7. 12.2.2Reducer
  8. 12.3@ngrx/store mit Angular
  9. 12.3.1Einführung
  10. 12.3.2Einsatz
  11. 12.3.3Reducer
  12. 12.3.4Server-Dienste nutzen
  13. 12.3.5Effekte
  14. 12.3.6Einsatz von NGRX
  15. 12.3.7Zusammenfassung

13.Das programmierbare Web

  1. “Performance is a Feature”
  2. 13.1Cloud-Dienste
  3. 13.1.1Fragmente einer Applikationsumgebung
  4. 13.1.2Amazon S3 – Simple Storage Service
  5. 13.1.3CloudFront
  6. 13.2Container mit Docker
  7. 13.2.1Begriffe
  8. 13.2.2Container Infrastruktur
  9. 13.2.3Docker nutzen
  10. 13.3Freie Dienste
  11. 13.3.1Wie man eine API anprogrammiert
  12. 13.4Architektur
  13. 13.4.1Aspekte der Architektur
  14. 13.4.2Techniken
  15. 13.4.3Vergleich der Architekturen
  16. 13.4.4Microservices im Frontend

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned over $14 million writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub