Skip to content
Зарегистрируйтесь, чтобы получить доступ к полной версии курса.

Отношения композиции и отношения специализации

Объекты выстраиваются в иерархии по трем основным отношениям

  • Часть --- целое. Самое простое и самое важное отношение, работает только для физических объектов. Еще называется «истинная часть», чтобы не путать с частями описаний, и другими частями чего попало.

Ножка стола является частью целого стола. Моя рука является частью меня.

Чтобы привести часть для какого-то целого, нужно мысленно буквально разделить его на части. Мы должны при этом следить за тем, чтобы буквально все пространство и время, которое занимает часть, входило в пространство и время, которое занимает целое.

Мыслительный прием для проверки: все атомы объекта «часть X» входят в число атомов объекта «целый Y». Если да, то все верно, и X --- часть Y.

Иерархия, построенная по этому отношению, в языке выражается «Х состоит из...».

У «часть-целое» или отношений композиции есть самая сильная форма, «истинная часть», описанная выше, и есть формы послабее, когда мы знаем, что не конкретный объект, а обычно каждый объект такого класса состоит из, и тогда мы говорим о композиции для нефизических объектов, и дальше уже кто во что горазд, разные онтологи по-разному решают вопрос, у чего бывает композиция, а у чего нет.

Именно по такому принципу из систем выделяют подсистемы.

Композиция: шляпка желудя и тело желудя

  • Класс --- экземпляр класса. У нас есть класс «столы», экземпляр этого класса --- данный конкретный стол, находящийся в физической реальности.

Классы --- это объекты ментального пространства. Они находятся только там, и мы можем ими там управлять и оперировать. Конкретный стол --- экземпляр класса «столы» (и еще кучи других классов, то есть один объект может быть экземпляром многих классов) --- объект физического пространства, я его могу посмотреть и потрогать.

Экземпляром класса также может быть какой-то другой класс. Такой класс классов еще часто похож на классифицирующий признак. «Столы, классифицированные по материалу» или «материал столов» (класс) --- «деревянные столы» (экземпляр класса, тоже класс).

«Привести экземпляр класса» --- та же операция, что и «привести пример». В языке заметно по «овощи, например вот эта картофелина», «программисты, например Вася».

  • Надкласс --- подкласс.

Я объединяю конкретные столы в класс «все столы», пользуясь отношением «класс --- экземпляр».

Некоторые из этих столов вошли в другой класс --- «деревянные столы».

При этом все «деревянные столы» также входят в класс «все столы», --- это и есть отношение специализации, когда один класс включает в себя все экземпляры другого класса.

Все предметы класса «все столы» также входят в класс «мебель». Получается, что «все столы» --- надкласс для «деревянных столов» и подкласс для «мебели».

Чтобы привести подкласс для какого-то класса, нужно сделать более узкую выборку --- указать такое дополнительное свойство, чтобы можно было привести меньше примеров. Все объекты, которые входят в подкласс, также входят в надкласс.

Мы можем сужать или расширять классы добавляя или убавляя признаки, в языке это выражается как «электростанции, в частности атомные электростанции» или «продукты, в частности овощи».

Иногда люди будут говорить запутывающе «продукты, например овощи», как если бы класс «овощи» был экземпляром класса «продукты», а не его подклассом. Наверняка вы замечали такой эффект, когда вы просите кого-то привести пример, а человек в ответ говорит просто чуть менее абстрактно (дает более узкий класс). Часто этого даже достаточно для понимания. Но мы в курсе будем различать примеры/экземпляры и более узкие классы.