先日、”ChatGPT“アプリ単体で”バイブコーディング“を試してみました。
仕掛かり中のアプリ開発が一段落したので、今回は、”ChatGTPのChatGPT App Integration (Work with Apps)“を使って、Xcodeで開いているプロジェクトを対象に、ソースコードのブラシュアップ作業に挑戦してみました。ChatGTPとXcodeを連携させる方法は至って簡単で、ChatGTPアプリの”アプリとの連携”ボタンでXcodeを選択するだけです。後は、ブラシュアップしたいソースコードのファイルをXcodeで開いた状態で、ChatGPTと会話しながらコードを修正してもらうという流れです。

ChatGPT
一旦はコーディングが済んだ状態で、期待した通り動作しない部分があるので、ChatGTPにコードの改良を頼んでみました。
画面が表示される都度、支障なく動画の再生が開始できるよう改善できるポイントはありますか?
すると、コードを解析して改良すべきポイントを具体的に提案してくれます。しかも提案内容がプロレベルのエレガントなコード、参りました!!

ChatGPT
何度か会話しながら改良を進めていき、ある程度のところまで来たら、コードパッチを作ってもらい、その内容を直接、Xcodeの編集画面に展開してくれます。

ChatGPT
途中、エラーが出たので、エラーの内容を聞いてみると、以下にような回答もしっかり返してくれます。頼りになりますよね。
OK、エラーメッセージ確認したよ。
結論から言うと、これ、あなたのコード本体には直接関係ないエラーです。簡単にまとめるね
続いて、既に開発を終え、アプリストアで公開中のアプリに、”ChatGTPのChatGPT App Integration (Work with Apps)“機能を追加する手順などについて会話を進めてみました。
SwiftUiで開発したノートアプリにChatGTPのWork with appの連携機能をインプリメントしたいんだけど
すぐに付けるコードを書いてくれるだけじゃなくて、どのような仕組みで連携機能が動くのかというところも分かりやすく説明してくれます。こういうスタイルで教えてもらうとより理解が深まるので、今後の応用力も身に付きます。

ChatGPT
途中、以下のように聞いてみると、
Open AIへの申請の前に先ほどの NotesManager.swift (ノート管理クラス)について質問ですが、開発しているアプリではSwiftDataを使ってNoteを管理しています。その場合、どうやって管理クラスを書いたらいいのかなあ?
以下のように回答してくれます。
ナイスな質問!めちゃ大事なポイントだね。
結論から言うと、
SwiftData(=@Modelで管理してるデータ)を直接使ってIntentを動かすことはできないから、
Intent専用の安全な「ラッパークラス」を作るのがベストだよ!
で、ソースコードも抜かりなく教えてくれます。

ChatGPT
どうですか? 想像以上に実用化レベルの域に達していますよね。これまでのようにネットで検索しなくても、会話の流れのなかで正解が見つかります。しかも、プロレベルの回答なので、安心して利用できます。これから先、もっと進化していくんだと思うと、個人的にワクワクします。
p.s>
とは言え、なかり会話を掘り下げてみると、実際にはChatGTPのWork with appの連携機能時に申請するよう言われたリンクなどは存在しなかったり、微妙にコンパイルエラーになってしまうサンプルコードを教えてくれたりと、完全に頼るにはまだまだ課題が残っているようです。少なくとも、サンプルコードの中身をザックリでも理解できないと、その先のアップデータなどで困りますので、全くの初心者がChatGTPだけを頼りにアプリを作り込むようになるまでには、まだまだ時間がかかりそう、といった印象です。
コメント