В данных методических указаниях студентам предполагается выполнить лабораторную работу, направленную на анализ и проектирование API приложения.
Предлагается разобрать базовые методы проектирования на основе языка UML, а также написания самого API с использование объектно-ориентированного подхода. В программе должны присутствовать три основные постулата ООП: наследование, инкапсуляция и полиморфизм.
Необходимо сформировать объектную модель фигуры, состоящую из квадратов; реализовать хранилище для множества объектов, создать механизм, обеспечивающий единую точку вхождения в подсистему.
UML.
Проектирование архитектуры программного продукта является основным этапом разработки. Весьма наглядным является изображение каждого класса в виде простых диаграмм на языке UML.
UML (Unified Modeling Language — унифицированный язык моделирования) — язык графического описания для объектного моделирования в области разработки программного обеспечения. UML является языком широкого профиля, это открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML-моделью. UML не является языком программирования, но в средствах выполнения UML-моделей как интерпретируемого кода возможна кодогенерация.
Классы в UML изображаются на диаграммах классов (рис.2.1), которые позволяют описать систему в статическом состоянии — определить типы объектов системы и различного рода статические связи между ними.
Видимость свойства указывает на возможность его использования другими классами. Один класс может «видеть» другой, если тот находится в области действия первого и между ними существует явное или неявное отношение. В языке UML определены три уровня видимости:
· public (общий) — любой внешний класс, который «видит» данный, может пользоваться его общими свойствами. Обозначаются знаком «+» перед именем атрибута или операции;
· protected (защищенный) — только любой потомок данного класса может пользоваться его защищенными свойствами. Обозначаются знаком «#»;
· private (закрытый) — только данный класс может пользоваться этими свойствами. Обозначаются символом «-» .
Имя класса
- закрытое поле класса : типПоля
+ открытое поле класса : типПоля
- закрытый метод класса(аргумент : типАргумента) : типВозвращаемогоМетодомЗначения
+ открытый метод класса(аргумент : типАргумента) : типВозвращаемогоМетодомЗначения
Рисунок 2.1 – Пример диаграммы класса, описанной на языке UML.