VS Codeの拡張機能とは、エディタに言語支援、コード整形、Git連携などの機能を追加する仕組みです。
便利そうな拡張機能を増やすだけでは、開発効率や品質は安定しません。
使っている言語とチームの課題に合わせて役割を分け、設定とレビュー方法をそろえる必要があります。
この記事では、コード品質、Git連携、入力補完、デバッグ、資料作成、コーディング支援に分けて10件を紹介します。
すべてを入れるのではなく、困りごとに合うものから試してください。
導入前に確認する三つの基準
拡張機能は、目的、役割の重複、チーム運用の三点で選ぶと整理しやすくなります。
- 目的:整形の差分を減らす、変更の背景を追う、入力ミスを減らすなど、解決したい問題を一つ決めます。
- 役割の重複:同じ処理を複数の拡張機能に任せると、保存時の動作や表示が競合しやすくなります。
- チーム運用:個人だけで使う設定と、リポジトリで共有する設定を分けます。
配布元、説明、必要な設定も確認し、使わなくなった拡張機能は無効化または削除します。
おすすめ拡張機能の比較
| 役割 | 拡張機能 | 向いている場面 | 導入時の注意 |
|---|---|---|---|
| 静的解析 | ESLint | JavaScriptやTypeScriptの問題候補を早めに見つけたい | プロジェクトのルールと一致させる |
| コード整形 | Prettier | 空白、改行、記号の置き方をそろえたい | ESLintとの役割分担を決める |
| 基本書式 | EditorConfig for VS Code | エディタが異なるメンバー間で改行コードやインデント幅をそろえたい | プロジェクトの設定ファイルを共有する |
| 変更履歴 | GitLens | 行ごとの変更者やコミット履歴を確認したい | 必要な表示だけを使う |
| レビュー | GitHub Pull Requests and Issues | Pull RequestやIssueをエディタ内で確認したい | 対象リポジトリと権限を確認する |
| CSS補完 | IntelliSense for CSS class names in HTML | HTMLやJSXでクラス名の入力ミスを減らしたい | 参照対象のCSSやSCSSを確認する |
| パス補完 | Path IntelliSense | importやrequireのパス入力を短くしたい | 別名パスの設定と実際の構成を合わせる |
| ネイティブデバッグ | CodeLLDB | C++やRustの実行状態を詳しく追いたい | 対象言語とデバッグ情報を確認する |
| コード画像 | Polacode | 説明資料用のコード画像を作りたい | 共有時は検索できるコード本文も添える |
| コーディング支援 | GitHub Copilot | 定型処理や実装案の下書きを得たい | レビューと情報管理のルールを先に決める |
コード品質とフォーマットをそろえる
1. ESLint
静的解析とは、コードを実行せずに規則違反や問題の可能性を調べることです。
ESLintはJavaScriptやTypeScriptを対象に、チームで決めた規則に沿って問題候補を表示します。
警告を出す規則はプロジェクトごとに異なるため、拡張機能を入れるだけで品質が保証されるわけではありません。
まずルールを共有し、どの警告を修正必須とするかを決めます。
2. Prettier
コードフォーマッターは、空白、改行、インデントなどの見た目を一定の規則で整える道具です。
Prettierを保存時に動かすと、手作業の整形を減らし、レビューで書式の差分を追う時間を抑えられます。
一方で、ESLintと同じ項目を処理すると競合することがあります。
ESLintは問題の検出、Prettierは見た目の整形というように、担当を分けて設定します。
3. EditorConfig for VS Code
EditorConfig for VS Codeは、プロジェクトルートの.editorconfigを使い、改行コードやインデント幅などの基本書式をそろえます。
VS Code以外のエディタを使うメンバーがいる場合も、共通の設定ファイルを基準にできます。
ESLintやPrettierより広い範囲を整える道具ではないため、基本書式をEditorConfig、言語固有の検査と整形をESLintやPrettierに任せると役割が明確になります。
元記事にあった設定例は、次のように保存時の整形と対象言語を明示できます。
{
"editor.formatOnSave": true,
"eslint.validate": ["javascript", "typescript"],
"prettier.requireConfig": true
}
この例をそのまま全案件へ適用するのではなく、既存の設定ファイルとチームの合意を確認してから使います。
Gitの変更履歴とレビューを追いやすくする
4. GitLens
GitLensは、コミット履歴や行ごとの変更情報をVS Code内で確認しやすくします。
ブレイム表示は、各行を最後に変更したコミットをたどるための表示です。
コードだけでは意図を判断しにくいとき、関連する変更履歴へ移動する手掛かりになります。
表示項目が多いと作業の邪魔になる場合があるため、日常的に使う機能だけを有効にします。
5. GitHub Pull Requests and Issues
GitHub Pull Requests and Issuesは、Pull Requestの一覧確認、レビュー、Issueの参照などをVS Code内で進めるための拡張機能です。
修正対象のコードとレビューコメントの往復を減らせるため、指摘された箇所を確認しながら作業できます。
ただし、レビュー基準そのものを拡張機能が決めるわけではありません。
承認者、確認項目、マージ条件は、チームの開発手順として別に定めます。
入力ミスとファイル探索を減らす
6. IntelliSense for CSS class names in HTML
IntelliSense for CSS class names in HTMLは、プロジェクト内のCSSやSCSSを参照し、HTMLやJSXでクラス名の候補を表示します。
似た名前のクラスが多い案件では、つづりの間違いを減らし、定義済みの名前を探す時間を短くできます。
候補が表示されない場合は、CSSの配置や拡張機能が参照する範囲を確認します。
7. Path IntelliSense
Path IntelliSenseは、importやrequireでファイルパスを入力するときに候補を表示します。
階層が深いプロジェクトでは、ファイル名のつづりや相対パスの段数を手作業で確かめる負担を減らせます。
プロジェクトが独自の別名パスを使っている場合は、実際のビルド設定と補完の設定をそろえます。
デバッグとコード共有を支える
8. CodeLLDB
CodeLLDBは、LLDBを使ったネイティブコードのデバッグをVS Codeへ統合します。
主な対象はC++やRustで、ブレークポイント、変数の確認、ステップ実行などに使います。
元記事ではPython向けとも読める説明でしたが、Pythonの一般的なデバッグ用途と一括りにせず、対象言語に合うデバッガーを選ぶ必要があります。
9. Polacode
Polacodeは、選択したコードを説明資料に載せやすい画像へ整える拡張機能です。
社内Wikiや発表資料で短いコード例を見せる用途に向きます。
ただし、画像内の文字は検索やコピーがしにくく、読み上げでも伝わりません。
コード画像だけで情報を完結させず、コピーできるコード本文と説明を併記します。
コーディング支援をレビュー前提で使う
10. GitHub Copilot
GitHub Copilotは、入力中のコード候補や実装案を提示するコーディング支援機能です。
定型処理の下書きには使いやすい一方、提案が仕様、セキュリティ要件、ライセンス上の条件に合うとは限りません。
採用するコードは開発者が読み、テストとレビューを通します。
チームで使う場合は、入力してよい情報、提案を採用する基準、レビュー担当を決めてください。
導入手順と運用ルールは、GitHub Copilotをチーム導入する手順で詳しく整理しています。
失敗しにくい導入順
- 標準機能を確認する:VS Code本体で目的を満たせるなら、拡張機能を増やさずに済みます。
- 品質管理から一つずつ試す:ESLint、Prettier、EditorConfigの役割を分け、保存時の動作を確認します。
- 案件に必要な機能を足す:Git、CSS補完、パス補完、デバッグなど、現在の作業に必要なものだけを追加します。
- チーム設定へ反映する:個人環境で問題がないことを確かめ、目的と設定を開発手順書に残します。
複数の拡張機能を同時に入れると、不具合が起きたときに原因を切り分けにくくなります。
一件ずつ追加し、保存、ビルド、テスト、Git操作への影響を確認するほうが安全です。
チームで共有したい確認項目
- 拡張機能の名前と配布元
- 導入する目的と対象プロジェクト
- 共有する設定と個人に任せる設定
- 保存時に自動実行する処理
- 警告を修正必須とする範囲
- コード提案や自動修正を採用するときのレビュー方法
- 不要になった拡張機能を見直す時期
この項目を短い手順書に残すと、新しいメンバーも同じ意図で開発環境を整えられます。
拡張機能だけでは解決できない問題
拡張機能は、入力、整形、履歴確認などの個別作業を助けます。
要件の曖昧さ、レビュー待ち、テスト不足、運用手順の欠落は、拡張機能を増やすだけでは解消しません。
チーム全体の手戻りを減らす方法は、開発効率化の進め方も参考にしてください。
まとめ
最初に整えたいのは、ESLint、Prettier、EditorConfigによる品質管理と書式の統一です。
次に、GitLensとGitHub Pull Requests and Issuesで変更の背景とレビューを追いやすくします。
CSSやパスの補完、CodeLLDB、Polacode、GitHub Copilotは、対象言語と作業内容に合わせて追加します。
導入数ではなく、各拡張機能の目的、設定、確認方法をチームで共有できているかが判断基準です。
この記事に関連する株式会社greedenの取り組み
拡張機能は、チームで目的と設定をそろえてこそ開発品質につながります。株式会社greedenは、要件定義から設計、実装、テスト、保守改善まで一気通貫でWebシステム開発を支援します。
