top of page

Раздел 1 Основы объектно-ориентированного программирования

Тема 1.1  Понятие объектно- ориентированного программирования  Природа классов и объекта

  • Все языки объектно ориентированного программирования, включая C#, основаны на трёх основополагающих концепциях - полиморфизм, инкапсуляция, наследование

Основные принципы ООП: инкапсуляция, наследование, полиморфизм

  • Абстра́кция — в объектно-ориентированном программировании это придание объекту характеристик, которые отличают его от всех других объектов, четко определяя его концептуальные границы.

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

  • Это позволяет работать с объектами, не вдаваясь в особенности их реализации. В каждом конкретном случае применяется тот или иной подход: инкапсуляция, полиморфизм или наследование. Например, при необходимости обратиться к скрытым данным объекта, следует воспользоваться инкапсуляцией, создав, так называемую, функцию доступа или свойство. Абстракция данных — популярная и в общем неверно определяемая техника программирования. Фундаментальная идея состоит в разделении несущественных деталей реализации подпрограммы и характеристик существенных для корректного ее использования.

  • Такое разделение может быть выражено через специальный «интерфейс», сосредотачивающий описание всех возможных применений программы[1]. С точки зрения теории множеств, процесс представляет собой организацию для группы подмножеств своего множества. См. также Закон обратного отношения между содержанием и объемом понятия.

         Инкапсуля́ция

  • Инкапсуля́ция — свойство языка программирования, позволяющее пользователю не задумываться о сложности реализации используемого программного компонента (что у него внутри?), а взаимодействовать с ним посредством предоставляемого интерфейса (публичных методов и членов), а также объединить и защитить жизненно важные для компонента данные. При этом пользователю предоставляется только спецификация (интерфейс) объекта. Пользователь может взаимодействовать с объектом только через этот интерфейс. Реализуется с помощью ключевого слова: public.

Что такое инкапсуляция?

  • Инкапсуляция - сокрытие методов и свойств. В C# при инкапсуляции используются следующие модификаторы:

  • public - публичный (виден всем)

  • private - приватный (виден только объектам класса)

  • protected - защищенный (виден только объектам класса и наследуемым классам)

 

Что такое полиморфизм?

  • Полиморфизм означает "многоформенность". Несколько объектов с одним именем - имеют различную реализацию. Полиморфизм бывает статическим и динамическим.

Что такое наследование?

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

bottom of page