VS Code
Visual Studio Code (VS Code) は、Microsoft が開発した無料のオープンソースで軽量なコードエディターです。
Code for IBM i
Code for IBM i は、Visual Studio Code (VS Code) 向けに積極的に開発されている拡張機能です。
開発者は Code for IBM i を使用して、IBM i 上でビジネスアプリケーションを作成できます。IBM i アプリケーションの開発と保守のための最新の開発環境を提供します。
以下は VS Code のコア機能、または Code for i プラグインで利用できます。
言語とコードのサポート:
– 構文の強調表示
構文の強調表示は、RPGLE (固定フォーム・フリーフォーム)、CLLE、COBOL をサポート
– MS社Visual StudioのIntelliSense と同様なコード編集アシスト機能
自動補完、ホバー、シンボルなどの機能により、よりスムーズなコーディング体験を実現
– ソースのフォーマットとライン表示
一貫性のあるコードのための組込み済みRPGLE リンター(静的な構文解析機能)が含まれておりコードの書式設定と構造をサポートします。
– アウトラインビュー
アウトラインビューは、ローカルワークスペースとリモートワークスペースの両方をサポートし、コード構造をより簡単にナビゲートして理解可能に。
– 固定フォーマット定規
固定フォーマット定規は、列に依存するRPGLEの視覚的なガイドを提供
接続性とナビゲーション
– リモート IBM i 接続
IBM i へのセキュアな SSH ベースの接続をサポート
– IFS および QSYS ソースの参照/編集
QSYS SRCPFメンバーと IFS ファイルの両方を編集するために同じ IDE で一貫したアクセスを提供します。
ビルド、コンパイル、デバッグ
– コンパイル/ビルド
統合カスタムまたはデフォルトのコンパイルコマンド、ビルドスクリプトなどを提供します。
– エラーのリストとナビゲーション
コンパイラ エラーを簡単に特定してナビゲートします。
–デバッガ統合
ステップスルーとブレークポイントを実行するILEデバッガーを統合
IBM i Db2ツール&ユーティリティ
※製品名(S/W名)は「Db2 for i」なのですが、「IBM i Db2」って‥知らない人?IBM社外の人?がネーミングしているのでしょうか。。
- Visual Explain(VE)
おなじみDb2 for iのSQL実行プラン等を確認できるSQL分析ツールですね。
- Db2 for i Notebook
SQL、CL コマンド、およびマークダウンを組み合わせた対話型ドキュメント。 反復可能なタスク、知識の共有に使用します。
文書化 & 標準化
– ILE Docsサポート
RPG、CLLE、および COBOL の標準ドキュメントブロックをサポートします。
ドキュメントブロックに基づくホバーとオートコンプリートにより、コードの理解を強化します。
– RPGLEリンター
コード品質を一目で評価します。未使用の変数、一貫性のない大文字と小文字、非推奨の構文などの潜在的な問題を即座に強調表示します。
Linter は入力時にリアルタイムのフィードバックを提供するため、コンパイル時に問題を修正できます。
エンジンはデフォルトで独断的であるため構成可能ですが、チームのコーディング標準や個人の好みに合わせて動作を調整できます。
IBM i レンダラー(Renderer)
IBM i のディスプレイファイルまたはプリンターファイルを視覚的にレンダリングし、ファイルをプレビューおよび表示します。
画面全体、特定のレコード形式、またはサブファイルレイアウトをプレビューするオプションがあります。
Git 統合
IFS のソースコードまたは IBM Projects Explorer を使用してローカルにホストされているコードでのGit ワークフローを完全にサポートします。
インライン Git の blame/変更の可視性を実現する CodeLens をサポートします。
※続いてVS Code、Code for i のインストール手順記載がありますが、省略します。
Code for IBM i の前提条件
システム・リクワイアメントは以下の通り
IBM i
– IBM i 7.3 TR8 以上
– SSH が有効になっている必要あり
i. ライセンス・プログラム 5733-SC1 (OpenSSH) がインストール済
ii. SSH デーモンを起動済(STRTCPSVR SSHD)
iii. SSHサービスが正しく機能するためにユーザー・プロファイル QSSHD がENABLEDになっていること。
ワークステーション
– Visual Studio Code がインストール済
– VS Code Marketplace から拡張機能をインストールするためのインターネット接続
– Visual Studio Code の基本的な知識があることを推奨
※Code for i としての特別なメモリ、CPU等の追加要件は無いようです。
推奨エクステンション
IBM i Development Pack をインストールすることを推奨
以下のプラグインが含まれています。
Code for IBM i
IBM i 言語 (ハイライト)
言語サポート (リンター、アウトライン・ビュー、列アシスト (固定形式)、コンテンツ・アシスト)
– RPGLE(固定フォームRPG)
– COBOL
– CL
– FF RPG(フリーフォームRPG)
Code for IBM i ウォークスルー
IBM i ノートブック
Db2 for IBM i
IBM i レンダラー
Error Lens
TODO Highlight
IBM i プロジェクト・エクスプローラー
Source Orbit
VSCode における MFA に関する考慮事項
IBM i 開発に VS Code を使用し、ユーザー名とパスワードによる認証を使用している場合は、MFA ではなく SSH 秘密鍵認証に切り替えてください。
セッション設定にパスワードを保存するのは、特にパスワードが頻繁に変更される場合や MFA が強制されている場合は負担が大きくなる可能性があります。SSH 鍵を使用すると、接続を安全に管理するためのより安全で便利な代替手段となり、MFA 要素の負担を軽減できます。
その他参考情報
Code for IBM i
IBM公式ドキュメント
Seiden Groupリソースガイド VS Code for IBM i: Resource Guide
コミュニティ・サポート
Code for i Fridaysは、コミュニティ主導の無料セッションでユーザーがIBM iでVS Codeを使用する際の課題、アイデア、解決策を共有します。
初心者から経験豊富なユーザーまで学習、質問、他のユーザーと交流ができます。登録や詳細は以下を参照。
Seiden Group [Code for IBM i Fridays]( IBMi
ibmiservices
db2fori
IBMi7.6
IBMiSQLhttps://www.seidengroup.com/vs-code-for-i-fridays/)