Die Module in diesem Themenkomplex beschäftigen sich nicht primär mit einzelnen Sprachfeatures von JavaScript/TypeScript, sondern mit der Frage: Wie verwende ich die Features dieser Sprachen um Programmcode zu schreiben, der möglichst wenige Fehler hat und leicht zu verstehen, zu ändern und zu erweitern ist. Die Module in diesem Abschnitt beschränken sich dabei hauptsächlich auf relativ “lokale” Programmbestandteile wie einzelne Funktionen und Klassen.
Natürlich gehen wir auch in den Modulen, die die entsprechenden Sprachkonstrukte einführen darauf ein, wie man sie gut verwendet; die Module in diesem Abschnitt vertiefen die Techniken weiter und gehen auch auf Aspekte ein, für die in einem typischen JavaScript/TypeScript Grund- oder Aufbaukurs keine Zeit bleibt.
Agiles Programmieren: Agile Techniken helfen “Technical Debt” gering zu halten und die Software so flexibel zu halten, dass der Einbau neuer Features über die gesamte Lebensdauer des Projekts möglich bleibt.
Folgende Schwerpunkte beinhaltet das Modul: Clean Code / Clean Unit Test in JavaScript
- Coding-Guidelines in JavaScript/TypeScript
- Tools zur Verbesserung der Code-Qualität
- Clean Code: Namen, Kommentare, Funktionen
- Testen mit Jasmine/Jest und Mocha
- Refactoring Patterns und Refactoring in JavaScript
- Test-first Development Techniken
- Test Driven Development (TDD)
- Behavior Driven Development (BDD)
- Ausführbare Spezifikationen (Cucumber.js)