Программирование >>  Статьи 

ООП, UML и Java - как это соединить для программирования?

Чтобы приготовить любое блюдо, необходимо наличие посуды, ингредиентов и повара.

Аналогично и в программировании. Чтобы создать приложение (десктопное, мобильное, серверное и т. п.) необходимо наличие инструментов для программирования (программная среда разработки), язык программирования и его конструкций (ингредиенты), программист. Правильное сочетание этих "ингредиентов" даёт качественно программированный продукт.

Какие же составляющие нужны для программирования на Java?

Не секрет, что в нашем мире всё является объектом. На основе этого понятия возникло много технологий и концепций процесса моделирования и программирования. Главная из которых, это объектно-ориентированное программирование. Оно нашло своё проявление в объектно-ориентированном языке (ООП) программирования Java.

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

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

Объектная модель или UML – диаграмма не только описывает программу, но и является абстрактно-визуальной инструкцией для бизнес-процессов, системного обеспечения и оформления структуры данных.

Отметим, что процесс моделирования объектов и их поведений, состояний – это своеобразный и творческий процесс, который в первую очередь зависит от самой личности программиста. Ведь один и тот же объект, отдельно взятые программисты могут интерпретировать и описывать по-разному. Поэтому его можно назвать, ни много ни мало – искусством. В результате получаем что ООП по своей сути является плохо формализованным. Подробнее об этом и других особенностях программирования можно узнать на http://pmbk.ru.

Вспомним главные характеристики ООП:

- инкапсуляция;

- наследование;

- полиморфизм;

- композиция.

А также тот факт, что объект имеет свои данные (состояния – атрибуты) и поведения (методы).

Для описания объектной модели используют разные типы UML- диаграмм:

- структурные (пакетов, классов, объектов, развёртывания и набора);

- поведения (действия, состояний, взаимодействия, коммуникации, последовательности, синхронизации и т. п.).

Характерная для языка Java, UML – диаграмма структуры пакетов. Пакет – логическая область хранения классов в пространстве имён. С этим понятием тесно связаны видимость и доступность класса и его элементов.



Диаграмма класса описывает статическую структуру системы классов.



Здесь класс описывается прямоугольником, разделённым на три области: название, атрибуты, методы. Скрытые от посторонних, отмеченные спереди, атрибуты и методы обозначаются символом «-». Это сокрытие данных в программировании называется инкапсуляцией. Стрелки указывают на наследование одного класса от другого.

Обобщённая структура взаимосвязей, демонстрирующая иерархию связей между классами.



Отношение обобщение – наследование. Бинарная ассоциация – одному объекту может относиться только один объект (человек – ID-карта). N-арная ассоциация – соотношение многих объектов к одному (человек - ID-карта, комната, ПК и т. д.).

Агрегация – объединение нескольких объектов в группу (много работников - отдел). Композиция – исключительный вариант агрегирования, процесс объединения объектов в новый составной объект (корпус, блок питания, ОЗУ, материнская плата, процессор, винчестер - компьютер).

Реализация – имеет материальное выражение в языке Java: объявление интерфейса, возможность реализации этого интерфейса каким-либо классом. Пример, внутренняя логика работы калькулятора. При смене работы калькулятора, кнопки остались те же (интерфейс), а внутренние процессы (реализация) обработки информации поменялись. Но и результаты суммирования, отнимания, умножения и деления остались те же.

Как видим, ООП, UML и Java имеют тесную взаимосвязь. Для языка Java диаграммы UML– это материальное графическое представление принципов ООП. Которое можно генерировать автоматически UML-редактором или написать на языке Java обозревая UML-диаграмму.
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика