Coding mit KI
Das Praxisbuch für die Softwareentwicklung. So hilft Künstliche Intelligenz bei IT-Projekten. Prompt Engineering, Retrieval Augmented Generation u. v. m.
Erschienen am
07.11.2024, Auflage: 1. Auflage
Beschreibung
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. Aus dem Inhalt: Wie funktioniert Künstliche IntelligenzStrukturiert programmieren mit KIDebugging, Refactoring und Unit-TestsDokumentation automatisiert erstellenDatenbankentwicklung und -designScripting und AdministrationLokale LLMs ausführenProjekt-Bootstrapping mit OpenDevinMit der OpenAI-API arbeitenKI-Apps und RAGsRisiken, Grenzen und Ausblick
Inhalt
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.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.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.1 ... Einführung ins Refactoring ... 128
4.2 ... Refactoring mit KI-Werkzeugen ... 128
4.3 ... Best Practices ... 141
4.4 ... Fazit ... 143
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.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.1 ... Datenbankdesign ... 199
7.2 ... SQL-Kommandos ... 210
7.3 ... Administration ... 218
7.4 ... Client-Programmierung ... 225
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
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.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 3 ... 321
11.1 ... OpenHands ... 327
11.2 ... OpenHands in der Praxis ... 333
11.3 ... Aider ... 336
11.4 ... Aider in der Praxis ... 341
12.1 ... Schnellstart RAG ... 352
12.2 ... Das viel-falter-Projekt ... 356
12.3 ... Dokumente laden ... 357
12.4 ... Index erzeugen ... 359
12.5 ... Vector-Store-Datenbanken ... 363
12.6 ... RAG-Abfragen ... 366
12.7 ... Text-to-SQL ... 371
13.1 ... Probleme und Einschr?ungen beim Einsatz von KI-Tools ... 385
13.2 ... Beispielhaftes KI-Versagen ... 389
13.3 ... Ethische Fragen ... 400
13.4 ... Schlussfolgerungen und Ausblick ... 404