Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Home-Programming.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
648.7 Кб
Скачать

Основы uml

UML (Unified Modeling Language) [8] – это язык, позволяющий графически описать разрабатываемую программу. Он очень полезен для обмена информацией между программистами, четкой формулировки своих мыслей при проектировании. Существуют и средства автоматической генерации кода из UML-диаграмм, хотя они, разумеется, позволяют создать лишь каркас программы.

Рис. 4. Примеры UML-диаграмм.

UML позволяет описать разные аспекты программы. В данный момент нас будут интересовать диаграммы классов UML, позволяющие описать существующие в программе классы и отношения между ними. На рис. 4 иллюстрируются основные возможности диаграмм классов UML.

  1. Описание класса ExampleClass1 с закрытым полем данных Data1 типа wchar_t и методом Method1, принимающим два входных параметра – Parameter1 типа double и Parameter2 типа bool и возвращающим целочисленное значение.

  2. Описание класса ExampleChartParent и унаследованного от него класса ExampleClassChild.

  3. Описание класса ExampleClassUser, использующего для своей работы класс ExampleChartService.

  4. Описание класс ExampleChartWhole, неотъемлемой часть объекта которого является один экземпляр класса ExampleChartElement.

  5. Описание класса ExampleChartContainer, который владеет многими объектами класса ExampleChartElement. В отличие от предыдущего примера, элементы не являются неотъемлемой частью контейнера. Например, массив владеет своими элементами, но элементы могут добавляться и удаляться.

  6. Описание взаимодействующих друг с другом (один объект с одним объектом) классов ExampleInteractionClass1 и ExampleInteractionClass2.

Понятие агрегации в объектно-ориентированном программировании

В объектно-ориентированном программировании говорят об агрегации в ситуации, когда типом поля данных одного класса является другой класс.

В этом случае код имеет вид:

class A

{

….

};

class B

{

….

A ObjectA;

//или

A ArrayA[ <Length> ];

….

};

В этом случае, естественно, мы можем в методах класса B работать с этим полем данных.

Агрегация используется, когда объект A является частью объекта B, хранится в объекте B или используется для реализации объекта B. Например:

class Date

{

int Year;

int Month;

int Day;

};

class PassportData

{

int Number;

Date IssueDate;

char PoliceDepartmentName[ 50 ];

};

Мы используем класс Date для реализации класса PassportData.

Понятие шаблонов (template) в C++

См. разд. 1.3.

    1. Рекомендованные правила оформления исходных текстов

Единые правила оформления исходных текстов значительно облегчают их чтение и понимание. Возможность при чтении исходного кода программы сразу же понять, что именно означает тот или иной идентификатор, возможность видеть структуру программы при одном взгляде на код существенно облегчают разработку, отладку и проверку программы.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]