На этом уроке мы начнём создавать класс Arena, который создаст поле для игры и реализует методы для отображения объектов на экране.
Дата отправки отчёта:
27 октября 2015 г.
Задание выполнено: за
20 мин.
Чему научился:
Кириллу респект, хорошо подметил, что в конструкторе переменная picture ссылается на аргумент, а не на член класса Arena. Код и так и сяк будет работать, согласен с Евгением Витольдовичем, но менять косвенно состояние this.picture через аргумент на мой взгляд это словно зайти в дом через черный вход, мало ли, что тебя там ожидает. Возможно в C# есть какой-нибудь механизм, защищающий от этого, аналогичный const ссылкам и указателям C++ на аргументы функций.
Что было сложным:
Нарисовать окольными путями кружок на форме, для этого добавил pictuteBox на форму, добавил Arena.Show(), создал объект Arena в коде инициализации формы.
Комментарии:
Класс Арена нужен для того, чтобы инкапсулировать отображение наших игроков Circle на форме, чтобы, например, не вручную в коде форме вызывать функции DrawEllipse, а создать какой-нибудь удобный интерфейс Arena.Show(object). Вообще говоря, класс Арена малек перегружен по смыслу, он кроме того, умеет создавать новые Circle и статический Range меня немного смущает, но соглашусь с Евгением Витольдовичем, не стоит усложнять код)
Научился: Больше узнал о конструкторах и инструментах для рисования. Трудности: Попытался нарисовать как порекомендовали в видео, но что-то пошло не так.В следующем уроке узнаю в чём же конкретно была моя ошибка.