今回は私が購入したお薦めPythonの教本をご紹介します。初級〜上級に分けて基本文法や、コーディングに関する本を紹介します。
初心者向け
みんなのPython 第4版 柴田 淳(著)
プログラミングやPython初心者の方はネットのレビューに頼らないで、書店で色々みて気に入った本を購入すればいいと思います。人によってフルカラーが好きだったり、分厚い専門書の様な本が好きなど好みが分かれるためです。
そんな数ある入門書の中で”みんなのPython 第4版”がオススメです。
黒と赤の2色刷りで重要なところが分かりやすく読みやすい校正になっています。
内容が豊富で、基本構文、組み込み型、関数型プログラミング、クラス、オブジェクト指向機能、モジュール、例外処理、標準ライブラリ、データサイエンスについて書いてあります。
基本的な事は網羅されているので、
「あれ、setってなんだっけ?」
と疑問に思った時の辞書がわりとしても重宝します。
特に組み込み型はよく使う割に忘れやすいのですが、この本はよくとまっていて探しやすいです。
中級者・上級者向け
実践 Python3 Mark Summerfield (著) 斎藤 康毅 (訳)
入門書で基本的な事を覚えられますが、コーディングスキルまではカバーできません。
実際に私も
「基本的な事は覚えたけど、どういうコーディングが良いコードになるのか分からない」
と悩んでいたことがありましたが、この本1冊でコーディングスキルが大幅に上昇したと感じます。
特に1章~3章はオブジェクト指向プログラミングで有名なGoFの全23種のデザインパターンをPython流に書く方法が載っており非常に役立ちます。
ただ、デザインパターンによっては、実装例がシンプルではなく他のテクニックも織り交ぜられているのでデザインパターンの根本を理解するのに苦労しました。
Javaになりますが、デザインパターンに関してはシンプルな例題が載せられている増補改訂版 Java言語で学ぶデザインパターン入門という本やTECHSCOREというサイトもオススメです。
“実践 Python3″を読んで理解できなかったデザインパターンや、初めてデザインパターンを学ぶ方はJavaの方で学んだ方が早道かもしれません。
他の言語経験者でデザインパターンを知っている方も読む事をオススメします。pythonは関数を第1級オブジェクトとしているため、JavaやC#よりエレガントにかけるものや、言語に組み込まれているデザインパターンもあります。
他には、並行処理、Cythonを使った高速化、ネットワーク処理、GUIアプリケーション、OpenGLについて書かれています。これらの内容は実務で必要になった時に読み始めていいと思います。
Effective Python Pythonプログラムを改良する59項目 Brett Slatkin (著) 黒川 利明 (訳)
プログラムを読みやすく書いたり、効率よく書くためのテクニック集の様なものです。
前半は初心者でもすぐに使える様なテクニックが多いです。
例えば以下の様なテクニックが紹介されています。
・シーケンスのスライス方法
・分かりやすいリスト内包表記の書き方
・rangeよりenumerateにする
・リストを返さずにジェネレータを返す
コーディングスキルが上がるにつれて、”3章 クラスと継承”、”4章 メタクラスと属性”、”5章 並行性と並列性”の内容が役立ってきます。
同じ開発現場で働いているとコーディングの癖に気がつきません。このような本や、Pythonのモジュールのコードを読んでプロのコーディングテクニックを学ぶ習慣をつけると良いでしょう。
コメントを残す