Введение в объектно-ориентированный дизайн с Java. Тимур Машнин
Чтение книги онлайн.

Читать онлайн книгу Введение в объектно-ориентированный дизайн с Java - Тимур Машнин страница 17

СКАЧАТЬ что общая цель заключается в создании многоразовых, гибких и поддерживаемых систем.

      И наследование – это просто один из способов помочь вам достичь этой цели.

      И важно понимать, что этот метод полезен только при правильном использовании.

      Принцип Абстракции в UML

      При проектировании здания архитекторы создают эскизы, чтобы визуализировать и экспериментировать с различными проектами.

      Эскизы быстро создаются и интуитивно понятны для представления дизайна клиенту, но эти эскизы недостаточно подробны для строителей.

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

      Эти дополнительные детали позволяют строителям точно построить то, что предлагает архитектор.

      Для программного обеспечения, разработчики используют технические диаграммы, называемые UML диаграммами, для выражения своих проектов.

      Напомним, что для концептуального дизайна мы использовали CRC-карточки, которые аналогичны эскизам архитекторов для визуализации и экспериментов с различными проектами.

      Карточки CRC хороши только для прототипирования и моделирования проектов на более высоком уровне абстракции.

      Однако, для реализации, нужна техника, которая больше похожа на план.

      Диаграммы классов UML позволяют представить дизайн более подробно, чем карточки CRC, но это представление будет все еще визуальным.

      Диаграммы классов намного ближе к реализации и могут быть легко преобразованы в классы в коде.

      Принцип абстракции дизайна представляет собой идею упрощения концепции в области задачи до ее сути в каком-то контексте.

      Абстракция позволяет лучше понять концепцию, разбив ее на упрощенное описание, которое игнорирует несущественные детали.

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

      Итак, как например, класс продуктов питания выглядел бы в диаграмме классов?

      Это представление диаграммы класса продуктов питания.

      Каждый класс в диаграмме классов представлен полем.

      И каждая диаграмма разделена на три секции, как в CRC-карточке.

      Верхняя часть – это имя класса.

      Средняя часть – это раздел свойств.

      И это эквивалентно переменным-членам в классе Java, и эта часть определяет атрибуты абстракции.

      И, наконец, нижняя часть – это раздел операций, который эквивалентен методам в классе Java и определяет поведение абстракции.

      Свойства, которые эквивалентны переменным-членам Java, состоят из имени переменной и типа переменной.

      Типы переменной, как и в Java, могут быть классами или примитивными типами.

      Операции, эквивалентные СКАЧАТЬ