Суб'єктно (Істотно)-орієнтоване програмування (англ. subject-oriented programming, SOP; надалі СОП) - метод побудови об'єктно-орієнтованих систем, як композиції суб'єктів.
У цілому СОП включає:
- Розбиття системи на суб'єкти;
- Написання правил для їх правильної композиції.
СОП доповнює об'єктно-орієнтоване програмування (надалі ООП), вирішуючи проблеми, які виникають при розробці великих систем, при розв’язанні завдань інтеграції та переносимості.
Суб'єкт у СВП - це колекція класів або фрагментів класів, що представляють свою (суб'єктивну) ієрархію класів. Суб'єктом може бути сама програма або частина програми, об'єднання якої з іншими суб'єктами дає програму в цілому. Композиція суб'єктів комбінує ієрархію класів так, що виходять нові суб'єкти, що включають функціональність існуючих суб'єктів.
Порівняння з ООП
- Об'єкту необхідно конкретно вказати, які він повинен виконати методи, щоб досягти результату.
- Суб'єкту необхідно конкретно вказати якого результату необхідно йому досягти, а він вибирає методи, які дозволяють це зробити.
Джерела
Література
Посилання