クラス
オブジェクト指向でオブジェクトを作るための雛形(設計図)。フィールド(状態)とメソッド(振る舞い)を定義する。同じクラスのインスタンスはメソッドを共有し、フィールドの値は個別に持つ。
概念を生んだのはSmalltalk(Alan Kay、1972年)。C++、Java、C#、Python、Ruby、PHPにクラスがある。JavaScriptは2015年(ECMAScript 6)にclass構文を加えたが、中身はプロトタイプチェーンの糖衣構文だ。Rustにクラスはなく(struct + impl)、Goもない(struct + interface)。「継承よりコンポジション」が常識的な助言で、複雑なクラス階層は年月とともに劣化する。クロージャと関数型のパターンが現代的な代替手段になる。