Главная страница
Навигация по странице:

  • Основные принципы ООП

  • Курс ООП в С презентация. ООП в с++(полный курс). Объекты и классы


    Скачать 1.76 Mb.
    НазваниеОбъекты и классы
    АнкорКурс ООП в С презентация
    Дата21.02.2022
    Размер1.76 Mb.
    Формат файлаppt
    Имя файлаООП в с++(полный курс).ppt
    ТипДокументы
    #368655
    страница1 из 26
      1   2   3   4   5   6   7   8   9   ...   26

    С++:
    Объектно-ориентированное программирование


    Объекты и классы

    Объекты и классы


    Идея классов отражает строение объектов реального мира — каждый предмет или процесс обладает набором характеристик или отличительных черт, иными словами, свойствами и поведением.
    Объект является автономным действующим лицом в системе. Реальными кандидатами на роли объектов обычно выступают люди, места, вещи, организации, концепции и события.
    Объект обладает состоянием, поведением и идентичностью; структура и поведение схожих объектов определяет общий для них класс.
    Класс является определяемым пользователем абстрактным типом данных, описывающим свойства и поведение какого-либо предмета или процесса посредством полей данных (аналогично структуре) и функций для работы с ними.


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

    Основные принципы ООП


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


    Абстракция сущности


    Объект представляет собой модель некоторого физического предмета (объекта) предметной области.


    Абстракция поведения


    Объект состоит из обобщенного множества операций.


    Абстракция виртуальной машины


    Объект группирует операции, которые либо используются более высоким уровнем управления, либо сами используют некоторый набор операций более низкого уровня.


    Произвольная абстракция


    Объект включает в себя набор операций, не имеющих друг с другом ничего общего.

    Основные принципы ООП


    Процесс отделения друг от друга элементов объекта, определяющих его устройство и поведение, называется инкапсуляцией.
    Инкапсуляция служит для того, чтобы изолировать контрактные обязательства абстракции от их реализации.
    Чаще всего инкапсуляция выполняется посредством скрытия всех внутренних деталей, не влияющих на внешнее поведение объекта. Обычно скрываются и внутренняя структура объекта, и реализация его методов. Это означает наличие двух частей в классе: интерфейса и реализации.
    Интерфейс отражает внешнее поведение всех объектов данного класса.
    Инкапсуляция позволяет изменить реализацию класса без изменения части программы, если интерфейс остался прежним.
    Такой подход приводит к контрактной модели программирования, которая заключается в разграничении внешнего облика, то есть интерфейса, и внутреннего устройства класса, реализации.

    Основные принципы ООП


    Иерархия – это упорядочение абстракций, за счет чего достигается значительное упрощение понимания сложных задач.
    Основными видами иерархических структур применительно к сложным системам являются:
      структура классов (иерархия "общее-частное");
      структура объектов (иерархия "целое-часть").

      Иерархия "общее-частное" представлена концепцией наследования. Под этим подразумевается возможность создания иерархии классов, когда потомки на­следуют все свойства своих предков, могут их изменять и добавлять новые.
      Свойства при наследовании повторно не описываются, что сокращает объем программы.
      Иерархия классов представляется в виде древовидной структуры, в которой более общие классы располагаются ближе к корню, а более специализированные — на ветвях и листьях.
      В C++ каждый класс может иметь сколько угодно потомков и предков.

    Основные принципы ООП


    Иерархия "целое-часть" вводит отношение агрегации. В качестве примера можно привести отношение "организация – сотрудники", когда целое является чем-то большим, чем просто набором своих частей.
    Модульность – это свойство системы, которая была разложена на внутренне связные, но слабо связанные между собой модули.
    Разделение программы на модули до некоторой степени позволяет уменьшить ее сложность. Кроме того, внутри модульной программы создаются множества хорошо определенных и документированных интерфейсов, которые необходимы для исчерпывающего понимания программы в целом.
    При построении объектной модели рекомендуется разделять систему на отдельные компоненты, связанные с:
      проблемной областью (классы бизнес-уровня), взаимодействием с человеком (окна и отчеты), управлением данными (работа с СУБД), взаимодействием с другими системами.

      1   2   3   4   5   6   7   8   9   ...   26


    написать администратору сайта