今回も思いっきり個人的な見解を書いてみようと思います。
少し前に「PythonicやPythonZenを知らなくてもPythonプログラマーとしては問題ない」や「PythonicやPythonZenというお作法は建前的な考え方なので意識しなくても良いですよね」という意見を聞きました。
PythonicやPythonZenの理解浸透を掲げているPythonエンジニア育成推進協会を運営している私としてはその言葉を聞いてショックでしたが、そんな話はさておき、プログラミングフィロソフィーであるPythonic(パイソニック)やPythonの設計について記述されたイディオム集であるPythonZen(The Zen of Python)について、ご存じのない方はこちらのページをご覧ください。
私はPythonicやPythonZenをPythonのプログラミング作法だと思っています。プログラミングを習っている方や、プログラミングで仕事をしたことがある人は聞いたことがある言葉だと思います。これは各言語やフレームワークごとにある程度存在しているプログラミングの考え方や規範、ルールのようなものです。
このお作法を守らず、動けばいいよね的な考え方でコードを書いてしまうとどのような結果になるでしょうか? 以下のようなことが起きる可能性があります。
・保守性の低下(コードを引き継いだ人が分かりにくく、障害原因を見つけにくかったり、新たな障害を生んだりする場合も)
今後も未来永劫自分しか保守をせず、他の方に迷惑がかからないようなシステムや、趣味のレベルであれば、それでもいいような気がしますが、仕事として納品するものであれば、PythonicやPythonZenをある程度理解したうえで、コードを書くべきでしょう。
それにPythonicやPythonZenは、一部の小さなグループで勝手に作られた決まり事ではなく、全世界的に決められている考え方なのです。にもかかわらず、これを無視したり、理解しようとせずに仕事をしたりすることがもしあれば、少々驚きます。
Python案件が増えて市場が拡大し、ここ数年、Pythonを書ける人が足りていないといわれています。そのようなときに不慣れなPythonで仕事をしなければいけないこともあるかもしれません。それでも、お作法として世界的にも確立されているPythonicやPythonZenを無視したり、破ったりしてしまうようなことは避けた方がいいです。
PythonicやPythonZenの原文は英語で書かれていますが、検索すると日本語の訳もネット上で多く公開されています。PythonicやPythonZenをまだ理解されていない人はできるだけ信頼がある人が書いたPythonicやPythonZenの訳文や関連情報に目を通してみるといいと思います。
最後にもう一度、PythonicとPythonZen(The Zen of Python)について書かれているページを紹介しておきます。まずは、原文に目を通すところから始めてみてはいかがでしょうか? https://www.pythonic-exam.com/pythonic
[PR]提供:Pythonエンジニア育成推進協会