コーディング支援ツールはAI技術を活用することで、どのように進化してきたのか。「コード補完」「ローコード」「静的解析」などとの違いを踏まえて解説する。
人工知能(AI)技術を用いたコーディング支援ツール(以下、AIコーディングツール)の利用が開発現場で広がりつつある。コーディングを支援するツールはAI技術を取り入れることで顕著な進化を遂げているが、実は全く新しい技術というわけではない。
AIコーディングツールは、その前身となったツールから何が進化したのか。以前から使われてきた「インテリジェントなコード補完」「ローコード開発」「静的解析」などと比べてみよう。
AIコーディングツールは、AI技術を用いてソースコードを自動生成したり、修正内容を提案したり、エラーを特定したりするものだ。では、AIコーディングツール登場以前の「コーディング支援」とはどのようなものだったのか。
インテリジェントなコード補完は、プログラム作成時、書きかけのソースコードを完成させるまで支援する機能だ。簡単な構文ミスやスペルミスの修正もできる。例として、OS「Linux」のシェル(コンピュータに対する命令を解釈するプログラム)である「Bash」に付随するコマンドライン補完機能が挙げられる。
「Ubuntu」といったLinuxディストリビューション(配布用パッケージ)でコマンド操作ツール「端末」(ターミナル)を開き、文字を幾つか入力してタブキーを押すと、入力した文字に基づいたコマンドの候補リストが表示される。
以下は、ターミナルに「bas」という文字を入力した場合の例だ。
chris@chris-Gazelle:~$ bas base32 base64 basename basenc bash bashbug chris@chris-Gazelle:~$ bas
ユーザーがコマンドを誤って入力した場合はその誤りを検出し、正しいコマンドの候補を提供する。以下は「bash」と間違えて「bassh」と入力してしまった場合の例だ。
chris@chris-Gazelle:~$ bassh Command 'bassh' not found, did you mean: command 'bash' from deb bash (5.1-6ubuntu1) command 'bssh' from deb avahi-ui-utils (0.8-5ubuntu5) Try: sudo apt install <deb name>chris@chris-Gazelle:~$
インテリジェントなコード補完の起源は20世紀後半にさかのぼる。当時のプログラマーは、簡単なスペルチェック機能を用いてソースコードの入力ミスを確認し、ソースコードの精度を高めていた。
一方で、インテリジェントなコード補完は、ソースコードの生成や修正の提案ができるわけではない。その役割はあくまで、入力されたソースコードが事前に設定したルールやデータと合致するかどうかを確認するにとどまる。
ローコード開発ツールを使うと、手動でのコーディングをほとんどせずにアプリケーションを作成できる。ローコード開発ツールとは、最低限のソースコード記述による開発を可能にするツールだ。インテリジェントなコード補完のようにソースコード行ごとの補完と検証をするものではなく、プログラム全体を作成するのがローコード開発ツールの目的だ。非技術者でもソフトウェア開発ができるというメリットがある。
ユーザーは、ローコード開発ツール内で提供されるソースコードモジュールを組み合わせることでアプリケーションを作成できる。既存のモジュールを組み合わせることでしかアプリケーションを構築できないため、一般的な開発ツールと比較して狭い範囲の用途にか使えない。
「SQL」「FOCUS」などの「第4世代言語」(エンドユーザーが自ら開発できるよう設計されたプログラミング言語)の登場後に、ローコード開発ツールが誕生したと言われている。
静的解析ツールは、ソースコードに潜むセキュリティの脆弱(ぜいじゃく)性やバグ、その他の不具合を自動的に解析して見つけ出すことができるツールだ。
静的解析ツールはほとんどの場合、ソースコードの完成後に使用される。これは、ソースコードを書く段階から使用されるAIコーディングツールとは対照的と言える。
従来、静的解析はルールベースで解析していたため、AI技術を使うことはほぼなかった。しかし、セキュリティベンダーSnykの「DeepCode AI」など、静的解析と機械学習の概念を組み合わせ、リアルタイムにソースコードを解析できるようにしたツールも登場し始めている。
後編は、主要なAIコーディングツールを紹介する。
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
2024年スポーツマーケティング基礎調査 MLBファン人口が大幅増
マクロミルと三菱UFJリサーチ&コンサルティングは、共同企画として「2024年スポーツマー...
「マーケティングオートメーション」 国内売れ筋TOP10(2024年11月)
今週は、マーケティングオートメーション(MA)ツールの売れ筋TOP10を紹介します。
広告制作に生成AI活用 成功企業が語る「100万ドルのコスト削減」だけじゃないメリット
IT管理プラットフォームのAteraは、「Sora」や「Midjourney」などの生成AIツールを使用し...