プロトタイプベース【prototype-based】
概要

オブジェクトの雛形にあたる「クラス」(class)を定義する「クラスベース」(class-based)のオブジェクト指向と対比される。クラスベースでいう「インスタンス」(instance)に当たる具体的なオブジェクトしか存在しない方式で、新しいクラスの定義や既存クラスからの派生・継承に当たる動作はオブジェクトのクローン(複製)を作って内容を追加・変更するという手順で行う。
SelfやLuaなどの言語がプロトタイプベースの仕様を持ち、class構文導入前のJavaScriptもよく例として挙げられる。JavaScriptは確かにクラス定義に相当する仕様を持たなかったが、new構文やprototypeオブジェクトなど、クラスベースとの折衷のような変則的な仕様とも言われる。
(2022.5.21更新)