Kofler / Öggl / Springer | Coding mit KI | E-Book | www.sack.de
E-Book

E-Book, Deutsch, 546 Seiten

Kofler / Öggl / Springer Coding mit KI

Das Praxisbuch für die Softwareentwicklung
2. Auflage 2026
ISBN: 978-3-367-11297-5
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection

Das Praxisbuch für die Softwareentwicklung

E-Book, Deutsch, 546 Seiten

ISBN: 978-3-367-11297-5
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection



Ihr Leitfaden für Agentic Coding mit dem richtigen Vibe

Wird in wenigen Jahren niemand mehr Code schreiben, wie es NVIDIA-Chef Jensen Huang prophezeit? Werden intelligente Systeme Bugs jagen, Apps erstellen und Menschen überflüssig machen? Wahrscheinlich nicht.

Aber sicher ist, dass KI rasend schnell verändert, wie wir Software entwickeln. Wer die neuen KI-Helfer nicht nutzt, macht sich das Leben unnötig schwer und läuft Gefahr, den Anschluss zu verlieren.

In diesem Buch erfahren Sie, was Agentic Coding bereits leisten kann und wo die Grenzen von GitHub Copilot, Claude, Antigravity und Cursor liegen. Michael Kofler, Bernd Öggl und Sebastian Springer zeigen Ihnen anhand praxisnaher Beispiele , wie Sie heute schon mit KI-Unterstützung schneller, effizienter und fehlerfreier programmieren können. Ein pragmatischer Leitfaden für alle, die wissen wollen, was künstliche Intelligenz für die Softwareentwicklung bedeutet.

Aus dem Inhalt:

  • Agentic Coding
  • Debugging, Refactoring und Unit-Tests
  • MCP und Skills
  • Server-Setup für lokale LLM-Ausführung
  • Modelle mit dem Docker Model Runner ausführen
  • LLMs per API nutzen
  • Reasoning and Thinking
  • RAGs und SQL-to-Text
  • Risiken, Grenzen und Ausblick
Kofler / Öggl / Springer Coding mit KI jetzt bestellen!

Weitere Infos & Material


  Vorwort ... 9

TEIL I.  KI-Tools verstehen ... 15

  1.  Einführung ... 17


       1.1 ... Coding per Chat ... 17

       1.2 ... Codeassistenten ... 27

       1.3 ... Die Kunst des Prompting ... 40

       1.4 ... Grundlagen von Large Language Models (LLMs) ... 48

       1.5 ... LLM-Interna und -Optimierung ... 63

  2.  Pair Programming ... 75


       2.1 ... Die richtigen KI-Tools zum Lernen ... 76

       2.2 ... Code in Funktionen strukturieren ... 78

       2.3 ... Beispiel: IBAN-Validierung ... 88

       2.4 ... Objektorientiert programmieren ... 95

       2.5 ... Beispiel: Quiz ... 103

       2.6 ... Beispiel: Sudoku lösen ... 108

  3.  Agentic Coding ... 117


       3.1 ... Agentic Coding in der Software-Entwicklung ... 117

       3.2 ... Agentic Coding mit Cursor ... 120

       3.3 ... Die Kernfeatures von Cursor ... 124

       3.4 ... Der Agentic Coding Workflow ... 135

       3.5 ... Fazit ... 146

TEIL II.  Coding mit KI-Unterstützung ... 149

  4.  Debugging ... 151


       4.1 ... Webapplikationen ... 152

       4.2 ... App-Entwicklung ... 162

       4.3 ... Entwicklung am Raspberry Pi ... 167

       4.4 ... Visual Studio und VSunhbox voidb@x protect penalty @M Code ... 171

       4.5 ... Fazit ... 173

  5.  Refactoring ... 175


       5.1 ... Einführung ins Refactoring ... 176

       5.2 ... Refactoring mit KI-Werkzeugen ... 176

       5.3 ... Best Practices ... 190

       5.4 ... Wann Sie KI nicht zum Refactoring einsetzen sollten ... 192

       5.5 ... Fazit ... 193

  6.  Software testen ... 195


       6.1 ... Erzeugen von Testdaten ... 196

       6.2 ... KI-gestützte Testautomatisierung ... 200

       6.3 ... Testgetriebene Entwicklung mit KI ... 207

       6.4 ... Arbeiten mit Abhängigkeiten ... 213

       6.5 ... Optimieren von Tests ... 220

       6.6 ... E2E-Tests ... 226

       6.7 ... Fazit ... 231

  7.  Software dokumentieren ... 233


       7.1 ... Inline-Dokumentation ... 235

       7.2 ... Funktions- und Klassendokumentation ... 239

       7.3 ... API-Dokumentation ... 243

       7.4 ... Veraltete Dokumentation ... 247

       7.5 ... Fazit ... 250

  8.  Datenbanken ... 253


       8.1 ... Datenbankdesign ... 254

       8.2 ... SQL-Kommandos ... 261

       8.3 ... Administration ... 268

       8.4 ... Datenbank-Handling mit MCP ... 273

  9.  Scripting und Systemadministration ... 279


       9.1 ... Scripting ... 279

       9.2 ... Reguläre Muster ... 284

       9.3 ... KI-Hilfe im Terminal mit llm ... 289

       9.4 ... Systemadministration ... 292

       9.5 ... Linux-Administration per SSH und KI ... 297

TEIL III.  Tools für Profis ... 305

10.  Sprachmodelle lokal ausführen ... 307


       10.1 ... Die Qual der LLM-Wahl ... 308

       10.2 ... Vorteile der lokalen Ausführung von Modellen ... 314

       10.3 ... GPT4All ... 315

       10.4 ... Ollama ... 318

       10.5 ... Die Ollama Cloud ... 324

       10.6 ... Open WebUI für Ollama ... 325

       10.7 ... Continue ... 333

       10.8 ... Ollama-API ... 336

       10.9 ... Tabby ... 339

       10.10 ... Fazit ... 341

11.  Der eigene LLM-Server ... 343


       11.1 ... Hardware ... 345

       11.2 ... GPU-Bibliotheken, Treiber und Kernel-Einstellungen ... 346

       11.3 ... LM Studio ... 354

       11.4 ... Agentic Coding mit Roo Code ... 368

       11.5 ... llama-server ... 371

       11.6 ... Fazit ... 377

12.  Agentic-Coding-CLIs ... 379


       12.1 ... Einführung ... 379

       12.2 ... Claude Code ... 382

       12.3 ... Codex CLI ... 396

       12.4 ... goose ... 400

13.  MCP und Skills ... 407


       13.1 ... Tool Calling ... 408

       13.2 ... Model Context Protocol (MCP) ... 409

       13.3 ... Skills ... 428

14.  Retrieval Augmented Generation (RAG) und Text-to-SQL ... 439


       14.1 ... Schnellstart RAG ... 440

       14.2 ... Das viel-falter-Projekt ... 445

       14.3 ... Dokumente laden ... 446

       14.4 ... Index erzeugen ... 448

       14.5 ... Vector-Store-Datenbanken ... 452

       14.6 ... RAG-Abfragen ... 455

       14.7 ... Text-to-SQL ... 461

15.  KI-APIs nutzen ... 473


       15.1 ... Die API von OpenAI ... 473

       15.2 ... Die API von Claude ... 482

       15.3 ... Die API von Gemini ... 484

       15.4 ... APIs lokaler Modelle ... 485

       15.5 ... Beispiel: Alt-Texte für eine WordPress-Site generieren ... 490

       15.6 ... Docker Model Runner ... 496

16.  Risiken und Ausblick ... 513


       16.1 ... Probleme und Einschränkungen beim Einsatz von KI-Tools ... 513

       16.2 ... Beispielhaftes KI-Versagen ... 520

       16.3 ... Ethische Fragen ... 529

       16.4 ... AI Slop, Vibe Coding und die Zukunft der Software-Entwicklung ... 535

  Index ... 541


1    Einführung


Dieses »Hello, World!«-Kapitel gibt einen ersten Überblick über den Einsatz von KI-Tools bei der Programmentwicklung. Wir spannen dabei den Bogen von dialogbasierten Coding-Hilfen wie ChatGPT über die simple Code-Vervollständigung im Editor hin zu Agentic Coding, bei dem Sie KI-Tools mit der Implementierung vollständiger Features beauftragen. Das Thema »Agentic Coding« wird uns durch nahezu alle weiteren Kapitel des Buchs verfolgen.

Eine neue Dimension bekommt Coding mit KI, wenn Sie dem KI-Tool die Kontrolle über Teile Ihres Computers überlassen, z. B. mithilfe von Programmen, die das Model Context Protocol unterstützen (siehe Kapitel 13, »MCP und Skills«). Damit kann das KI-Tool außerhalb der Entwicklungsumgebung Aktionen durchführen, z. B. ein GitHub-Issue bearbeiten, Commits durchführen, einen Datenbankserver einrichten, Programme starten oder externe Testprozeduren ausführen.

Die Anwendungsmöglichkeiten reichen über die reine Codeentwicklung hinaus und schließen administrative Arbeiten oder Sicherheitstests mit ein. Idealerweise verwenden Sie für diese Art der KI-Anwendung abgesicherte Umgebungen, also Sandboxes oder virtuelle Maschinen. MCP, Skills und vergleichbare Verfahren bergen das Potenzial in sich, nicht nur die Programmentwicklung zu automatisieren, sondern auch angrenzende Aufgaben inklusive Test und Debugging.

Wenn Sie dieses Buch lesen, haben Sie höchstwahrscheinlich schon KI-Coding-Tools ausprobiert. Überfliegen Sie dennoch die folgenden Seiten – vielleicht können wir Sie schon im Einführungskapitel auf neue Ideen bringen, bevor wir in den weiteren Kapiteln mehr in die Tiefe gehen. Insbesondere hinweisen wollen wir auf Abschnitt 1.4, »Grundlagen von Large Language Models (LLMs)«, und Abschnitt 1.5, »LLM-Interna und -Optimierung«: Dort fassen wir zusammen, wie Sprachmodelle hinter den Kulissen funktionieren. Dieses Wissen ist hilfreich, um die Grenzen der aktuellen Technik besser zu verstehen.

1.1    Coding per Chat


Den intuitivsten und niederschwelligsten Einstieg in das KI-unterstützte Coding bieten Chat-Systeme wie ChatGPT. Zuletzt gab es eine große Auswahl derartiger Tools. Fünf populäre Dienste sind:

Alle Dienste können in eingeschränktem Umfang kostenlos genutzt werden. Bei intensiver Verwendung bzw. zum Freischalten von Zusatzfunktionen benötigen Sie aber ein kostenpflichtiges Abo.

Historisch gesehen war ChatGPT der erste öffentliche KI-Chat-Dienst. Seine Funktionen waren in den letzten Jahren prägend für die öffentliche Wahrnehmung von »künstlicher Intelligenz«. Die Konkurrenz hat aber schnell aufgeholt, und alle hier genannten Dienste funktionieren ausgezeichnet.

Unter Software-Entwicklern hatten 2025 https://claude.ai und dort verankerte Dienste den besten Ruf. Der Firma Anthropic ist es besonders gut gelungen, den Bedürfnissen von IT-Profis gerecht zu werden. Immer wieder gewannen Sprachmodelle von Anthropic Coding-Benchmark-Tests. Derartige Tests versuchen, den Einsatz von Sprachmodellen zum Software-Development so objektiv wie möglich zu vergleichen.

Im extrem schnelllebigen KI-Zeitalter kann es aber jederzeit passieren, dass ein Sprachmodell neue Konzepte realisiert und in der Entwicklergunst steigt oder fällt. Ende 2025 gelang dieses Kunststück Google mit Gemini. Dieses Sprachmodell funktioniert so gut, dass OpenAI Angst bekam, nicht mehr konkurrenzfähig zu sein, und »Alarmstufe Rot« ausrief (Code Red).

Deswegen werden Sie in diesem Buch vergeblich nach konkreten Aussagen suchen, welches denn nun der beste KI-Dienst, der beste KI-Editor, das beste Sprachmodell für eine bestimmte Aufgabe ist. Selbst wenn wir in der Lage wären, diese Frage heute konkret zu beantworten, kann sich das morgen schon wieder ändern. Im Gegenteil empfehlen wir Ihnen, immer wieder über den eigenen Tellerrand zu sehen und für einen Tag ein Werkzeug auszuprobieren, das nicht Bestandteil Ihres üblichen Baukastens ist.

Zwei Beispiele


Sie brauchen in einem Python-Script eine Funktion, die ein zufälliges Passwort in einer vorgegebenen Länge liefert. Statt den Code selbst zu schreiben, sparen Sie ein, zwei Minuten Zeit, wenn Sie diese triviale Aufgabe an ChatGPT abgeben. Den Code können Sie nun unkompliziert kopieren und in Ihr Script einbauen. Vergessen Sie die erforderlichen Importe nicht! Wenn Sie gerade dabei sind, Programmieren zu lernen, ist das Beispiel vielleicht erhellend. IT-Profis werden aber nur mit der Achsel zucken aufgrund der offensichtlichen Trivialität.

Abbildung 1.1     ChatGPT hat einen Passwortgenerator in eine Funktion verpackt.

Das zweite Beispiel ist komplexer. Wir bitten Claude um detaillierte Informationen über neue Concurrency-Features in Swift 6.2. Bemerkenswert ist das Timing: Als wir den Prompt im Dezember 2025 in der Weboberfläche von Claude formulierten, war das Sprachmodell Sonnet 4.5 aktuell. Ein kurzer Prompt »When was your training cutoff?« ergibt, dass Sonnet 4.5 nur mit Wissen bis Anfang 2025 trainiert wurde. Das Release von Swift 6.2 fand viel später im Herbst 2025 statt. Das Sprachmodell von Claude konnte damals also gar nicht wissen, welche Features 6.2 implementiert hat.

Abbildung 1.2     Claude berücksichtigt bei dieser Anfrage Informationen nach dem Training-Cutoff-Zeitpunkt.

Glücklicherweise sind moderne KI-Tools in der Lage, selbst im Internet zu recherchieren. Alternativ oder ergänzend können Sie Links zu Webseiten angeben bzw. PDF- oder Markdown-Dateien mit Dokumentation hochladen, die das Sprachmodell zusätzlich zum antrainierten Wissen berücksichtigen soll. Mit diesen Zusatzinformationen war Claude zum Testzeitpunkt in der Lage, Detailinformationen zu präsentieren, die weit über die recht mageren Release Notes von Apple hinausgingen.

Darstellung von Prompts und Antworten


Abbildungen mit Screenshots von Chat-Oberflächen oder KI-Editoren sind in diesem Buch die Ausnahme. Stattdessen präsentieren wir Prompts und Antworten wie im folgenden Beispiel. Darin sollen alle Datumsangaben einer Zeichenkette vom US-Format (12/31/2026) in das ISO-Format (2026-12-31) umgewandelt werden.

Prompt: Python: I want to replace all US dates by ISO dates in a string. Can you help?

I’ll help you convert US date formats (MM/DD/YYYY) to ISO format (YYYY-MM-DD) in a string using Python. Here’s a solution using regular expressions:

import re
from datetime import datetime

# Replace US dates (MM/DD/YYYY) with ISO dates (YYYY-MM-DD)
def us_to_iso_dates(text):
def replace_date(match):
month, day, year = match.groups()
try:
datetime(int(year), int(month), int(day))
return f"{year}-{month.zfill(2)}-{day.zfill(2)}"
except ValueError:
return match.group(0)

return re.sub(r'\b(\d{1,2})/(\d{1,2})/(\d{4})\b',
replace_date,
text)

# Example
text = "Meeting: 12/15/2025 and 3/5/2026"
print(us_to_iso_dates(text))
# Output: Meeting: 2025-12-15 and 2026-03-05

Key features:

  • Validates dates. Invalid dates like 13/45/2024 are left unchanged.

  • Uses word boundaries (\b) to avoid matching partial numbers

(more details …)

Der Code funktioniert in der präsentierten Form ausgezeichnet. Wenn Sie mit regulären Ausdrücken nicht vertraut sind, können Sie sich den Aufbau des Musters in einer Folgefrage erläutern lassen:

Prompt: Could you explain the regular pattern?

Sure! Let me break down the regular expression pattern r'\b(\d{1,2})/(\d{1,2})/(\d{4})\b':

    ...


Springer, Sebastian
Sebastian Springer ist JavaScript-Engineer bei MaibornWolff. Als Dozent lehrt er JavaScript an der Technischen Hochschule Rosenheim. Er publiziert regelmäßig in Fachzeitschriften, schreibt Fachbücher zu Node.js und ist ein gefragter Speaker auf allen wichtigen JavaScript- und Webentwickler-Konferenzen. Sebastian Springer bietet auch Seminare zu JavaScript und Node.js an und ist Trainer für mehrere Rheinwerk Webinare.

Kofler, Michael
Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen undarbeitet als Lehrbeauftragter.

Öggl, Bernd
Bernd Öggl ist ein erfahrener Systemadministrator und Webentwickler. Bereits seit 2001 erstellt er für Kunden Websites, setzt individuelle Entwicklerprojekte um und gibt sein Wissen auf Konferenzen und in Publikationen weiter.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.