Description
Coding with AI Assistance: das Praxisbuch für die SoftwareentwicklungWird in wenigen Jahren niemand mehr Code schreiben, wie es NVIDIA-Chef Jen-Hsun Huang prophezeit? Werden intelligente Systeme Bugs jagen, Apps erstellen und Menschen überflüssig machen?Wahrscheinlich nicht. Aber sicher ist, dass KI 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 Tools wie ChatGPT oder GitHub Copilot bereits leisten können und wo ihre Grenzen liegen. Praxisnahe Beispiele zeigen Ihnen, wie Sie heute schon mit KI-Unterstützung schneller, effizienter und fehlerfreier programmieren können. Ein pragmatischer Leitfaden für alle, die wissen wollen, wie künstliche Intelligenz die Softwareentwicklung verändert. Von den renommierten Fachbuchautoren Michael Kofler, Bernd Öggl und Sebastian Springer.
Aus dem Inhalt:
- Wie funktioniert Künstliche Intelligenz
- Strukturiert programmieren mit KI
- Debugging, Refactoring und Unit-Tests
- Dokumentation automatisiert erstellen
- Datenbankentwicklung und -design
- Scripting und Administration
- Lokale LLMs ausführen
- Projekt-Bootstrapping mit OpenDevin
- Mit der OpenAI-API arbeiten
- KI-Apps und RAGs
- Risiken, Grenzen und Ausblick
Vorwort ... 9
TEIL I. Coding mit KI-Unterstützung ... 15
1. Einführung ... 17
1.1 ... Coding per Chat ... 17
1.2 ... Die Kunst des Prompting ... 27
1.3 ... Code-Assistenten ... 35
1.4 ... Chat oder Assistent? ... 47
1.5 ... Grundlagen von Large Language Models (LLMs) ... 48
2. Pair Programming ... 63
2.1 ... Code in Funktionen strukturieren ... 64
2.2 ... Beispiel: IBAN-Validierung ... 74
2.3 ... Objektorientiert programmieren ... 81
2.4 ... Beispiel: Quiz ... 90
2.5 ... Beispiel: Sudoku lösen ... 96
3. Debugging ... 107
3.1 ... Web-Applikationen ... 108
3.2 ... App-Entwicklung ... 117
3.3 ... Entwicklung am Raspberry Pi ... 120
3.4 ... Visual Studio und VS Code ... 123
3.5 ... Fazit ... 125
4. Refactoring ... 127
4.1 ... Einführung ins Refactoring ... 128
4.2 ... Refactoring mit KI-Werkzeugen ... 128
4.3 ... Best Practices ... 141
4.4 ... Fazit ... 143
5. Software testen ... 145
5.1 ... Erzeugen von Testdaten ... 146
5.2 ... KI-gestützte Testautomatisierung ... 150
5.3 ... Testgetriebene Entwicklung mit KI ... 155
5.4 ... Arbeiten mit Abh?igkeiten ... 162
5.5 ... Optimieren von Tests ... 168
5.6 ... E2E-Tests ... 175
5.7 ... Fazit ... 179
6. Software dokumentieren ... 181
6.1 ... Inline-Dokumentation ... 183
6.2 ... Funktions- und Klassendokumentation ... 186
6.3 ... API-Dokumentation ... 190
6.4 ... Veraltete Dokumentation ... 193
6.5 ... Fazit ... 196
7. Datenbanken ... 199
7.1 ... Datenbankdesign ... 199
7.2 ... SQL-Kommandos ... 210
7.3 ... Administration ... 218
7.4 ... Client-Programmierung ... 225
8. Scripting und Systemadministration ... 227
8.1 ... Scripting ... 228
8.2 ... Beispiel: Python-Script in PHP-Code umwandeln ... 235
8.3 ... Regul? Muster ... 237
8.4 ... Systemadministration ... 241
8.5 ... Beispiel: wget-Script plus tmpfs-Konfiguration ... 249
8.6 ... GitHub Copilot und ChatGPT im Terminal aufrufen ... 254
TEIL II. Sprachmodelle lokal ausführen, fortgeschrittene KI-Tools ... 259
9. Sprachmodelle lokal ausführen ... 261
9.1 ... Die Qual der LLM-Wahl ... 262
9.2 ... GPT4All ... 267
9.3 ... Ollama ... 271
9.4 ... Open WebUI für Ollama ... 276
9.5 ... Continue ... 284
9.6 ... Ollama-API ... 287
9.7 ... Tabby ... 290
9.8 ... Fazit ... 293
10. Code automatisiert verarbeiten ... 295
10.1 ... OpenAI-API ... 296
10.2 ... Ollama-API ... 308
10.3 ... Groq-API ... 311
10.4 ... Beispiel: Code automatisiert kommentieren ... 312
10.5 ... Beispiel: von Python 2 zu Python 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. 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. 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. KI ist gekommen, um zu bleiben - auch
und vor allem in der Programmierung. Die
Autoren zeigen auf, wann KI tatsächlich
eine Unterstützung bietet und wann Vorsicht
geboten ist. Und damit die eigenen
Codes nicht in der Cloud landen, wirft das
Autorenteam auch einen Blick auf die Nutzung
lokaler KI-Modelle. IT Administrator



