コードの説明
watsonx Code Assistant
生成AIを使ってコードを分析し、要約することで、コードが何をしているのかを理解する。
以下の表は、各プランの説明の種類を示している。
| プラン | 説明 | 説明 |
|---|---|---|
| トライアルプラン エッセンシャルプラン | 基本 | 生成AIを使って基本的な説明を行う。 余計なコード解析は必要ない。 |
| 標準プラン | 拡張 | ビルドされたアプリケーションが必要で、コード解析と生成AIを使用して、Javaメソッド/クラスとエンタープライズJavaアプリケーションのコード説明を強化します。 |
**Eclipse IDE ** のみ :マルチモジュール Javaで最良の結果を得るには、アグリゲーター・モジュールと各サブモジュールを Eclipse内の個別のプロジェクトとしてインポートしてください。最上位ディレクトリを単一プロジェクトとしてインポートすると Watsonx Code Assistantプロジェクトを正しく内省できない可能性があります。
言語サポート
コードに関する製造業者、販売業者、サービス提供業者は次の言語でも提供されます:
- C
- C++
- Go
- Java
- JavaScript
- Python
- TypeScript
メソッドを参照するとき、またはメソッドで CodeLens を使用するとき、 watsonx Code Assistant は特定のコード言語をサポートします。 完全なファイルを参照することは、すべての言語で機能します。 詳細については、 メソッドを使用する際の言語 サポートを参照してください。
チャットコマンドを使ってコードを説明する
チャットで「/explain コマンドを使用すると、アクティブなワークスペースで参照されているクラス、ファイル、関数、メソッドのコードを説明することができます。
次の構文を使用します。
/explain <code reference> [additional instructions]
-
プロンプトの先頭に
/explainをつけ、その後に残りの構文を続けてください。 -
<code reference>に対して、'@シンボルを入力すると、ワークスペースのクラス、ファイル、関数、メソッドのリストが表示される。 一度に1つのクラス、ファイル、関数、メソッド参照を使用する。 -
[additional instructions]は任意である。 特定の詳細が必要な場合は、指示を追加してください。
ファイルを参照する際のサイズ制限は50KBです。 この制限に達した場合は、ファイルを個々の関数に分割し、各関数を参照してください。 あるいは、関数の境界に注意して49KBでファイルを分割し、分割ごとにファイルを参照する。 どちらの方法でも、結果を統合する必要がある。
エディターのCodeLensてコードを説明する
IDEエディターでは、CodeLensはコードブロックやスニペットの前に生成AIオプションの行を表示する。
既知の問題 watsonx Code Assistant for Enterprise Java Applications拡張機能を使用している場合、起動時にCodeLensから拡張Java機能が利用できるようになるまで数秒かかることがあります。
-
コードブロックの直前にある 「説明」 オプションをクリックすると、説明が表示されます。
以下のコード例では、「
Explain | Document | Unit Testオプションは「protected voidキーワードの直前にある。CodeLensの例
CodeLens の例
-
watsonx Code Assistantチャットウィンドウが開き、「
/explain @<*item name*>コマンドを表示し、コマンドを実行し、説明を表示する。
無効化 CodeLens
CodeLens オプションを無効にしたい場合は、拡張機能またはプラグインの設定を変更してください。
Visual Studio Code :
-
拡張機能の設定を開きます。
-
Enable CodeLensの設定をクリアする。
Eclipse :
-
Eclipse IDE の設定を開く。
-
watsonx Code Assistant Settingsの項目で、
Enable CodeLensの設定をクリアする。 -
Apply をクリックして閉じる。
Javaアプリケーションの説明
標準プランアプリケーションの説明は、watsonx Code Assistant for Enterprise Java Applications拡張子でのみ利用可能です。
アプリケーションの説明は、'javax.servlet.http.HttpServlet 継承するクラスを1つ以上含むJavaアプリケーションでのみサポートされます。 これらのクラスは、'doGet、'doPost、'doPut のいずれかのメソッドを実装する必要がある。
大規模なアプリケーションでは、 サイクロマティック複雑度が最も高い40のエントリーポイントを考慮する。 エントリーポイントが40点を超えた場合、説明には、どのエントリーポイントが考慮されなかったかについての詳細が記載されたセクション( The following methods were not considered: )が含まれます。
申請に関する説明を求め、閲覧すること:
-
IDEで、説明したいアプリケーションのディレクトリ内の階層にある項目を右クリックし、 [Explain Application ]をクリックします。
Eclipse IDEでは、マルチモジュール・アプリケーションでピア・マルチモジュール・ルートがある場合、アプリケーションの説明は選択したモジュールにのみ適用されます。
-
Watsonx Code Assistantは、アプリケーションをスキャンして、各メソッドの機能の説明とともに、概要と主なサービスのリストを生成します。
-
コピーを保持する場合は 「保存」をクリックし、そうでない場合は説明を破棄する。
-
説明を開いて確認する」をクリックし、「アプリケーションの説明を保存する」をクリックしてローカルファイルに保存することができます。