C# обучение видео

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

Морской Бой

Создание полноценной игровой программы Морской Бой.
Объектная модель кораблей и моря + искусственный интеллект.

Объём: 15 уроков.
Срок: 30 дней.

2,000 руб.


Для подписки на пакет необходимо авторизоваться.

Список уроков | фото | видео

# Название видеоурока Решило Рейтинг Доступ
1 Планирование 00:40:08 58 чел. ★ 4.9 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Разрабатывать программу в самых общих чертах, не вдаваясь ни в какие подробности. 
Сложности: Понять ход мысли, необходимый для такого моделирования. 
Комментарии: Описан очень важный этап создания программы. Скорее всего, будет доходить на протяжении всего курса... 
2 Море и Корабль 00:57:13 53 чел. ★ 5 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 2 час. 00 мин. [Показать отчёт]
Научился: - Создавать пользовательские типы; - работать с перечислениями, - делать textBox-ы многострочными и заполнять их (+ знакомство с Environment); - вспомнил, как работать с двумерными массивами и функциями. 
Сложности: Вылавливать "баги" при проверочном запуске. 
Комментарии: Оценил в полной мере полезность проверки классов на форме (наглядно). 
3 Редактор и Сетка 00:59:58 47 чел. ★ 5 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 3 час. 00 мин. [Показать отчёт]
Научился: 1. Работа с DataGridView. 2. Взаимодействие между классами (в том числе между потомками и родительскими). 3. Повторил работу с цветом, строками и массивами. 
Сложности: Разобраться с наследованием свойств классом Редактор. Долго вылавливал ошибку с "null reference exception" из-за создания нескольких экземпляров sea_user. 
Комментарии: Всё понятно и интересно!) 
4 Делегаты отображения 00:32:57 43 чел. ★ 5 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 2 час. 00 мин. [Показать отчёт]
Научился: Узнал, что такое делегаты, для чего они нужны и как с ними работать. 
Сложности: Всё понятно! 
Комментарии: Всё понятно! 
5 Установка кораблей 00:38:34 37 чел. ★ 4.9 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 1 час. 30 мин. [Показать отчёт]
Научился: Более подробно изучил DataGridView и попрактиковался в самостоятельном программировании. 
Сложности: Ничего. 
Комментарии: Всё хорошо!) 
6 Олимпиада - Самый лучший алгоритм 00:49:59 33 чел. ★ 4.8 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 3 час. 00 мин. [Показать отчёт]
Научился: Искать разные способы решения поставленной задачи. Сравнивать эффективность разных алгоритмов с помощью C#. Эффективно играть в Морской бой. :-) 
Сложности: Придумать свой эффективный алгоритм, отличающийся от предложенных. Пока не удалось. Предположения: - задействовать random, чтобы защититься от искусственно подобранных "контррасстановок"; - перед каждым выстрелом находить возможное расположение кораблей; - стремиться к равномерному обстрелу вертикалей и горизонталей; - возможно, использовать заготовленные шаблоны совместно с random. 
Комментарии: Понравился алгоритм Orange. Свой пока сделаю простым. 1. Создадим матрицу 10 × 10, в которой номерами установим порядок обстрела всех точек. - Правило обстрела выберем по диагоналям с постепенно уменьшающимся интервалом. - Оставшиеся часть матрицы заполним, отразив первую зеркально. 2. Будем последовательно перебирать в заданном порядке я чейки для обстрела. 3. Стреляем, если ячейка имеет статус "неизвестно". 4. Если ранили, то добиваем корабль. - проверяем ячейки по горизонтали и по вертикали от раненой; - если снова попали, запоминаем направление, а соседние ячейки в другом измерении помечаем "мимо";; - если после этого промах - добиваем в обратную сторону; 
7 Олимпиада - Угадай число 00:23:26 40 чел. ★ 4.7 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 15 мин. [Показать отчёт]
Научился: Разминка 
Сложности: Ничего. 
Комментарии: Не стал мудрить, решил простейшим способом. 
8 Олимпиада - Создание ИИ - Стратегия 00:12:46 26 чел. ★ 5 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 6 час. 00 мин. [Показать отчёт]
Научился: Отслеживать логику программы. 
Сложности: Пожалуй, нормально обработать добивание. Проверку на соседние корабли смог сделать только на этапе проверки выстрела. Заранее отметить поля "мимо" , как планировал вначале, не удалось. 
Комментарии: Интересная задача на логику!!!)) Алгоритм получился частично рандомным. Предложенный пример решается за 33 или 71 ход 
9 Олимпиада - Создание ИИ - Шаблон ударов 00:35:30 24 чел. ★ 4.9 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Грамотно раскладывать свой алгоритм на отдельные методы. 
Сложности: Ничего. 
Комментарии: Было очень интересно сравнить структуру своего кода для Mission.cs с предложенным здесь. 
10 Олимпиада - Создание ИИ - Добивание корабля 00:49:11 24 чел. ★ 4.9 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 1 час. 30 мин. [Показать отчёт]
Научился: Алгоритмизация... 
Сложности: Не запутаться, так как алгоритм начал сильно расходиться с моим - появилось много нового. 
Комментарии: Всё отлично! 
11 Рефакторинг кода 00:27:28 18 чел. ★ 5 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Посмотрел, как трансформируются отдельные методы при переносе из одного класса в другой: что в них остаётся неизменным, а что обновляется, как это влияет на остальную программу. В итоге, надеюсь, ещё лучше усвоил механизмы передачи данных внутри программы. 
Сложности: Ничего. 
Комментарии: С этого момента я начал знакомство с видеокурсом - это был мой первый вебинар. Сейчас смог сравнить уровень понимания материала: примерно 20-30% тогда и , кажется, 100% сейчас!))) 
12 Интерфейс игры 00:21:58 18 чел. ★ 5 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Повторил работу с элементами формы и её событиями. 
Сложности: Ничего. 
Комментарии: 1. Был "глюк" со случайной расстановкой кораблей - у пользователя и компьютера очень легко было получить совпадающие случайные расстановки. Решил только многократным вызовом sea_comp.ПоставитьСлучайно(); Для верности число повторов тоже сделал случайным (10..20). 2. Сброс сетки компьютера при нажатии Старт. (В классе SeaGrid добавил функцию ClearGrid()). 3. "Секретная кнопка" использует массив карта_кораблей и по точкам вызывает ShowCompShip(Точка place, int nr) 
13 Последний Бой! 00:26:59 18 чел. ★ 5 Done
  Отчёт отправил: 7980. Сергей Лузум Решено за 1 час. 30 мин. [Показать отчёт]
Научился: Самое главное - подключать другие классы к готовой программе. 
Сложности: В некоторых случаях обыграть компьютер!)) 
Комментарии: Ура! Свершилось!) Игра заработала, да ещё и серьёзным соперником оказалась!!! 
14 ФИНАЛЬНЫЙ УРОК 00:23:23 4 чел. ★ 5 $
15 VIP. Анимированный кружок 00:32:54 113 чел. ★ 4.9 $
16 VIP. Анимированный кубик 00:44:27 102 чел. ★ 5 $
  Итого:   16 видеоуроков общей продолжительностью 9 час. 36 мин. 2 чел. ★ 4.94  
  Финалисты:   Алексей В.,   Ильшат .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Писать видеообзор
Трудности: Писать видеообзор
+++
Смотреть видеозапись: https://youtu.be/E-6mLJqTCJY
Научился: Записывать видеоотчет
Трудности: Собраться, привести мысли в порядок.
Все отлично, только устал почему. Как после экзамена.
Смотреть видеозапись: https://youtu.be/iatyL_ATxhI