4. ОБЕКТНО ОРИЕНТИРАН ПОДХОД ЗА
РАЗРАБОТВАНЕ НА СОФТУЕР
Теорията и практиката на новата обектно ориентирана (OO) парадигма са
се развили толкова, че могат да
бъдат обект на отделен учебник, посветен на
обектно ориентираните софтуерни технологии. В съответствие с целите, които
сме си поставили, ще се спрем само на основните характеристики на ОО-под-
ход и
на особеностите, които го разграничават от конвенционалния подход за
разработване на софтуер.
равлението на обекта подател. Чрез съобщенията се описва поведението на обек-
тите и на ОО-система като цяло.
Три основни характеристики са присъщи на ОО-подход. Те са:
а) "К
апсулиране" в класа на данните и операциите върху тях. Това има
следните преимущества:
подробностите на вътрешната реализация остават скрити;
данните и операциите са обединени в едно именовано цяло — класа,
което улеснява повторното му използване;
връзките между „капсулираните" обекти са опростени, защото осъщес-
твяването им чрез съобщения не зависи от вътрешните структури от данни.
б)
Наследяване. Същността на наследяването е, че всеки подклас придоби-
ва автоматично (наследява) всички атрибути и операции на
съответния супер-
клас. Така се осигурява повторно използване на проектираните и реализирани
вече структури данни и алгоритми. Улеснено е внасянето на изменения, защото
те се правят само в съответното ниво в йерархията от класове и чрез наследяване-
то се разпространяват. При необходимост от нов клас
той може да се конструира
изцяло или да се „вмъкне" в съществуващата йерархия от класове, като се допи-
шат само специфичните за него елементи. Допуска се и „множествено наследява-
не" от няколко различни суперкласа. To e полезно заради по-големия брой насле-
дявани
свойства, но затруднява проследяването на връзките в йерархията.
в)
Полиморфизъм. Това свойство дава възможност различни операции да
имат едно и също име. Така се осигурява настроеваемост и гъвкавост, защото с
унифицирано извикване могат да се реализират специфични обработки.