リファクタリングをPythonで実践!基本手法とコード例・注意点まで
日本語の文章作成ならWordやGoogle Document、Pages(Mac)で事足りますが、プログラミング言語を作成・編集する場合はテキストエディタが必要になります。
Pythonプログラムであれば「〇〇.py」でファイルを保存したり、「〇〇.py」を開いて編集できるようになりますね。
一言でテキストエディタといってもたくさん種類がありますので、プログラミング初学者にとってどれがおすすめかをご紹介していきます。
1.Pythonでの開発にテキストエディタは必要?
パソコンでPythonをプログラムする方法は、主に2通りあります。
- コマンドプロンプトやターミナルでプログラムを作成
- テキストエディタなどでプログラムを作成、保存
1.のコマンドプロンプトもしくはターミナルを用いる場合は、スクラッチ的にプログラムを作成し、テストすることに適しています。
一方、プログラムを保存しにくい、という欠点があります。
上図:Windows PowerShellでPythonをプログラムする様子
2.のテキストエディタを用いる場合、事前にテキストエディタのソフトウェアをPCにインストールする必要はありますが、プログラムをファイルで管理できるのでアプリ開発などの際に便利です。
Pythonを使ってWebアプリやゲーム、AIなどを開発する場合、テキストエディタは必須となるでしょう。
2.テキストエディタとIDEどちらを選ぶべき?
Pythonの参考書やチュートリアル動画を見ていると、テキストエディタを用いる場合と、PyCharmなどのIDE(統合開発環境)を用いる場合の2パターンあります。
Python初学者にとってどちらが適しているかお伝えします。
①テキストエディタとは
テキストエディタは、文字ファイルを作成・編集するソフトウェアです。一般的なプログラミング言語は概ね対応しており、Pythonに限らずJavaScriptやPHPなどの開発時にも利用できます。
テキストエディタによっては拡張機能やパッケージなどを加え、IDEのように操作をカスタマイズすることも可能です。
②IDEとは
IDE(Integrated Development Environment :統合開発環境)は、テキストエディタの機能に「プログラムの実行」や「ライブラリの管理機能」「編集記録」など、開発時にあると便利な機能を加えたアプリケーションです。
便利な機能がたくさん備わっていますので、使いこなせれば開発効率は上がりますが、最初に使い方を学習する必要があるでしょう。
参考までにPyCharmなどのPython用IDEをインストールして使用してみると、テキストエディタとの違いがよくわかりますよ。
③初心者や個人開発する方にはエディタがおすすめ
Pythonの学習をはじめた時に多くの方が「テキストエディタにするべきか」「IDEにするべきか」悩むと思います。
絶対にどれがいい、という答えはありませんので、まずはご自身で2つ3つインストールして使ってみることをお勧めします。
その結果、多くの方はテキストエディタを選択するようです(筆者もその一人)。理由は、テキストエディタの方が簡単に使用でき、PCメモリ負荷も少なく、また直感的にプログラムを作成・制御できるからです。
ここからはテキストエディタによりフォーカスした内容をお届けします。
3.テキストエディタを選ぶときのポイント
現在テキストエディタは80種類以上あり、どれをインストールするか迷うことでしょう。使用するテキストエディタをひとつに絞る必要はありませんが、ポイントを押さえておくとお気に入りのテキストエディタが早く見つかり、プログラムに専念できます。
ここではテキストエディタを選ぶポイントを5つご紹介します。
①多くのユーザーが使っているかどうか
テキストエディタは基本的にシンプルで、取り扱い方法などを学ばなくても直感的に利用できます。しかし、業務レベルでの使用になると話は別です。
サーバー上のプログラムを手元のテキストエディタで編集したり、データベースの中身を手元のテキストエディタで確認したり、様々な応用機能が必要になってきます。
こうしたデフォルトのテキストエディタにはない機能を追加・使用する際、「情報」が重要になります。
利用者が多いほど情報はたくさんありますので、QiitaやStackoverflowなどのコミュニティで、テキストエディタに関する投稿数を確認してみるといいでしょう。
Qiita | Stackoverflow | |
Visual Studio Code | 8,024 | 163,481 |
Atom | 6,172 | 37,206 |
Vim | 18,212 | 102,637 |
代表的なテキストエディタの投稿数を表にまとめました。Visual Studio Codeというテキストエディタに関する投稿が多く、ユーザー数も多いことが予想できます。
ユーザー数が多いということは「使いやすい」という裏付けにもなります。テキストエディタを選ぶ際は、「ユーザー数」をポイントにおくと良さそうですね。
②日本語対応しているか
テキストエディタの種類は数多くありますが、最初から日本語対応しているエディタは「NotePad++」か「秀丸エディタ」ぐらいです。Windowsの場合であれば問題ありませんが、MacだとNotepad++も秀丸エディタもインストールできません。
Visual Studio Codeはワンクリックで表示を日本語に変更できます。AtomやSublime Textなどは手動で日本語にセットアップする必要があるので覚えておきましょう。
③費用はいくらかかるか
テキストエディタは基本的に無料で使えます。ただし一部のテキストエディタは有料で、Sublime Textは$99必要になります。
いくつかテキストエディタを使って、無料で十分か、有料のものを使う方が開発効率いいか検討するといいでしょう。
④どのような機能があるか
テキストエディタによって機能はいろいろですが、概ね以下の機能はデフォルトで備わっています。
・エラープログラムのハイライト
・改行時の自動インデント
・シングル・クォーテーションやカッコのペア作成
・ファイル種類毎のプログラム自動識別
Visual Studio CodeやAtomなど人気のあるテキストエディタは、外部で作成された拡張機能を追加し、プログラミングを手伝ってもらうことも可能です。よく使う拡張機能は、サーバーとの連携やフレームワーク・ライブラリの補完機能でしょう。
使いたい機能が備わっているか、拡張機能として追加できるか、確認してからインストールすることをおすすめします。
⑤サポートは充実しているか
はじめてテキストエディタを使用する時は、不安ですよね。
基本的に無料のテキストエディタは、直接サポートを受けることは難しいです。しかし、プログラマが集うコミュニティ上で質問すると回答が得られることがあるので、有効活用しましょう。
GitHubやStackoverflowなどの英語サイト、もしくは日本語サイトのteratailがおすすめです。それでも心細い方は、プログラミングスクールやオンライン教材を検討してみてくださいね。
4.おすすめなテキストエディタ5選
プログラミング初学者から現役エンジニアまで使用している人気のテキストエディタをご紹介します。
人気の高いテキストエディタについて、特徴やおすすめできる人を表にまとめました。
テキストエディタ | 特徴 | おすすめな人 |
Visual Studio Code | 世界中で人気があるテキストエディタ | 手っ取り早くPythonプログラムをはじめたい方 |
Atom | 見た目がやさしいテキストエディタ | すこしこだわった開発環境を構築したい方 |
Sublime Text | スタイリッシュで慣れれば使いやすいテキストエディタ | 本格的な開発環境を構築したい方 |
Anaconda | テキストエディタやIDEを含む開発環境 | テキストエディタやIDEなどいろいろ試したい方 |
Jupyter Notebook | ノート感覚でプログラムを記述できるソフトウェア | テスト的にPythonプログラムを書きたい方 |
ここからは、それぞれの特徴や料金などを詳しく見ていきましょう。
①Visual Studio Code
Visual Studio Codeは、Microsoft社が2015年にリリースした人気のテキストエディタです。デフォルトの状態でテキストエディタ内でコマンド操作もでき、PythonをはじめJavaScriptやPHPなど多くの開発場面で利用されています。
余談ですが、筆者はプログラミングだけでなく、ライティングにもこちらのテキストエディタを利用しています。理由は、軽量かつ同じキーワードを補完表示してくれるからです。
料金 | 対応OS | 管理運営 |
無料 | Windows, Mac, Linux | Microsoft |
②Atom
Atomは、2014年に開発プラットフォームのGitHubからリリースされたテキストエディタになります。
GitHubとの連携機能に優れており、ボタン操作で簡単に連携できるのが特徴です。
初期状態はVisual Studio Codeよりシンプルで、パッケージをインストールして機能を拡張していきます。
料金 | 対応OS | 管理運営 |
無料 | Windows, Mac, Linux | GitHub上 |
③Sublime Text
Sublime Textは、2008年Jon Skinner氏によって開発・リリースされたテキストエディタです。
他のエディタは新規ファイルを追加する場合2ステップは必要ですが、Sublime Textはボタンをワンクリックするだけで新規ファイルを追加できます。
その他にも関数や変数のところにジャンプできる「SublimeCodeIntel」や列を揃えてくれる「Alignment」など、有料ならではの便利な機能が用意されています。
料金 | 対応OS | 管理運営 |
$99 | Windows, Mac, Linux | Sublime HQ |
④Anaconda
Anacondaは、テキストエディタではなく開発環境になりますが、おすすめなのでご紹介します。
Anacondaをインストールすると、Visual Studio CodeやPyCharmもすぐに使えるようになります。
Python、R言語を検討されている方は必見のソフトウェアといえるでしょう。
料金 | 対応OS | 管理運営 |
無料 | Windows, Mac, Linux | Anaconda, Inc. |
⑤ Jupyter Notebook
Jupyter Notebookは2015年にリリースされたノートブック形式のエディタです。通常Pythonプログラムを実行すると、ファイル内に記述されたすべてのプログラムが関係します。
しかし、Jupyter Notebookなどのノートブック形式を用いると、一定の範囲内のプログラムのみを実行することが可能です。テストプログラムを作成するような開発初期段階で役立つシステムになります。
料金 | 対応OS | 管理運営 |
無料 | Windows, Mac, Linux | Jupyter |