目次
AIとのペアコーディングツールの代名詞GitHub Copilotを使い始めるための、簡単なガイドを作りました。
このサイトではプログラミング初心者、特に学生にこそGitHub Copilotを使ってほしいと以前から主張しています。
実際にどうやって導入するか、どうやって使うのかについて詳しくかけていなかったので、項目の説明などの本稿で行います。
参考にして親切なお友達としてAIを活用してプログラミングを楽しんでもらえたらと思います。
費用
学生は無料です。
一般ユーザーの場合、Copilot Individualプランを契約する必要があります。2023/11/28時点では月$10または年$100の価格設定となっています。
利用可能なエディター
GitHub Copilotはプラグイン形式で提供されています。
そのため、現在使われているほとんどすべてのエディターで利用可能です。
Visual Studio Code
エディターを利用している方は現在Visual Studio Codeを利用している方が多いと思います。Visual Studio Codeは利用できます。
導入方法についてはMicrosoftがドキュメントを公開しています。
参考にしてください。
Emacs/Vim
エディターにこだわりのある方はEmacsやVimを利用している方もいると思いますが、利用できます。
IDE
C++やC#、Javaなどの言語を扱っている方は、IDEを利用している方もいると思います。
Visual Studio
Visual StudioでCopilotを利用できます。
Visual StudioではCopilot Chatも用意されています。
導入方法についてはMicrosoftのドキュメントがあります。
参考にしてください。
JetBrains製各種IDE
特にJavaやPythonあるいはUnityなどでC#を利用している方はJetBrains製のIDEを好んでいる方もいると思います。
JetBrains製のIDEではとてもシームレスに統合されています。
しかし、人によってはプラグインがうまくどうさせず、IDEがクラッシュすることもあるそうです。レビューを見ると、Pluginの完成度が低いことで低い評価が目立ちます。Microsft(GitHub)がリリースしているのですが、何が起きているのでしょうか。
プラグインをインストールし、画面の案内に従えば導入できます。
使い方
コメントが多ければ多いほどいいです。
コメントが生成されるコード品質に大きく関わります。
とにかくコメントを書きまくるだけで、コードは勝手に書いてくれますし、うまく動かなかったらさらにコメントを書くだけで、修正候補を提示してくれます。
とにかくコメントが大事だということを頭に入れておくといいでしょう。
コーディング中に優秀な補完機能として使う
Visual Studio Codeのデフォルトショートカットを元に紹介します。
入力中にGitHub Copilotの補完するコードをTab
で確定させることができます。
しかし、GitHub Copilotの提案するコードが長すぎて、途中までだけ確定させたいときがあります。そういったときはCtrl + →
で単語単位で確定させることができます。
全部気に入らないという場合は、Esc
ですべて却下できます。
使い方を見てわかったと思いますが、GitHub CopilotのSuggestは各エディターの提供する補完機能を利用して我々にSuggestされます。
つまり、補完などに割り当てているキーバインドですべて操作可能です。
前後のSuggestを見る場合はAlt + [
またはAlt + ]
で移動可能です。
別画面で複数のSuggestを見たい場合はCtrl + Enter
で開くことができます。
コメントからコードを生成する
さっぱりコードが浮かばない、またはボイラーテンプレートを書くのをめんどくさい場合に利用できる方法です。
各言語のコメントを利用してAIに指示をします。
例えばPythonでは以下のような感じです。
// 1から100までのすべての整数の和を求める
あるいはHTMLでは以下のような感じです。
<!-- ロゴとページ名および問い合わせ先へのリンクを含むヘッダー -->
わかりやすいコードのために、コメントをちりばめる感覚でコードを生成することができます。
生成されるコードの質を上げる
相手が人間だと思って書くと生成されるコードの質が向上します。
具体的には以下のようなことをするといいでしょう。
- 関数名をわかりやすくする
- 型を積極的に利用する
- コメントを書く|最重要
- 関数の意味を書く
- クラスの内容、目的を書く
- データをどのように利用するのか書く
- 与えるデータについて書く
- 求める出力内容について書く
IDE Brushesを利用する
Codeを生成するだけならば、GitHub Copilot出なくとも生成系AIならどれでも一応はできます。
GitHub Copilotの優れている部分に、IDE Brushesという機能があり、機能が開発では非常に助かります。
IDE Brushesはツールバーで提供されており、現在では以下のものが利用できます。
- IDE Brushes: Suggest test
- デバッグ用のテストコードを提案します
- IDE Brushes: Make this code more readable
- コードを読みやすく書き換える
- IDE Brushes: Add Types to this code
- コードに型を追加する
- IDE Brushes: Find a bug in this code
- コード内のバグを見つける
- IDE Brushes: Make this code easier to debug
- デバッグしやすいようなコードに書き換える
- IDE Brushes: Clean up this code
- ごちゃごちゃしたコードをきれいに整える
- IDE Brushes: Document the steps of this code
- コードにコメントで説明を加える
- IDE Brushes: Make this code more robust
- コードをよりどこでも動くものにする(CSSなどを想像してください)
- IDE Brushes: Break this code into smaller chunks
- コードを小さな要素に分割する
- IDE Brushes: Document this code
- ドキュメントを自動的に生成します
- IDE Brushes: Use a custom brush
- Github Copilotに自分で機能を指定することができます
機能ごとに分けると以下のようになります。
- デバッグコードの提案
- IDE Brushes: Suggest test
- IDE Brushes: Find a bug in this code
- IDE Brushes: Make this code easier to debug
- コードの整形
- IDE Brushes: Clean up this code
- コードの質を向上させる
- IDE Brushes: Make this code more readable
- IDE Brushes: Add Types to this code
- IDE Brushes: Document the steps of this code
- IDE Brushes: Make this code more robust
- IDE Brushes: Break this code into smaller chunks
- IDE Brushes: Document this code
- IDE Brushes: Use a custom brush
各機能が割り当てられたツールバーをクリックするだけなので、簡単に使えると思います。
どんな動作をするのかよくわからなかった人は以下のページを見ると一発でわかると思います。素晴らしいサイトです。
プライバシーについて
GitHubからGitHub Copilotがあなたのコードを使って学習しない用に設定できます。
設定項目の名称や項目は今後の更新によって変わるかもしれないので、公式ドキュメントへのリンクを載せておきます。
結語
GitHub Copilotの機能について、基本的な機能だけですが、理解できたでしょうか。
AIによって初心者でも小さな段差でつまずいてしまうことが少なくなるかもしれませんね。
プログラミングを始めたての方こそ、AI後からとともにストレスフリーに楽しくプログラミングスキルを鍛えていってください。