Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович

Теория ООП / Инкапсуляция мечты

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

    Во время создания проекта постоянно применяется рефакторинг кода,
    при этом демонстрируются приёмы Объектно-ориентированного программирования.

    Во второй части курса мы проработаем понятие Интерфейса.

    Выдержка из отчёта Ларисы по завершению курса.
    1) Получила представление о методах ООП - инкапсуляции, полиморфизме и наследовании.
    Эти три "кита" позволяют изменять и усложнять программы, добавляя в них новые возможности;
    2) Научилась рисовать простые геометрические фигуры;
    3) Создавать базовые и производные классы;
    4) Создавать структуры и работать с пикселями;
    5) Создавать фигуры из массива простых фигур в том числе и в цвете;
    6) Передвигать простую фигуру;
    7) Создавать класс объектов Sprite, являющийся производным от базового абстрактого класса Shape,
    а в нем список List, который содержит произвольное число фигур и функцию, которая добавляет фигуру,
    а также метод Move, который двигает её;
    8) Освоила BreakPoint, который дает возможность проследить переходы в классе и связи между классами;
    9) Познакомилась с абстрактыми и виртуальными методами в абстрактном базовом классе и методами override в производных классах. Совокупность этмх методов позволяет передвигать сложные фигуры как целое.
  • Дата отправки отчёта: 16 апреля 2015 г.
  • Задание выполнено: за 30 мин.
  • Чему научился: Повторил принципы инкапсуляции
  • Что было сложным: Ничего
  • Комментарии: Основная идея инкапсуляции: пользователю предоставляется некий класс и некий интерфейс. Пользователь может работать с объектом класса только через интерфейс, любые возможности влияния на объект кроме как через интерфейс должны быть исключены.
    Инкапсуляцию можно сравнить с работой тепловоза или другого транспортного средства с точки зрения машиниста или водителя. Машинист не имеет доступа к внутреннему строению тепловоза, только управляет им именно так, как нужно. Машинист может не знать, как создаются двигатель, тормоза или пульт управления: существует специальный чертеж (интерфейс), который автоматизирует и упрощает эти сложные операции.
    Похожий принцип имеет инкапсуляция в ООП: многие подробности "внутреннего устройства" скрываются от пользователя, что позволяет ему сосредоточиться на решении конкретных задач.
    Основные принципы инкапсуляции:
    Пользователь воаимодействует с объектом только через интерфейс
    Пользователь не имеет права использовать внутренние переменные и методы класса.
    Доступ к данным нужно осуществлять с помощью специальных методов доступа (get), а устанавливать значения данных с помощью методов установки (set).
  • Оценка видео-уроку:
Отчёт от 1803 за Теория ООП / Инкапсуляция мечты




Оцени работу

 
Сохранить страницу:

1. Евгений Витольдович
Евгений Витольдович
ответить
→  Саша  # OOP / Инкапсуляция мечты / 2015-04-16 15:16

Саша, это ты сам всё написал? O,o



Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Инкапсуляция это принцип по которым создаются объекты к которым есть доступ только к определённому функционалу. Функционал - показывает интерфейс этого объекта. к примеру - Автомобиль "У него есть педаль " Если нажать на педаль газа автомобиль ездит, - водитель не должен знать как построен сам двигатель. А если есть педали и понять какая педаль за чего отвечает то можно ездить. (Две педали и рычаг переключения скоростей) это интерфейс (Автомобиль с автом. переключателем скоростей) ну где то так я себе это представил.
Трудности: Я не понял зачем не это нужно, где это применить.
Как можно знания этого урока применять в игру "Лабиринт 2d" там много кода дублируется. ? Я пока принцип инкапсуляции не могу никак применять.
Научился: Я на самом деле раньше знал что такое инкапсуляция (остальные парадигмы для меня пока загадка). Инкапсуляция это одна из парадигм ООП, сокрытие реализации программы. Если провести параллель с живым миром - пример на картинке, мы знаем человека, можем общатсья с ним, взаимодействовать, но не знаем как он устроен. Или, например, введя дату своего рождения в форму, форма отобразит сколько нам лет, все действия расчетов инкапсулированы в программу и не доступны нам. Если смотреть глубже, инкапсуляция защищает данные, например поля в классах, и мы, как программисты, качая библиотеки для C# пользуемся объектами, в которые икапсулированы подпрограммы и нам не зачем вникать в реализацию.
Трудности: Ничего
WinForms не гуд, хочу параллельно заниматься XAML