На этом уроке мы создалим "универсальный" класс Crosser, который сможет проверять на столкновение "любых" двух Игроков. Конечно не любых, а только двух наших Box и Circle. Это яркий способ, чего стоит избегать в программах. Потому что тут не добавляется универсальности, т.к. при добавлении новых объектов придётся дописывать кучу новых функций на сравнение.
Самостоятельное задание - записать видеообзор своего проекта и рассказать, что такое Interface.
Дата отправки отчёта:
1 апреля 2016 г.
Задание выполнено: за
3 час. 00 мин.
Чему научился:
Поэкспериментировал с интерфейсами, повторил создание видео обзоров.
Что было сложным:
Выбрать какое-то одно решение проблемы на проверку пересечения объектов.
Комментарии:
Проблему проверки пересечения объектов решил немного другим путем, с помощью интерфейса Boundable, который требует, чтобы реализующие его объекты определили ограничивающие круги и прямоугольники вокруг фигуры. Это позволяет сравнивать не сами объекты со сложной конфигурацией, а упрощенные элементы, например, такие как круги. Для того, чтобы добавить нового игрока в игру, достаточно описать список этих ограничивающих поверхностей, а другие функции более высокого уровня уже работают не с самими объектами, а их границами, таким образом нет тесной связи между типами. Да, проверка получается грубее и менее точная. Здесь можно было бы изменить начальный интерфейс, но я пошел другим путем, оставил все как есть и искал куда бы добавить свой интерфейс Boundable. Мое решение так себе, пока не знаю как сделать лучше, но это позволяет создавать новых игроков и не беспокоиться об их сравнении с другими игроками. Для верности, добавил двух новых игроков с более сложной конфигурацией.
Курс понравился, стоит пересмотреть еще раз, так как многие "очевидные" моменты открываются с новой стороны. Спасибо, Евгений Витольдович!
Гениально! Вот оно, то, чего не хватало этому курсу для логического завершения! Интерфейс Boundable. Игроков можно тогда наследовать от двух интерфейсов и решить эту задачу красиВо! Спасибо за идею, обяазтельно при случае запишу ещё один урок для этого курса.
Спасибо Оля, надо параллельно практиковать подачу материала, чтобы говорить меньше и яснее. Посоветуй если знаешь какие-нибудь источники, каналы на ютубе для прокачки навыков ораторского искусства)
Ильшат, сама лично еще до этого не добралась, хотя на примете есть одни тренер ораторского мастерства - Радислава Гандапас, а постановка Голоса есть такая Школа Природного Голоса и Кирилл Плешакова-Качалин с курсами Возрождение Природного Голоса вот они круты, лично сейчас лучших еще я не знаю именно в этой области, сама планирую у них заниматься, для меня они авторитеты пока! :)
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: интерфейс - класс, методы которого созданы абстрактными и могут быть реализованы в классе, наследующем этот интерфейс Трудности: 15 минута видео (в чате):
Neverwinter@All: о, госпади... люди, зачем мы это попросили??
Тот вебинар, судя по комментариям, продолжался уже 6 (ШЕСТОЙ) час!
Это какая-то Спарта от сишарпа...
Научился: Немного изменил интерфейс программы, добавил возможность выбора игры, очистки игрового поля и добавление необходимого количество кружков или квадратиков.