はじめに
Pythonプログラミングでよく利用するエディタとして「VSCode」が挙げられます。
本稿では、以下の6つの観点からおすすめするプラグインを紹介したと思います。
カテゴリ |
---|
必ずインストールすべきプラグイン |
分析系およびフォーマット関連 |
テストおよび環境関連 |
コーディングおよびドキュメント関連 |
多機能との連携関連(インターフェースなど) |
パッケージの拡張関連 |
\自身のスキルを向上するには技術書で!!/
月額¥980で技術書が読み放題!!
- ビジネススキルとマインド向上したい!!
- 決断や行動を先送りにしてしまう方!!
必ずインストールすべきプラグイン
Python
VSCodeでPython開発をする上で、必ずインストールする必要がある公式プラグイン。
Pythonに関する機能の拡張を行うことができます。主に、デバッグやPythonインタープリタなどが利用できるようになります。
Better Comments
Better CommentsはコメントをデコレーションしてくれるVSCodeでの開発を行っている方はほぼ導入しているといってもいいくらい有名なプラグインとなります。
TODOやアラート、ハイライトなど好きなタグを追加して新しいカテゴライズを作ってコメントを管理することができるので、共同開発などでは重宝します。
DotENV
環境変数などを設定しておくファイル「.env」を管理するためのプラグインとなります。
pythonでは、「python-dotenv」という拡張機能をインストールすることで、「.env」ファイルで環境変数を定義して利用することができるようになります。
Laravelなどさまざまな開発で環境変数を定義しておくために「.env」ファイルは利用されていますので、管理するためにも本プラグインのインストールは必須だと言えます。
分析系およびフォーマット関連
Pylint
PylintはPython開発での生産性を向上させる機能であり、コード品質に対するフィードバックとして、コード中のミスやリファクタリングが必要な箇所の特定などを行うことができます。
とくに、よく利用頻度が高いのが分析としてバグが発生しそうな箇所やバグ部分などを評価してくれます。
大規模コード開発などでもかなり重宝する機能です。
一応pythonプラグインにも同封されているので追加で拡張機能をインストールする必要はないかと思います。
flake8
flake8はPythonのコードチェッカーツールとなります。Pythonコーディングに対して問題点を効率よく見つけることができます。このflake8は、PyFlakesやpycodestyleなどのライブラリのラッパー拡張機能のようです。
flake8の公式では、どのような警告があるかを確認することができます。
flake8の拡張機能は下記となります。
autopep8
autopep8は「PEP8」コーディングスタイルに準拠したコードフォーマッタ拡張機能です。PEP8に準拠したスタイルに自動整形してくれるのでとても便利です。
このautopep8は「Pycodestyle」ライブラリによって報告される問題をほとんど自動修正してくれるので導入は必須と言えるでしょう。
Black Formatter
Pythonのフォーマッタの代表的なのがこの「Black」ですが、このライブラリがVSCodeの拡張機能として登場しました。
autopep8など類似ライブラリは多く存在していますが、Pythonのフォーマッタで一番人気なのがBlackではないでしょうか?筆者もBlackを利用しています。
この拡張機能も他と同様に自動でPythonのコードの書き方を修正してくれます。もちろん「PEP8」に準拠しています。
他のフォーマッタとの違いとしては、制限が他のより強いといわれており、自由に設定ができません。ルールを統一する意味でもBlackを使うことを推奨します。
isort
isortはimport文をアルファベット順にソートしたり、タイプ別にじ自動振り分けを行ってくれるライブラリです。
基本的にはPython3.6以降が必要となっていますが、Python2もサポートしています。コードの見た目をよくしてくれるので、入れておいて損はないと思います。
テストおよび環境関連
Docker
Pythonだけでなく多くの開発で利用されている「docker」の拡張機能です。基本的にVSCode + dockerでの作業環境では必須ですね、
Python Test Explorer for Visual Studio Code
Pythonの拡張機能をインストールすればPytestを利用することができます。
この拡張機能はVScodeのサイドバーのテストビューに検出されたすべてのテストや状態を表示してくれます。また、エラーレポートなども表示することができ、直感的にわかりやすい設計となっている拡張機能です。
コーディングおよびドキュメント関連
autoDocstring
Pythonの関数に対して、docstringのテンプレートを自動で生成してくれる拡張機能となります。主に、Pythonの関数やメソッドの引数名、型アノテーションに応じたテンプレートを用意してくれます。
docstringとは関数などの仕様を利用者に対して説明するための定義を埋め込んだ形で記述することで、可読性を高めるために利用されます。
Path Intellisense
Path Intellisense はコード入力中にファイル名を予測し、オートコンプリートする拡張機能です。
ファイルパスを入力する際に「スラッシュ」を使うと予測変換候補が表示されるので、コード入力の時短につながる拡張機能です。
Python Indent
Python Indent拡張機能は、関数内の引数を改行した際に、引数の先頭を合わせて自動インデントしてくれます。
引数の先頭を揃えてくれるので、可読性を重視したい方向けの拡張機能となります。
Code Spell Checker
コーディングで利用する変数は基本的に英単語をベースとして記載します。Code Spell Checkerはスペルミスを自動で検出してくれる便利な拡張機能であり、PythonだけでなくjavascriptやPHPなど様々な言語に対応しています。
どんな人でもスペルミスはするものとして考え、そのままリリースした際は直す時に再テストしなければいけないなど、修正範囲が広くなってしまいます。
保守性を高めるためにも入れておきたい拡張機能ですね。
多機能との連携関連(インターフェースなど)
Live Share
Live ShareはVSCode 上でソースを共有し、編集やデバッグをリアルタイムで行うことができる機能です。リモート作業が多い現代ではこのLive Shareは重宝する拡張機能と言えます。
特に確認してもらいたい箇所へ誘導したり、直接書き込んだりすることができるので、コードレビューなどが捗ること間違いなしです。
Microsoft公式なので、チーム開発を行なっている方は是非導入してみてはいかがでしょうか。
Material Icon Theme
コーディングというよりは、作業環境をより良くするための拡張機能です。この拡張機能を導入すると、フォルダに対してアイコンが表示されるようになり、見た目がすっきりとします。
視認性がアップするので、ぜひ見た目にこだわりがある方はインストールしてみては?
パッケージの拡張関連
Python Productivity Boosters
Python Productivity Boostersという拡張機能は、Python Indentによるインデントの改善やAuto Docstring、スペルチェッカーなどが詰まった拡張機能です。
Python Pro Essentials
Python Pro EssentialsはPylint やFlake8といったコード解析ツール、BlackなどのフォーマッタやTest Explorer、GitLensなどが詰まった拡張機能です。
最後に
他にも開発に役立つ拡張機能は多くありますが、Python開発においては上記をインストールしておけば基本的な開発は問題ないと思います。