Субъектно-ориентированное программирование

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Субъе́ктно-ориенти́рованное программи́рование (англ. subject - oriented programming, SOP; в дальнейшем СОП) — метод построения объектно-ориентированных систем, как композиции субъектов. Однозначный общепринятый перевод термина subject-oriented programming на русский язык на сегодняшний момент не выработан[1].

В целом СОП включает:

  • разбиение системы на субъекты;
  • написание правил для их правильной композиции.

СОП дополняет объектно-ориентированное программирование (в дальнейшем ООП), решая проблемы, возникающие при разработке больших систем, при решении задач интеграции и переносимости.

Субъект в СОП — это коллекция классов или фрагментов классов, представляющих свою (субъективную) иерархию классов. Субъектом может быть само приложение, либо часть приложения, объединение которой с другими субъектами даёт приложение целиком. Композиция субъектов комбинирует иерархию классов так, что получаются новые субъекты, включающие функциональность существующих субъектов.

Сравнение с ООП[править | править вики-текст]

  • Объекту необходимо конкретно указать, какие он должен выполнить методы, чтобы достичь результата.
  • Субъекту необходимо конкретно указать какого результата необходимо ему достичь, а субъект сам выбирает методы, позволяющие это сделать.

Есть и другой способ обобщения объектно-ориентированного программирования (см. Везенспрограммирование)

Примечания[править | править вики-текст]

  1. Термин в клетке К.Курбатов. «Компьютерра» №16 от 27 апреля 2006 года

Литература[править | править вики-текст]

Ссылки[править | править вики-текст]