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

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

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

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

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

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

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


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




Оцени работу

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

2146. Иван
Иван
ответить
→  Андрей  # Теория ООП / Инкапсуляция мечты / 2015-09-27 17:18

Отличный отчет получился. Все по делу


24. Оля
Оля
ответить
→  Андрей  # Теория ООП / Инкапсуляция мечты / 2015-09-26 22:11

Андрей, замечательно что урок тебе понравился и если ты все уже знаешь почему не написал своими словами что такое ИНКАПСУЛЯЦИЯ!!! Это было один из пунктов задания!
Пожалуйста, напиши свое определение и продолжай двигаться дальше!
Пока ставлю плохо и готова исправится на хорошо после твоего определения!!! :)


  • Отчёт оценивали:
    1947Denis+1   6919Anton Sozykin+1   7303Игорь+1   1901Neverwinter 2+1   5649Максим Лапшинов+1   1Евгений Волосатов+1   6298Anton+1   2721mikemet+1   5489Serg+1   459Сергей Сергеевич+1   4995Иван+1   1101Аркадий+1   6452Кирилл Шмойлов+1   4889Валера Луцевич+1   6458Илья+1   2146Иван+1   4814Дмитрий+1   4004Елена+1   6730Павел+1   5882Александр Широков+1   429Максим Базуев+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Выражать свои мысли про интерфейс)
Трудности: Подобрать пример для описания различий между интерфейсом/реализацией.
Инкапсуляция - это разделение структуры некоторого процесса, явления на две части: интерфейс и реализацию. Необходимость интерфейса обуславливается тем, что для пользователя не имеет значения то, как реализован некий процесс. Например, я как пользователь мобильного телефона не заинтересован в том, каким образом реализуется функция набора номера. Более того, в разных моделях эта функция реализована по разному. Мне эти детали не нужны. Мне нужно лишь знать общую последовательность действий, чтобы позвонить необходимому человеку. Т.е., я ожидаю получить удобный интерфейс, который позволит мне быстро и удобно набрать номер друга, а не изучать схемотехнику и замыкать нужные провода на схеме телефона. В итоге, интерфейс необходим для того, чтобы оградить пользователя от деталей реализации, от сложных процессов в начинке, от ошибочных действий с системой. Кроме того, интерфейс подбирается с учетом требований пользователя; возможно создание нескольких интерфейсов. Например, интерфейс для новичков, с ограниченными возможностями для управления процессом, где большинство параметров устанавливается по умолчанию. Интерфейс для опытных пользователей, для более тонкой "настройки под себя". Инкапсуляция в программировании выражается в правильной модульности исходного кода, разделении интерфейса и реализации. Например, в языке C++ для создания интерфейса используются заголовочные файлы, например MyLib.h, где пользователю доступны интерфейсы, а детали реализации расположены в файлах .cpp. На более низком структурном уровне инкапсуляция выражается в виде namespace, и далее в виде классов, где для разделения интерфейса и реализации используются секции кода public:, private:. На скриншоте показана кабина самолета Ил-96 (интерфейс) и общий вид самолета (его реализация)
Научился: Загуглил что такое инкапсуляция. Это один из трех основополагающих постулатов ООП. Инкапсуляция - объединение методов и данных в одной системе, с возможностью скрытия некоторых данных и методов от влияния извне.
Трудности: Сложностей не было.
Я рассчитывал на краткое теоретическое вступление. Но как я понял курс рассчитан на практическое освоение ООП, без излишнего пересказа общедоступной информации. Возможно, так будет эффективнее, посмотрим.