Apple hat vor kurzem seine neue Programmier-IDE Xcode 26.3 zur Verfügung gestellt. Größte Änderung ist die Integration so genannter Coding-Agents wie Claude und ChatGTP Codex. Ich habe damit eine App gebaut und in den Store gebracht.
Ich habe auch schon früher Apps in Xcode entwickelt. Die Lernkurve war jeweils enorm hoch, auch wenn Apple seinen Entwickler:innen viele (fast zu viele) Ressourcen an die Hand gibt. Wenn ich mit einer Idee vor einem leeren Xcode sitze wird es schwierig, anzufangen. Doch das ist jetzt anders.
Agentisches Programmieren
Klar konnte man bisher auch schon die bekannten KIs dazu überreden, Code für iPhone und iPad-Apps zu schreiben. Dann aber kam die WWDC 2024 und der Start von Apple Intelligence. Was Apple so nebenbei erwähnt hat, war die Möglichkeit auch in Xcode Generative Künstliche Intelligence zu nutzen, um den eigenen Programm-Code zu ergänzen oder zu verbessern. Geliefert hat der Konzern diese lokale Methode bisher nicht. Auch nicht mit der neuesten Version der IDE. Man geht stattdessen den Weg über externe Cloud-Lösungen.
Wie geht das?
Xcode in der aktuellen Beta-Version (RC) 26.3 erlaubt es die Coding-Agents von Claude oder ChatGPT direkt einzubinden. Damit haben dieses Systeme nicht zur Zugriff auf den Code, nein sie können ihn direkt in der IDE erzeugen. Sollten dabei Fehler passieren, die der Inline-Code-Check von Xcode auswirft, korrigieren diese Agenten ihren Fehler unmittelbar. Aber der Reihe nach.
Von der Idee zur App
Meine Idee, ein eigenes Space-Invaders-Spiel auf die iPhone zu haben, gibt es schon länger in meinem Kopf. Alleine es fehlte mir der Antrieb und letztendlich auch der Kenntnisstand so etwas in die Realität umzusetzen. Kurz gesagt: Ich habe von Sprites, Kollisionserkennung und Game-Design ungefähr so viel Ahnung wie eine Kuh vom Tanzen. Dennoch habe ich aber ein gut umrissenes Bild dieses Games in meinem Kopf.
Mit dem agentischen Programmieren im neuen Xcode und einem bezahlten Account bei OpenAI ist das aber nun kein Problem mehr. Ich bekomme direkt in der IDE ein Eingabefeld zur Kommunikation mit ChatGPT Codex. Dort formuliere ich meine Wünsche möglichst genau. Anfänglich in Englisch, aber nach kurzer Zeit habe ich einfach auf Deutsch weitergemacht. Auch die Antworten von Codex waren dann in deutscher Sprache.
Schon im ersten Lauf bekomme ich eine funktionierende App mit sehr einfachen Grundfunktionen. Die „Invaders“ und mein „Geschütz“ sind dabei noch einfache bunte Quadrate. Aber der Bewegungsablauf passt schon. In der weiteren Kommunikation mit Codex definiere ich Explosionen, Schüsse der Gegner und Bunker am unteren Ende des Screens. Ganz so wie das Original aus dem Jahr 1978.
Nach ca. zwei Stunden ist es soweit. Die App hat einen Stand erreicht, den man durchaus als Vorzeigbar bezeichnen kann. Bisher habe ich sie nur im iPhone-Simulator (iPhone Air) von Xcode getestet. Nun wird es Zeit, sie auch auf einem echten iPhone auszuprobieren.
Vom Mac zu TestFlight
Apple bietet seit vielen Jahren die Möglichkeit, Apps vorab als Testversionen zu verteilen. Grundlage dafür ist die App TestFlight. Damit lassen sich Beta-Versionen von Apps und Games unproblematisch anbieten. Auch öffentliche Betatests sind damit kein Problem. Gesagt getan. Auch wenn ich den Vorgang im Prinzip kenne, habe ich Codex noch mal gefragt und mir wurde eine Schritt für Schritt Anleitung präsentiert, wie ich die App zu TestFlight bekomme. Und da ist sie nun auch.
Auf meinem eigenen iPhone konnte ich sie damit fast sofort installieren. Ein paar Freunde mussten noch auf die Vorabprüfung von Apple warten. Denn auch Beta-Versionen testet der Konzern kurz. Ist dort aber deutlich freigiebiger als bei der finalen Kontrolle bevor es in den App-Store geht. Aber auch das will ich mit „meiner“ App noch erreichen. Ich schreibe bewusst „meiner“ in Anführungszeichen, denn von den über 1000 Zeilen Code habe ich nicht eine selber geschrieben.
Fazit
Apple hat zwar nicht wie versprochen ein eigenes System zum Coden in Xcode geliefert, hat aber durch die Integration von Claude oder Codex adäquaten Ersatz am Start. Die tiefe Integration der KIs in die IDE macht die Entwicklung von Apps zu einem dialogischen Prozess und selbst wenn man nicht wie ich von Null beginnt, sondern seine vorhandene App vielleicht anpassen möchte, bekommt man mächtige Werkzeuge an die Hand. Kein Copy und Paste vom Chat-Clienten mehr nötig. Das System kennt alle Dateien und kann ggf. darauf zugreifen. Bei wichtigen Zuggriffen holt es sich die Genehmigung durch Nachfrage. Man sitzt also nicht mehr einsam vor dem Mac und fragt sich, wie ein bestimmtes Problem zu lösen ist. Man beschreibt es und erhält lauffähigen Programm-Code. Das wird einiges verändern, da bin mir ich sicher.
Wenn ihr meine erste Game-App mal testen wollt. Hier ist der Link zur Public Beta in TestFlight. Viel Spaß. Was noch fehlt ist jeglicher Sound. Vielleicht lege ich das in einer späteren Version nach. Es macht aber auch gerade ohne „Lärmbelästigung“ Spaß, meine Interpretation des Klassikers zu spielen. Wenn sonst keine großen Probleme mehr auftauchen, reiche ich das Game in den nächsten Tagen zum Review für den App-Store ein.
