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