На этом уроке мы реализуем логику программы. Вся логика программы реализуется в отдельном классе. Сделаем, чтобы программа отрабатывала все состояния. Шарики можно будет выбирать, пермещать, будут появляться следущие шарики.
Дата отправки отчёта:
18 июня 2016 г.
Задание выполнено: за
2 час. 45 мин.
Чему научился:
Передавать функцию делегатом в класс. Познакомился со способом управления программой при помощи универсальной функции (Step). Научился выбирать следующие шарики, перемещать их, обрабатывать различные ситуации (перевыбор шарика, отображение следующего, если на него поставили большой).
Что было сложным:
Самым сложным было понять некоторые вещи:
1} (rand.Next(1, max_colors + 1)); - почему нужно +1. ведь от 1 до 6, всё норм. зачем нам от 1 до 7??
2} функция public void ClickBox (int x, int y) - в ней if (status == Status.ball_mark) Show(marked_ball, Item.ball); - долго думал, чтобы понять, почему это работает.
Комментарии:
Ваще дать возможность проработать такой сложный курс бесплатно - это нереально круто. До сих пор не могу поверить, что я что то здесь даже понял. Огромное спасибо, Евгений Витольдович, что учите нас, хотя и мне кажется, что тут надо всё по-другому делать. Очень сложно следить за ходом мысли. Может для облегчения стоит выписывать все переменные и указывать рядышком их типы, потому как лично для меня, если видеть такую информацию перед глазами, легче понимать, что происходит. "Да, эта программа оказалась значительно сложнее, чем я думал изначально..." CopiRight ЕВ. Я тоже......
Вторым аргументом функции rand.Next() является граница, которая не входит в дапазон генерируемых значений. А для того чтобы было легче следить за ходом мысли мы и составляли блок-схему на первом уроке
Если пять раз переписать программу - то придёт и понимание и структура будет вылизана. Вся беда в том, что если давать такой идеальный вариант - ощущение разработки исчезает.
Потому, что отсчет начинается от нуля, если бы ты написал 7, то было бы 0,1,2,3,4,5,6, т.е. 7 цифр, а тут ты указал диапазон от 1 до 7, т.е. получается 6 цифр.
Это да.... Исчезнет. Но мне вот в голову пришла мысль (и почему она не пришла сразу же???) ЭТО ЖЕ НЕ ШАРИКИ!!! Это линии!! Шарики - это другая игра - там всё поле сразу заполнено, менять соседние местами и новые падают сверху (как пример самых лучших - сокровища монтесумы).
Спасибо, Елена. Я понял, хотя мне кажется страным этот ход разработчиков языка, все время нужно помнить, что -1 от второй границы отнимать. Ладно бы был один аргумент - скажем 7 - это с 0 получается 0-6... всё окей. Но когда конкретно написано от 1 до 6... блин. А про ход мысли неправильно выразился: сложно не за ходом следить (блок схема есть), а некоторые вещи понимать, что я описал во втором пункте сложностей. Вот там и помогает список переменных, как вспомнишь, что скрывается за этим словом - становится понятнее, что мы делаем.
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.