9
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

この記事はソニックガーデン プログラマ アドベントカレンダーの23日目の記事です。

はじめに

iOSアプリではSwift、WebアプリではRubyなど、複数の言語を同時に使うことがあります。
今回は、そんな複数言語の開発でAIを活用する方法を紹介します。
なお、AIツールを使うとコードが学習データとして使われる可能性があります。仕事で利用する場合は社内ルールを確認してください。

結論

複数の言語・IDEを併用するなら、コード補完にはGitHub Copilotを、抽象的な質問や相談にはChatGPTの「Work with App」を使うのがおすすめです。

開発時に利用しているAI

GitHub Copilot - RubyMine

公式ドキュメント

Web開発では主にRubyMineを使用しています。
GitHub Copilotのプラグインを入れるだけで、優秀な入力補完が得られます。たとえばModelのメソッドを作ると、全パターンを網羅するRSpecのコードを自動提案してくれます。

GitHub Copilot - Xcode

公式ドキュメント

iOSやvisionOSのアプリ開発ではXcodeを使っています。
SwiftUIで画面プレビューしながら開発できるのが魅力です。
入力補完は優秀ですが、Copilot Chatがないので「もっと良い書き方は?」「コードの改善点は?」といった抽象的な質問ができません。

ChatGPT - Work with App

公式ドキュメント

ChatGPT Work with App
Work with AppでmacOSのアプリと連携

ChatGPTのWork with Appを使うと、RubyMineやXcode、ターミナルなどmacOSアプリならほぼ連携可能です。
コードをコピーせずにChatGPTから指示を出せるため、IDEやアプリの画面をそのまま読み取ってもらえます。どのIDEでもUIが変わらずに使える点も便利です。
Work with Appの利用には、有料プランへの加入が必要です。

Xcodeと連携中
Xcodeに表示されているコードをリファクタ

(おまけ)Gemini - Share your screen

Google AI Studio

個人的には、今一番気になっているのは「Gemini」です。GeminiのShare your screenを利用すればコードを書きつつ、同僚に話しかけるように音声で質問ができたり、音声で提案が返ってくるのが特徴的です。
次の動画はXcodeのコードに対して解説してもらっています。

※ 動画を見やすくするためにGeminiの返答までの時間はトリミングしています。実際には返答までにそれなりの時間がかかります。

ただ、すべて音声ベースなので、コードを含むやりとりには少し不便です。
テキストと音声を両方使えれば、より快適になると思います。

まとめ

現状は、コード補完にGitHub Copilot、抽象的な質問にChatGPTのWork with Appという組み合わせを使っています。
将来的には、言葉にするだけでコードを自動生成できるかもしれません。
Geminiのような新しい技術が進化すれば、AIとのペアプロがもっとスムーズになりそうで楽しみですね!

9
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?