Kofler / Öggl / Springer | Coding mit KI | Buch | 978-3-367-10344-7 | sack.de

Buch, Deutsch, 412 Seiten, Format (B × H): 180 mm x 247 mm, Gewicht: 886 g

Reihe: Rheinwerk Computing

Kofler / Öggl / Springer

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.
1. Auflage 2024
ISBN: 978-3-367-10344-7
Verlag: Rheinwerk Verlag GmbH

Das Praxisbuch für die Softwareentwicklung. So hilft Künstliche Intelligenz bei IT-Projekten. Prompt Engineering, Retrieval Augmented Generation u. v. m.

Buch, Deutsch, 412 Seiten, Format (B × H): 180 mm x 247 mm, Gewicht: 886 g

Reihe: Rheinwerk Computing

ISBN: 978-3-367-10344-7
Verlag: Rheinwerk Verlag GmbH


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 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

Kofler / Öggl / Springer Coding mit KI jetzt bestellen!

Weitere Infos & Material



  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 3 ... 321

11.  Level-3-Tools: OpenHands und Aider ... 325

       11.1 ... OpenHands ... 327
       11.2 ... OpenHands in der Praxis ... 333
       11.3 ... Aider ... 336
       11.4 ... Aider in der Praxis ... 341

12.  Retrieval Augmented Generation (RAG) und Text-to-SQL ... 351

       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.  Risiken und Ausblick ... 385

       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

  Index ... 409


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 und
arbeitet 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.