GitHub Copilotとは? 開発スピードを爆速にするコーディング支援AI|東京のWEB制作会社・ホームページ制作会社|株式会社GIG
BLOG
ブログ
GitHub Copilotとは? 開発スピードを爆速にするコーディング支援AI
2023-03-31 制作・開発
こんにちは。サービス開発事業部長の石倉です。
本記事では『GitHub Copilot』を活用した開発スピード向上の取り組みについてご紹介します。
関連記事:GitHub Copilotを実際に使ってみた感想。コード補完AIを使うと、どのくらい仕事が効率化される?
関連記事:GitHub Copilot Chatを使ってコーディングを効率化。導入方法から活用シーンまで解説します
GitHub Copilotの概要
GitHub Copilotとは、コーディング中にAIがコードの提案をしてくれる機能です。
何かコードを書き始めるか、コードで何をしたいかを説明する自然言語のコメントを書くことでGitHub Copilotがコードの提案をしてくれるようになります。
GitHub Copilotは現在以下の開発環境で利用することができます。
- Neovim
- JetBrains IDE
- Visual Studio
- Visual Studio Code
実際の利用シーン
言葉だけではGitHub Copilotの便利さを伝えきれないので、スクリーンショットも含めて実際の利用シーンを紹介いたします。
今回の例では、簡単に「現在からみた次のうるう年を表示する」といったPHPプラグラムを作っていきたいと思います。
まずはPHPファイルを作成し「次のうるう年を取得する」というコメントを書いてみました。すると「getNextLeapYear」という関数がまるごと提案されています。
関数名もちゃんと意味の通った命名になっていますね。内容もよさそうです。
「isLeadYear」という関数は存在しないのですが、どうなるのでしょう。提案を受け入れてみます。
今度は、次に書くであろうコメントアウト自体が提案されました。
決して自身が入力したコードやコメントから提案をするだけではなく、コード全体の流れを読みながら提案をしてくれるようです。
コメントアウトの提案を受け入れてみます。
すると、今度は最初に出てきた「isLeapYear」という関数自体を提案してくれました。
関数名も「isLeapYear」という名前で、boolean型が返却されることがわかるようなよい命名かと思います。内容も問題なさそうですね。
提案を受け入れます。
最後に取得した、うるう年を表示するecho処理を提案してくれました。この提案も受け入れてプログラムは完成となります。
完成したコードの全体は以下です。自分自身では最初のコメントしか書いていません。
実際に動かした結果が以下です。問題なく動いていますね。
GitHub Copilotを使うことによるメリット
記事内で紹介したプログラムは非常に単純なものです。しかし、実際にプロジェクト単位の開発を行うと、以下の点で非常に優れていると感じました。
- 言語単位だけではなく、フレームワークも区別し規則に則った提案を行ってくれる。
- 現在のファイルだけではなく、プロジェクト内のファイルの情報も含めた提案を行ってくれる。
- こちらから提案を誘導するようなコメントも書いていなくとも、何を書きたいのかを予測して一歩先の提案をしてくれる(この体験が素晴らしい)
実際にGitHub Copilotを活用することで、開発スピードは確実に向上していると感じます。
GitHub Copilotの将来
正式な機能ではありませんが、現在GitHub Nextとしての取り組みで開発されているプロトタイプの機能もいくつかご紹介しておきます。
これらの機能が将来的に正式版となれば、「コードリーディング」「コーディング/プログラミング」「テスト」「CLI操作」まであらゆる開発がさらに効率化されることでしょう。
GitHub Copilot Labs
拡張機能をインストールすることで、以下の機能が利用できるようになります。
- コードの説明
- ほかのプログラミング言語へのトランスパイル
- 型の追加
- デバッグコードの追加
- エラー処理の追加
- コメントの追加
- テストコードの作成
- 不要コードの削除
- バグ修正
- コードの切り分け
GitHub Copilot CLI
ターミナル上にGitHub Copilotを組み込むことができるようになり、シェルにやってほしいことをGitHub Copilotに伝えるだけで、実現するためのシェルコマンドを提案してくれるようになります。
株式会社GIGでは全社でGitHub Copilotを導入しています!
GIGでは福利厚生で『GitHub Copilot』を利用することができます!
現在「一緒に学びながら成長していきたい!」と意欲のある仲間を募集していますので、興味のある方はお気軽にエントリーしてください!
GIG採用サイトからの応募はこちら
Wantedlyからの応募はこちら
話を聞いてみたい方も歓迎です。お気軽にご連絡ください!
石倉 彰悟(いっしー)
株式会社GIG SkillShare事業本部 開発事業部 事業部長 ソーシャルゲーム会社でカスタマーサポートとして従事した後にエンジニアに転身し、大規模決済システムやEC系Webサービス等の構築を経験。2018年にGIGにジョインし「Workship」の開発組織の責任者としてより良いサービス提供を行うための施策立案、開発を行っている。