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

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

Теория ООП / Интерфейс. Кружок готов к игре!

  • На этом уроке мы допишем методы Игрока в классе Circle.
    Реализуем метод Беги() и Поймал(), и даже исправим
    недочёты в описании интерфейса (!!).
    В конце урока я ответил на многочисленные вопросы участников.
  • Дата отправки отчёта: 23 августа 2016 г.
  • Задание выполнено: за 15 мин.
  • Чему научился: раньше типы сравнивал
    (player.GetType() == typeof(Circle)
    как я понимаю эти записи эквивалентны
    (player is Circle)
    незнал )))
    на stackoverflow написано что typeof быстрее
  • Что было сложным: ничего
  • Комментарии: нужен игровой цикл
  • Оценка видео-уроку:
Отчёт от 10671 за Теория ООП / Интерфейс. Кружок готов к игре!




Оцени работу

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

9263. Андрей Н.
Андрей Н.
ответить
→  Александр Б.  # Теория ООП / Интерфейс. Кружок готов к игре! / 2016-08-23 18:29

оператор is как бы "культурнее" и "свежее"
ну и функции у них немного разные - is проверяет на совместимость, т.е is даст true в том числе и для наследников класса (или интерфейса)
а typeof возвращает экземпляр класса System.Type


  • Отчёт оценивали:
    10671Александр Б.+1   1Евгений Волосатов+1   11017Владимир Петреченко0   271Колесник Олег+1   4395Денис+1   10494Алексей В.+1   9567Максим+1   7276Ильшат+1   9323Алексей+1   6452Кирилл Шмойлов+1   459Сергей Сергеевич+1   10670Сергей Соколов+1   9263Андрей Н.+1   10673Алексей Хонин+1   7980Сергей Лузум+1   4467Alcatraz+1   6969Дмитрий Цвирко+1   11051Dima0   5263Павел+1   11020Светлана Львовна0   5649Максим Лапшинов+1   6925Артём+1   10390Amerigo+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Вычислять соприкосновения спрайтов.
Трудности: Понять весь этот матан.
Ну как я и написал в прошлом каменте - надо сравнивать 2 координаты фигур. Правда у меня как всегда в голове только расплывчатый образ был, без конкретной реализации. Вот сколько я в школу ходил и были там уроки геометрии и нигде никто не давал таких вот знаний, чтобы потом на практике применить. Вот про закон пифагора я знаю и что толку с этого? return Convert.ToInt16(Math.Sqrt(p.X - q.X) * (p.X - q.X) + (p.Y - q.Y) * (p.Y - q.Y)); Я бы такое под дулом автомата не придумал. Сто раз проверил все эти буквы, чтобы опечатки даже не сделать. А уж чтобы придумать... Как оказалось - границы фигуры вычисляются из центра. И это только для круга. А как для квадрата? А для треугольника? На старых приставках я замечал, что спрайт физически всегда является квадратом, даже если некоторые пиксели у него прозрачные. Кстати надо было graphics делать пнг формата с альфаканалом, чтобы белый фон фигуры не был виден. Так вот, походу всегда будут вычисляться координаты квадратных границ фигур, что внесет визуальные пиксельные погрешности, которые иногда видны на слабых системах при перерисовке спрайтов. Думаю это будет заметно и тут, когда фигур на арене будет много.
Научился: реализовывать метод пересечения окружностей
Для запуска нужно запустить на Арену кружки в движении и наблюдать результат!