Технологии программирования на базе Microsoft Solutions Framework

Алгоритмическая и объектная декомпозиции Классы и объекты


Принципиально можно выделить 2 вида разбиения предметной области на составляющие элементы:

  • Алгоритмическая декомпозиция (основные элементы программы - строительные блоки - алгоритмы).
  • Объектная декомпозиция (основные элементы программы - виды абстракций (классы) и представители этих классов (объекты)).

В соответствии с алгоритмической декомпозицией предметной области мы при анализе задачи пытаемся понять, какие алгоритмы необходимо разработать для ее решения, каковы спецификации этих алгоритмов (вход, выход), и как эти алгоритмы связаны друг с другом. В языках программирования данный подход в полной мере поддерживается средствами модульного программирования (библиотеки, модули, подпрограммы).

В рамках объектной декомпозиции мы пытаемся выделить основные содержательные элементы задачи, разбить их на типы (классы). Далее для каждого класса абстракций мы определяем его свойства (данные) и поведение (операции), а также, как эти классы абстракций взаимодействуют друг с другом.

На сегодняшний день объектный подход и его основы - объектная модель и объектная декомпозиция - поддерживаются современными объектно-ориентированными языками программирования (Object Pascal, C++, Java, C#…).



Содержание раздела