1章Pythonのデータモデル
Guidoは言語設計の美学に関するすばらしいセンスの持ち主です。世の中の言語設計者の多くは、理論的には美しいけれど誰も使いたがらないような言語を生み出しがちです。しかしGuidoは、(理論的な美しさという点では少し劣るけれども)プログラムを書くのが楽しくなるような言語を作れる稀有な人です。
—— Jim Hugunin
Jythonの作者、AspectJの共同開発者、.NET DLRのアーキテクト†1
[†1] 『Story of Jython』(https://fpy.li/1-1)より。Samuele PedroniとNoel Rappinによる『Jython Essentials』(https://fpy.li/1-2、O'Reilly)への序文として執筆されました。
Pythonが備える優れた特質の1つとして、その一貫性が挙げられます。Pythonをしばらく使っていると、未知の機能についても確信を持って正しく利用できるようになります。
Python以前に他のオブジェクト指向言語を学んだ場合、例えばcollection.len()の代わりにlen(collection)を使うのは奇妙だと感じるかもしれません。しかしこれはPythonのデータモデル(以降、単に「データモデル」)の一部であり、Pythonicなコードを実現するための鍵になります。このようなAPIを通じて、各自のオブジェクトは規範に沿った機能を活用できるようになります。
このデータモデルは、フレームワークとしてのPythonを記述したものと考えることができます。ここでは言語自体の構成要素のインターフェースが明確に表現されています。例えばシーケンス、関数、イテレータ、コルーチン、クラス、コンテキストマネージャなどがここに含まれます。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access