Facebook Pixel
Searching...
Deutsch
EnglishEnglish
EspañolSpanish
简体中文Chinese
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
Eloquent JavaScript

Eloquent JavaScript

A Modern Introduction to Programming
von Marijn Haverbeke 2011 224 Seiten
4.15
3k+ Bewertungen
Hören

Wichtige Erkenntnisse

1. JavaScript als flexible, dynamische Sprache verstehen

„Eine gute Programmiersprache ist mehr als nur ein Weg, um Anweisungen an einen Computer zu geben.“

Flexibilität der Sprache. JavaScript ist eine einzigartig flexible Programmiersprache, die es Entwicklern ermöglicht, Code in verschiedenen Paradigmen zu schreiben. Im Gegensatz zu starren Sprachen bietet JavaScript den Entwicklern umfangreiche Freiheiten, um Probleme kreativ zu lösen und sich an verschiedene Programmierstile und Ansätze anzupassen.

Wesentliche Merkmale der Sprache:

  • Dynamisch typisiert
  • Unterstützt funktionale und objektorientierte Programmierung
  • Ermöglicht Typkonvertierungen zur Laufzeit
  • Bietet leistungsstarke integrierte Datenstrukturen
  • Unterstützt Closures und First-Class-Funktionen

Evolutive Natur. JavaScript hat sich kontinuierlich weiterentwickelt, neue Funktionen eingeführt und historische Einschränkungen adressiert. Von seinen Anfängen als einfache Skriptsprache für Browser bis hin zu einer umfassenden Programmierumgebung zeigt JavaScript bemerkenswerte Anpassungsfähigkeit und Widerstandsfähigkeit in der sich schnell verändernden technologischen Landschaft.

2. Programmstruktur und Kontrollfluss meistern

„Wenn ein Programm wächst, wächst seine Komplexität exponentiell.“

Strukturierte Programmierung. Effektives Programmieren in JavaScript erfordert das Verständnis grundlegender Kontrollstrukturen wie Bedingungen, Schleifen und Funktionsdefinitionen. Diese Bausteine ermöglichen es Entwicklern, logischen, lesbaren und wartbaren Code zu erstellen, indem sie den Fluss der Programmausführung steuern.

Techniken des Kontrollflusses:

  • Bedingte Anweisungen (if/else)
  • Schleifen (for, while)
  • Funktionsbasierte Abstraktion
  • Fehlerbehandlungsmechanismen
  • Modulare Codeorganisation

Code-Lesbarkeit. Über die bloße Funktionalität hinaus betont guter JavaScript-Code Klarheit, Vorhersehbarkeit und Verständlichkeit. Durch die Implementierung durchdachter Kontrollflüsse und das Vermeiden unnötiger Komplexität können Entwickler robustere und verständlichere Programme erstellen.

3. Funktionale Programmiertechniken annehmen

„Funktionen sind die primäre Organisationseinheit in JavaScript.“

Funktionales Paradigma. JavaScript bietet umfassende Unterstützung für funktionale Programmierung, die es Entwicklern ermöglicht, deklarativeren, unveränderlichen und vorhersehbaren Code zu schreiben. Indem Funktionen als First-Class-Citizens behandelt werden, erlaubt JavaScript, komplexe Operationen prägnant und elegant auszudrücken.

Prinzipien der funktionalen Programmierung:

  • Höhere Funktionen
  • Reine Funktionen
  • Unveränderlichkeit
  • Funktionskomposition
  • Closure und lexikalische Scoping

Code-Transformation. Funktionale Techniken ermöglichen es Entwicklern, Daten effizient zu transformieren, modulareren Code zu erstellen und Nebeneffekte zu reduzieren. Dieser Ansatz führt zu wartbareren und testbareren Softwarelösungen.

4. Mächtige Datenstrukturen erstellen

„Objekte und Arrays bieten Möglichkeiten, mehrere Werte in einem einzigen Wert zu gruppieren.“

Datenorganisation. JavaScript bietet vielseitige Datenstrukturen, die es Entwicklern ermöglichen, komplexe Informationen effizient darzustellen. Objekte, Arrays und fortgeschrittene Datenmanipulationstechniken ermöglichen eine anspruchsvolle Datenmodellierung und -verarbeitung.

Fähigkeiten der Datenstrukturen:

  • Dynamische Objekterstellung
  • Verschachtelte Datenstrukturen
  • Prototyp-basierte Vererbung
  • Flexible Eigenschaftenmanipulation
  • Fortgeschrittene Array-Methoden

Praktische Anwendungen. Das Verständnis und die Nutzung der Datenstrukturen von JavaScript sind entscheidend für die Lösung realer Programmierherausforderungen, von einfacher Datenverfolgung bis hin zu komplexen algorithmischen Implementierungen.

5. Fortgeschrittene Programmierkonzepte implementieren

„Der Weg, große Programme zu schreiben, besteht darin, sie klein zu machen.“

Konzeptionelle Tiefe. JavaScript unterstützt fortgeschrittene Programmierkonzepte wie prototypale Vererbung, Closures und Metaprogrammierung. Diese Funktionen ermöglichen es Entwicklern, anspruchsvolle, flexible Softwarearchitekturen zu schaffen.

Techniken der fortgeschrittenen Programmierung:

  • Objektorientierte Programmierung
  • Prototypmanipulation
  • Metaprogrammierung
  • Dynamische Codegenerierung
  • Reflexion und Introspektion

Architektonische Flexibilität. Durch das Verständnis dieser fortgeschrittenen Konzepte können Entwickler elegantere, erweiterbare und leistungsstarke Softwarelösungen schaffen, die über die grundlegende prozedurale Programmierung hinausgehen.

6. Interaktive Webanwendungen erstellen

„Der zentrale Teil eines Computers ist der Prozessor, der einzelne Schritte in Programmen ausführt.“

Web-Interaktivität. JavaScript dient als primäre Sprache zur Erstellung dynamischer, reaktionsschneller Webanwendungen. Es ermöglicht komplexe Benutzerinteraktionen, Echtzeit-Updates und reichhaltige Benutzererlebnisse auf verschiedenen Plattformen.

Fähigkeiten der Webentwicklung:

  • DOM-Manipulation
  • Ereignisbehandlung
  • Asynchrone Programmierung
  • Client-seitiges Rendering
  • Browserübergreifende Kompatibilität

Benutzererfahrungsdesign. Moderne Webanwendungen sind stark auf JavaScript angewiesen, um nahtlose, ansprechende Schnittstellen zu schaffen, die sofort auf Benutzeraktionen reagieren.

7. Browsertechnologien und DOM-Manipulation erkunden

„Das Dokumentmodell des Browsers stellt dar, wie Webseiten strukturiert sind und dynamisch modifiziert werden können.“

Browser-Interaktion. JavaScript bietet leistungsstarke Werkzeuge zur Interaktion mit der Struktur von Webseiten über das Document Object Model (DOM), was dynamische Inhaltsmanipulation und komplexe Benutzeroberflächen ermöglicht.

Techniken der DOM-Manipulation:

  • Elementerstellung und -modifikation
  • Ereignisbehandlung
  • Stil- und Attributverwaltung
  • Dynamische Inhaltserzeugung
  • Browserübergreifende Kompatibilität

Integration in die Webplattform. Das Verständnis der DOM-Manipulation ist entscheidend für die Erstellung interaktiver, reaktionsschneller Webanwendungen, die sich in Echtzeit an Benutzerinteraktionen anpassen können.

8. Asynchrone Programmierung handhaben

„Asynchrone Programmierung ermöglicht es, das Warten auf lang laufende Aktionen auszudrücken, ohne das gesamte Programm einzufrieren.“

Nebenläufigkeitsmanagement. Das asynchrone Programmiermodell von JavaScript ermöglicht es Entwicklern, zeitaufwändige Operationen zu handhaben, ohne den Hauptausführungsstrang zu blockieren, was entscheidend für die Erstellung reaktionsschneller Anwendungen ist.

Muster der asynchronen Programmierung:

  • Promises
  • Async/Await-Syntax
  • Ereignisschleifen
  • Rückruffunktionen
  • Fehlerbehandlung in asynchronen Kontexten

Leistungsoptimierung. Das Beherrschen der asynchronen Programmierung ermöglicht es Entwicklern, effizientere, reaktionsschnellere Anwendungen zu erstellen, die komplexe, zeitaufwändige Operationen nahtlos bewältigen können.

9. Modulare und effiziente Codes entwickeln

„Module bieten Struktur für größere Programme, indem sie den Code in Teile mit klaren Schnittstellen und Abhängigkeiten aufteilen.“

Code-Organisation. Die Modulsysteme von JavaScript ermöglichen es Entwicklern, wartbarere, skalierbare Software zu erstellen, indem sie komplexe Programme in kleinere, handhabbare Teile mit klaren Verantwortlichkeiten aufteilen.

Prinzipien des modularen Designs:

  • ES6-Modulsyntax
  • Abhängigkeitsmanagement
  • Kapselung
  • Code-Wiederverwendbarkeit
  • Namensraumverwaltung

Softwarearchitektur. Effektive Modularisierung ist der Schlüssel zur Schaffung großangelegter, wartbarer Softwaresysteme, die sich im Laufe der Zeit weiterentwickeln können.

10. Domänenspezifische Sprachen und Interpreter erstellen

„Eine eigene Programmiersprache zu erstellen, ist überraschend einfach (solange man nicht zu hoch hinaus will).“

Sprachdesign. JavaScript bietet leistungsstarke Metaprogrammierungsfähigkeiten, die es Entwicklern ermöglichen, benutzerdefinierte Sprachen und Interpreter zu erstellen, die auf spezifische Problemdomänen zugeschnitten sind.

Techniken der Sprachimplementierung:

  • Parsing
  • Abstrakte Syntaxbäume
  • Evaluierungsstrategien
  • Scope-Management
  • Laufzeitauswertung

Rechnerische Kreativität. Durch das Verständnis der Prinzipien des Sprachdesigns können Entwickler spezialisierte Werkzeuge schaffen, die komplexe Probleme effektiver lösen als allgemeine Programmiersprachen.

Zuletzt aktualisiert:

Rezensionen

4.15 von 5
Durchschnitt von 3k+ Bewertungen von Goodreads und Amazon.

Eloquent JavaScript erhält gemischte Kritiken. Viele loben die umfassende Abdeckung und den fesselnden Stil, und halten es für ausgezeichnet geeignet für fortgeschrittene Programmierer. Die Meinungen über die Eignung für Anfänger hingegen gehen auseinander; einige empfinden es als zu komplex. Die Leser schätzen die kostenlose Online-Version und die interaktiven Übungen. Kritiker bemängeln inkonsistente Erklärungen, übermäßig komplexe Beispiele und gelegentlich verwirrende Didaktik. Der einzigartige Ansatz des Buches sowie die Behandlung fortgeschrittener Themen werden sowohl gelobt als auch kritisiert. Insgesamt gilt es als wertvolle Ressource für diejenigen, die ihr Wissen über JavaScript vertiefen möchten, könnte jedoch für absolute Anfänger weniger ideal sein.

Über den Autor

Marijn Haverbeke ist ein talentierter Programmierer und Autor, der für seine Arbeiten zu JavaScript bekannt ist. Er hat sich einen Namen gemacht, weil er komplexe Programmierkonzepte auf verständliche Weise erklärt. Haverbekes Schreibstil wird als leicht, prägnant und gelegentlich humorvoll beschrieben. Seine Expertise in JavaScript zeigt sich in seiner umfassenden Behandlung der Sprache, einschließlich fortgeschrittener Themen wie funktionale Programmierung und asynchrone Programmierung. Während einige Leser seine Erklärungen als herausfordernd empfinden, schätzen viele seinen einzigartigen Ansatz, Programmierung zu lehren. Haverbekes Engagement für Open Access wird deutlich, da er sein Buch kostenlos online zur Verfügung stellt, ergänzt durch interaktive Beispiele und Übungen. Sein Werk hat die JavaScript-Lerncommunity erheblich beeinflusst und ihm Respekt sowohl bei Anfängern als auch bei erfahrenen Programmierern eingebracht.

0:00
-0:00
1x
Dan
Andrew
Michelle
Lauren
Select Speed
1.0×
+
200 words per minute
Create a free account to unlock:
Requests: Request new book summaries
Bookmarks: Save your favorite books
History: Revisit books later
Ratings: Rate books & see your ratings
Unlock Unlimited Listening
🎧 Listen while you drive, walk, run errands, or do other activities
2.8x more books Listening Reading
Today: Get Instant Access
Listen to full summaries of 73,530 books. That's 12,000+ hours of audio!
Day 4: Trial Reminder
We'll send you a notification that your trial is ending soon.
Day 7: Your subscription begins
You'll be charged on Jan 25,
cancel anytime before.
Compare Features Free Pro
Read full text summaries
Summaries are free to read for everyone
Listen to summaries
12,000+ hours of audio
Unlimited Bookmarks
Free users are limited to 10
Unlimited History
Free users are limited to 10
What our users say
30,000+ readers
"...I can 10x the number of books I can read..."
"...exceptionally accurate, engaging, and beautifully presented..."
"...better than any amazon review when I'm making a book-buying decision..."
Save 62%
Yearly
$119.88 $44.99/year
$3.75/mo
Monthly
$9.99/mo
Try Free & Unlock
7 days free, then $44.99/year. Cancel anytime.
Settings
Appearance
Black Friday Sale 🎉
$20 off Lifetime Access
$79.99 $59.99
Upgrade Now →