Description
Pythonでちょっとしたツールを作る際、コードの書き方やパッケージング、自動テストの仕方など、どのようにしようか、考えるかと思います。 私がツールを作る際にどのようにしているか、具体的にFTPサーバーアプリケーションを例に紹介します。
Abstract
pyftpdlibという、PythonでFTPサーバーを実装するためのモジュールを使って、FTPサーバーアプリケーションを作ってみました。
このアプリケーションは、個人的な用途で作ったものですが、PyPIに登録していて、pipでインストールしてすぐに利用できるようにしています。
また、設定ファイルでいろいろな環境で動かせるようにしたり、テストコードを書いたりもしています。 個人用のちょっとしたツールであっても、品質良く、使いやすいものを作れるように工夫するのは良いことだと思います。
このアプリケーションを例に、どのようにツールを作っていくとよいのか紹介します。
紹介するコードは、GitHubで公開しています。