Объектно-ориентированный язык программирования (ООП) рассматривает программу как набор объектов, взаимодействующих друг с другом. 69 У каждого объекта есть свойства и поведение. 69 В ООП данные и функции объединяются в единые структуры — объекты. 3
Язык, основанный на прототипах, предполагает, что свойства и методы объектов можно повторно использовать посредством общих объектов, которые можно клонировать и расширять. 5 Это называется наследованием прототипов и отличается от наследования классов. 5
Таким образом, основное отличие заключается в подходе к созданию объектов: в ООП создаётся класс, который строго описывает поведение — все экземпляры этого класса будут иметь строго все те свойства, что и у класса. 1 В языке, основанном на прототипах, объект создаётся для конкретной цели и в основном имеет одну реализацию (один экземпляр). 1