見出し画像

AI-first Code Editor "Cursor" を使う

Cursor という Visual Studio Code をフォークして作られたエディタを使ってみました。今回、AIの支援を受けて、これまで触ったことなかった言語でプロジェクトを作ることを目的として触ってみましたが、あっという間に動くアプリを作ることができました。

Cursor エディタ画面

ツールの概要

Visual Studio Code をフォークして作ったコード・エディタなので、やれることは同エディタと変わりません。同ツールとの違いは、ChatGPTとの連携機能がネイティブで統合されており、言語モデルと対話しながらプログラムを組み上げることができるようになっていることです。

同ツールの特徴は下記の通り。

  • コード生成機能
    コード・エディタ上に書きたい処理を自然言語で書くと、ChatGPTがコードを記載してくれます。ファイルの内容を把握したうえでコード生成を行ってくれるため、開発の背景情報(どんな言語で、など)を引き渡すことなく、最適なコードを生成してくれます。

  • 対話機能
    エディタ上のプロンプトで会話する際に、プロジェクトの内容やドキュメントをインデックス化することが可能です。これにより、ChatGPT上でコードを作成するのとは異なり、ほかのファイルやサービスのドキュメントを念頭に置いたコード生成を行うことを可能とします。

  • デバッグ機能
    ファイル実行時にターミナルに表示されたエラーコードをプロンプトに引き渡してエラーを解消させるためのコードを生成、生成後のコードをオリジナルのコードにマージすることが可能です。

使ってみての感想

今回、仕事の関係で Cursor 上で Scala 3を使ってプロジェクトを作成してみました。既に無料枠のGPT-4 50回分は使い切って、GPT-3 turbo で2-3日使っていることろですが、だんだんツールの操作にも慣れてきて、その価値が見えてきました。

  • プログラミング言語の文法理解やゼロからのコーディングは不要
    知らない言語を使ってプロジェクトを作り始めましたが、プリセットの関数名やパラメータの引き渡し方法については、エディタが考えてくれるので、文法等を学ぶ必要はありませんでした。

  • 実行環境は利用者側でセットアップが必要
    エディタ側でプログラムは書いてくれますが、実行環境を整備は自分でする必要があります。今回(Scala)の場合は、公式ドキュメントに従った環境整備を行いました。

  • プロジェクト全体の最適化は利用者で検討が必要
    単一ファイル上でコーディングはしてくれますが、どのようなクラス/関数を作っていくか、関数の分割や統合など、コード全体の最適化は開発者側が意識していく必要があると思いました。

  • GPT-3.5とGPT-4は別物
    無料枠が終わってから、GPT-3.5を使ってコードを書いていましたが、正直精度が全然違います。多くの場合、生成されたコードを実行してもエラーになりますが、その後の解決に向けた提案の精度がGPT-4のほうが良く、GPT-3.5なら3日かかって解消される問題も、GPT-4なら1時間で解消できるといった感じです。

引き続き、Cursorを使ったプロジェクト開発の感想はポストしていこうと思います。

この記事が気に入ったらサポートをしてみませんか?