Als Entwickler sind wir immer auf der Suche nach Möglichkeiten, unsere Produktivität zu verbessern und unsere Arbeitsabläufe zu optimieren. Angesichts der jüngsten Fortschritte in der KI (und meiner festen Überzeugung, dass diese Technologien bahnbrechend sein werden) habe ich beschlossen, diese Tools in einem realen Entwicklungsszenario zu testen.
Mein Ziel: Erstellen Sie in nur 7 Stunden eine Full-Stack-KI-gestützte Food-Tracking-App (PoC).
Das Ergebnis: Es hat ziemlich gut funktioniert! Aber nicht ohne Herausforderungen.
Hier ist, was ich über den Einsatz von KI als Entwicklungspartner gelernt habe.
Das Ziel war ehrgeizig, aber zielgerichtet: eine mobile App zu entwickeln, mit der Benutzer ihre Lebensmittel fotografieren und diese mithilfe der KI-Erkennung automatisch in einem Lebensmittel-Tracker protokollieren können. Der Tech-Stack umfasste meine Favoriten: Quasar Framework (VueJS Framework), Google Firebase und Capacitor (Mobile Dev Framework) mit Google Gemini 2.0 Flash für KI-Inferenz.
Nichts besonders Ausgefallenes, aber mehr als genug Komplexität, um die KI-Unterstützung auf die Probe zu stellen.
Ich habe eine Kombination von KI-Tools verwendet, um verschiedene Aspekte des Projekts zu unterstützen:
Eine der wertvollsten Erkenntnisse, die ich gewonnen habe, war, dass ich als Junior-Entwickler oder Praktikant über KI nachdachte. Dieses mentale Modell hat meine Herangehensweise an die Zusammenarbeit völlig verändert. So wie man einem neuen Praktikanten nicht ein ganzes Projekt auf den Schreibtisch legen und perfekte Ergebnisse erwarten würde, habe ich Folgendes gelernt:
Dieser Ansatz führte zu einer besseren Auszahlung und funktionierte besser, als die KI entweder als „allwissend“ oder „völlig unzuverlässig“ zu behandeln.
KI erwies sich in der Planungsphase als außerordentlich hilfreich. Ich begann mit einer groben Projektskizze und nutzte iterative Eingabeaufforderungen, um sie zu verfeinern. Eine meiner ersten Aufforderungen war zum Beispiel:
Can you help me plan out making the following app in 7 hours: <information about the app> Detail out how long I should spend on each section, and revise my overall plan as needed.
Dies löste ein Hin und Her aus, das dazu beitrug, den Projektumfang und den Zeitplan festzulegen und zu einem realistischeren und detaillierteren Plan zu führen.
Die KI-Tools zeichneten sich durch hervorragende Ergebnisse bei der Erstellung und Pflege der Dokumentation aus. Es könnte schnell umfassende Markdown-Dateien erstellen und diese im Verlauf der Projektentwicklung auf dem neuesten Stand halten. Dadurch wurde wertvolle Zeit für die eigentliche Entwicklungsarbeit frei.
Die Aufteilung der Entwicklung in kleinere, fokussierte Impulse erwies sich als äußerst effektiv. Anstatt zu versuchen, ganze Komponenten auf einmal zu generieren, habe ich eine Kaskade von Eingabeaufforderungen verwendet, die jeweils auf den vorherigen aufbauen. Zum Beispiel:
Ein toller Trick, den ich gefunden habe, bestand darin, die K.I. Machen Sie sich Notizen über den Fortschritt und die nächsten Schritte, damit Sie zwischen den Eingabeaufforderungen auf etwas zurückgreifen können. Da ich WindSurf nutzte, konnte ich eine „Master-Eingabeaufforderung“ verwenden, um das Gespräch am Laufen zu halten. Die Master-Eingabeaufforderung würde die KI anweisen, um auf die Notizen zurückzugreifen und sie im Laufe des Schreibens des Codes zu ergänzen.
Ein weiterer Bereich, in dem WindSurf glänzte, waren Fehlerbehebungen und Aufgaben nach der Entwicklung.
Nachdem ich meine App getestet und einige Fehler festgestellt hatte, übergab ich meine Liste an WindSurf und WindSurf konnte Probleme schnell identifizieren und beheben und sogar Testfälle generieren, um sicherzustellen, dass die Korrekturen funktionierten. Das hat mir eine Menge Zeit und Mühe gespart.
Ich hatte die folgende Liste von Fehlern und musste sie nur in wenigen Fällen manuell beheben:
Can you help me plan out making the following app in 7 hours: <information about the app> Detail out how long I should spend on each section, and revise my overall plan as needed.
Nicht alles verlief reibungslos. Es stellten sich einige wichtige Herausforderungen heraus:
Ich habe bei Dateiänderungen mehrere Einschränkungen festgestellt:
HINWEIS: Zum Zeitpunkt des Verfassens dieses Artikels schien es, als ob der Dateisperr-/Dateibearbeitungsfehler in der neuesten Version von WindSurf behoben wurde.
Die Qualität der KI-Unterstützung ließ bei längeren Gesprächen nach. Ich habe gelernt, neue Gespräche für neue Komponenten zu beginnen und einen komprimierten Kontext bereitzustellen, anstatt zu versuchen, eine lange Sitzung aufrechtzuerhalten.
Als der Code länger und komplexer wurde, hatte die KI Mühe, mitzuhalten. Ich musste die Aufgaben in kleinere, überschaubarere Teile aufteilen, um die Qualität aufrechtzuerhalten, oder viele Details und Kontext bereitstellen, um die KI auf Kurs zu halten.
Abweichen vom Weg würde bedeuten, dass Funktionen weggelassen, relevanter Code gelöscht oder manchmal das völlig Falsche erstellt werden muss. Das war eine große Zeitverschwendung und ich musste sehr vorsichtig sein, um die KI auf Kurs zu halten, oder mich dazu entschließen, manuell zu programmieren.
Manchmal geht es einfach schneller, es selbst zu machen. Zu lernen, diese Momente zu erkennen, sparte viel Zeit und Frustration. Wie in meinem Entwicklungsprotokoll vermerkt: „Wenn es funktioniert, funktioniert es gut. Wenn nicht, kann es ein Zeitfresser sein.“
Git-Commit häufig: Bevor Sie AI wesentliche Änderungen vornehmen lassen, committen Sie Ihren aktuellen Status. Dies bietet einen einfachen Rückgriff, wenn etwas schief geht.
Boilerplate-Code vorbereiten: Richten Sie Ihre Projektstruktur und Grundkonfigurationen ein, bevor Sie KI-Unterstützung in Anspruch nehmen. In meinem Fall bedeutete das:
Klare und detaillierte Aufforderung: Machen Sie Ihre Anforderungen so konkret wie möglich. Fügen Sie relevanten Kontext und Beispiele hinzu. Nehmen Sie sich in der Anforderungs- und Entwurfsphase so viel Zeit wie möglich und geben Sie so viele Details wie möglich an. Diese Hinweise und Anweisungen helfen Ihnen nicht nur dabei, Ihr Projekt besser auszuführen, sondern verbessern auch die Qualität des von der KI generierten Codes erheblich.
Iteratives Feedback: Zögern Sie nicht, die KI zu korrigieren oder anzuleiten. Wenn ich beispielsweise eine Ausgabe erhielt, die nicht ganz den Anforderungen entsprach, gab ich konkretes Feedback:
Can you help me plan out making the following app in 7 hours: <information about the app> Detail out how long I should spend on each section, and revise my overall plan as needed.
Diese Art von spezifischem Feedback führte normalerweise zu schnellen und genauen Korrekturen.
Der Einsatz von KI hat die Entwicklung absolut beschleunigt. Obwohl es Anleitung und gelegentliche Korrekturen erforderte, ermöglichte mir die Kombination von ChatGPT und Claude zusammen mit WindSurf, viel weiter voranzukommen, als ich es alleine im gleichen Zeitraum geschafft hätte.
Der Erfolg erforderte jedoch ein Verständnis sowohl der Fähigkeiten als auch der Grenzen dieser Tools. Der Schlüssel bestand darin, die richtige Balance zwischen KI-Unterstützung und menschlichem Fachwissen zu finden und beides dort einzusetzen, wo es sich auszeichnet.
Dieses Experiment deutet auf eine Zukunft hin, in der KI-Tools ein integraler Bestandteil des Entwicklungsworkflows werden – vorerst nicht, um Entwickler zu ersetzen, sondern ihre Fähigkeiten zu erweitern. Der Schlüssel liegt darin, zu lernen, effektiv mit diesen Tools zu arbeiten, ihre Stärken und Grenzen zu verstehen und Arbeitsabläufe zu entwickeln, die ihre Vorteile maximieren und gleichzeitig ihre Nachteile minimieren.
Für Entwickler, die daran interessiert sind, KI in ihren Workflow zu integrieren, empfehle ich, klein anzufangen, klare Interaktionsmuster zu etablieren und die Rolle der KI schrittweise zu erweitern, wenn Sie mit ihren Fähigkeiten und Einschränkungen vertrauter werden.
Die Tools entsprechen dem Niveau eines Junior-Entwicklers, und mit genügend Trainingsdaten und Iterationen werden sie bald in der Lage sein, viel mehr zu tun. Ich kann mir vorstellen, dass diese Tools letztendlich ganze Anwendungen schreiben und den Großteil des Entwicklungsprozesses übernehmen. Bis die Modelle einen leitenden Entwickler simulieren können, benötigen wir weiterhin menschliche Aufsicht und Anleitung.
Ich bin gespannt, wohin diese Technologie führt und wie sie die Zukunft der Softwareentwicklung prägen wird.
Hier sind einige kurze Screenshots der App, die ich in 7 Stunden erstellen konnte. Es ist nicht perfekt, aber es ist ein solider Anfang!
(Mit der Kamera Essen aufnehmen)
(Bild zur Lebensmittelerkennung an KI senden)
(Ergebnisse anzeigen – Lebensmittel zum Tracker hinzufügen)
(Bestätigung der Lebensmitteleingabe)
(Dashboard-Ansicht)
(Ansicht des Lebensmitteleintrags)
Schamloser, aber relevanter Plug:
Während ich noch an der in diesem Beitrag erwähnten Food-App arbeite, konnte ich mithilfe von WindSurf und A.I. ziemlich schnell ein weiteres Projekt abschließen.
Wenn Sie an einem KI-gestützten Git-CLI-Helfer interessiert sind, der die Pflege von Commit-Nachrichten und Versionshinweisen erleichtert, schauen Sie sich eGit an
Das obige ist der detaillierte Inhalt vonErstellen einer App mit AI Pair Programming: Lehren aus unserem Sprint. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!