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

Формула программиста

основатель — Волосатов Евгений Витольдович

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса  999  499 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 16 рублей.

Первый взнос - 499 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 499 (вместо 999) рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 499 руб./30 дней + 500 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 Планирование 00:40:08
1 тест
100 чел. ★ 4.9 Done
  Мы начинаем создание игровой программы Морской Бой.
1. Создать объектную модель.
2. Реализовать классы Корабль и Море.
3. Спроектировать интерфейс игры. DataGridView.
4. Написать Искусственный интеллект.
5. Реализовать игру с компьютером.
6. Реализовать сетевую версию игры на двоих.

Отчёт отправил: 12230. LINKI Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Null 
Сложности: Null 
Комментарии: Very Good! Заинтересовало ;) / У меня чуть другие планы, но пока структура такая будет ;) 
2 Море и Корабль 00:57:13
1 тест
92 чел. ★ 5 Done
  На этом уроке мы создадим "ядро" программы, два основных класса - Корабль и Море.
А в конце урока протестируем их работу.
Отчёт отправил: 12230. LINKI Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: Null 
Сложности: Найти время 
Комментарии: VERY GOOD / Получилось не плохо. Вот за, что люблю ООП ;))))) 
3 Редактор и Сетка 00:59:58
84 чел. ★ 5 Done
  На этом уроке мы разместим и настроим DataGridView.
Потом расширим класс Море до Редактора, добавив методы
для автоматического размещения всех кораблей.
Отчёт отправил: 12230. LINKI Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: Null; 
Сложности: Найти время ;) 
Комментарии: Прикольно получается ;))) Я ещё сделал тот самый алгоритм для нахождения всех клеток от первой точки до второй. Ещё не стал делать размер полей статичным - ибо хочу потом сделать несколько полей (4 или 6) и они по парно будут с разными размерами ;) Сделал "адаптивную форму" ну тоисть - сделаешь карту в 100 клеток форма растянется, второе поле тоже и кнопки опустятся, (При любых размерах вид остаётся хорошим). +Сделал алгорити, который возвращает букву енг алфавита (пример: A1, Z48), мозги поломал, а нужен был он для того, чтобы поля можно было бы делать огромными и при этом в ручную не забивать массив этих букв... Вообщем понравилось! Класс! 
4 Делегаты отображения 00:32:57
1 тест
79 чел. ★ 5 Done
  На этом уроке мы перенесём функции из Моря в редактор и
создадим Делегаты для отображения Кораблей и Выстрелов.
Отчёт отправил: 12230. LINKI Выполнено за 2 час. 28 мин. [Показать отчёт]
Научился: Null 
Сложности: Найти время ;) 
Комментарии: Классно получается. Всё понятно и классно. Самое забавное, что я сам себе растягиваю время - если Евгений, что-то сказал, что нужно что-то сделать, ставлю на паузу и сам делаю, потом сверяю и обычно у меня получается хорошо :))) 
5 Установка кораблей 00:38:34
1 тест
73 чел. ★ 4.9 Done
  На этом уроке мы дадим возможность пользователю
устанавливать корабли мышкой и с клавиатуры.
Отчёт отправил: 12230. LINKI Выполнено за 2 час. 28 мин. [Показать отчёт]
Научился: Null 
Сложности: Найти время 
Комментарии: Классно получается! Прикольно, эт я - на 15 минуте остановил сам сделал, потом остальное видео смотрел. Мне было легче делать проверки и другие чтуки из-за того, что я реализовал тот самый алгоритм, который с ЛВ точки до ПН точки ставит корабль. Ещё я сделал другое удаление корабля - ПКМ по любой точке корабля :) (в том же событии нажатия можно было бы сделать ;) ) /  Сделал проверку поставки корабля, а не удаление - для этого написал 2 функции ( 1 -ЕстьЛиОколоТочкиКорабль / 2 - ЕстьЛиОколоКорабляКорабли) - и всё отлично работает - корабли нельзя ставить близко друг к другу - в общем, как по правилам ;) / Сделал ещё кнопку "очистки моря". Ну а остальное тоже самое, что и у Евгения. И да теперь я знаю - КАК УЖАСНО ДЕЛАТЬ РУСАЧИЕ НАЗВАНИЯ ФУНКЦИЯМ, ПЕРЕМЕННЫМ, КЛАССАМ - больше так точно делать не буду, но хоть узнал каково это ;))))) 
6 Олимпиада - Самый лучший алгоритм 00:49:59
67 чел. ★ 4.9 Done
  На участие в олимпиаде было прислано 10 работ.
В этом видео мы проводим тестирование всех программ.
Домашнее задание - составить словесный алгоритм ИИ.

Отчёт отправил: 12230. LINKI Выполнено за 50 мин. [Показать отчёт]
Научился: Null 
Сложности: Null 
Комментарии: Прикольно. Я хотел бы добавить 3 алгоритма(3 уровня сложности): 1) Бьёт случайно и ничего не проверяет 2) Бьёт случайно, но умно 3) Знает где все корабли, но поддаётся чуть чуть (чтоб было возможно победить) Было-бы классно если бы мы (в курсе) создавали такой "тестер" алгоритмов ;) 
7 Олимпиада - Угадай число 00:23:26
73 чел. ★ 4.9 Done
  Класс Secret загадал число.
Вам нужно написать класс Strategy,
который сможет его отгадать.
Инструкции в видео-уроке.
Отчёт отправил: 12230. LINKI Выполнено за 1 час. 28 мин. [Показать отчёт]
Научился: Null 
Сложности: Найти время 
Комментарии: Очень прикольное задание. Даже видео не смотрел ;). Разобрался. Написал 3 алгоритма. 1) МетодГрубойСилы(BrootForce) - просто увеличивает значение на 1 ;D - не предсказуемое кол-во итераций 2) МетодРандомногоСреза - это массив int который срезается и рандомное следуещее значение принимает - максимальное кол-во итераций - 100 - когда тестил первые разы был идивлён (за 2 итерации находил), а оказалось что seed у класса Secret был таким-же, что и у Strategy, поэтому привязал к Seed рандома к Времени, я так в C++ обычно делаю ;)))). 3) МетодСреза - очень простой и эффективный метод :)) Максимум за 10 итераций находит "секретное" число. Сделал 3 наверное для того, чтобы сделать ИИ глупее или умнее ;))))))) 
8 Олимпиада - Создание ИИ - Стратегия 00:12:46
58 чел. ★ 5 Done
  Олимпиадная задача - создать алгоритм ИИ для игры в Морской бой.
Подробности на видео.
Отчёт отправил: 12230. LINKI Выполнено за 3 час. 33 мин. [Показать отчёт]
Научился: Попрактиковался 
Сложности: Очень долго не мог найти время на прохождение урока ;) 
Комментарии: Очень классно! Я сделал 4 алгоритма! Один класс, и функция которыя определяет текущий режим (какой алгоритм будет работать). Вообщем сделал 4 режима и нашёл крупненькую уязвимость в коде ;))) 1) StupidRandom - Просто псевдо рандомные выстрелы в море ~90 ходов 2) SmartRandom - Умные выстрелы (если попал, то добивает и обделяет корабль, чтобы около него не стрелять) ~50 3) Hacker(=20 ходов) - Он знает где корабли и чётко по ним стреляет - это я сделал не поиском сингнатур в памяти(как Orange), а обычной уязвимостью - суть в том, что если к нам пришёл объект - Море sea, то почему бы его не переопределить, как Редактор sea? Я просто сделал функцию, которая получает корабли хитрым способом, по номерам и кладёт их в массив - вот это важную роль играет - ((Редактор)sea).КартаКораблей(Точка) - возвращает int(номер корабля). Хитрооо... Прикольно получилось и сделал быстро :) 4) StupidHacker - "притупленный" хакер - стреляет точно, но иногда "притупляется" - 1 к 3. В среднем ~40 ходов. Мне очень понравился результат. Больше всего времени потратил - на второй алгоритм ;) Больше всего мне понравился 3 ;)))))))))))))))) (На скриншоте 2 алгоритм) 
9 Олимпиада - Создание ИИ - Шаблон ударов 00:35:30
54 чел. ★ 5 Done
  Алгоритм искусственного интеллекта для игры в Морской бой состоит из двух этапов:
1. нанесение ударов по шаблону для поиска 4-палубного и 2-палубных.
2. добивание раненного корабля и пометка клеток вокруг потопленного корабля.
На этом уроке разберём и реализуем первый этап.
Отчёт отправил: 12230. LINKI Выполнено за 36 мин. [Показать отчёт]
Научился: Null 
Сложности: Null 
Комментарии: Круто получилось. Я конечно не стал делать этот алгоритм потому, что я уже сделал свой, как по мне может и мой несколько отличается от того, который в уроке, но мне мой нравится не меньшим количеством ходов, а своей некой псевдо-рандомностью ;) Так, что у меня не было цели сделать супер алгоритм, а была цель сделать 3 алгоритма, для 3-ёх уровней сложности :) (Просто смотрел видео и попивал чай) 
10 Олимпиада - Создание ИИ - Добивание корабля 00:49:11
1 тест
51 чел. ★ 4.9 Done
  Алгоритм искусственного интеллекта для игры в Морской бой состоит из двух этапов:
1. нанесение ударов по шаблону для поиска 4-палубного и 2-палубных.
2. добивание раненного корабля и пометка клеток вокруг потопленного корабля.
На этом уроке разберём и реализуем второй этап.
Отчёт отправил: 12230. LINKI Выполнено за 50 мин. [Показать отчёт]
Научился: Null 
Сложности: Null 
Комментарии: #2 ;))))))))))))))))))) Круто получилось. Я конечно не стал делать этот алгоритм потому, что я уже сделал свой, как по мне может и мой несколько отличается от того, который в уроке, но мне мой нравится не меньшим количеством ходов, а своей некой псевдо-рандомностью ;) Так, что у меня не было цели сделать супер алгоритм, а была цель сделать 3 алгоритма, для 3-ёх уровней сложности :) (Просто смотрел видео и попивал чай) 
11 Рефакторинг кода 00:27:28
45 чел. ★ 5 Done
  На этом уроке мы займёмся рефакторингом нашего проекта.
Создадим класс SeaGrid, в который перенесём некоторые
функции из класса формы.
Отчёт отправил: 12230. LINKI Выполнено за 30 мин. [Показать отчёт]
Научился: Null 
Сложности: Null 
Комментарии: Я всегда люблю разделять части кода и в основной программе - оставлять только использование, того, что я написал (библиотеки, классы и тд). Полезный урок - учит, что это правильно ;)))))))))) Я сразу задание прочитал и выполнил. Псссс. Кстати 4 функции в коде формы - не нужны были ;) Так, как в делегат мы могли передать - GridUser.ShowShips, а так, как у нас 2 объекта SeaGrid, следовательно 4 функции = мусор ;)))) Всем рекомендую разделять код! Когда-то я даже не знал, что такое классы... И писал игру в 6k строк (HackGame) в одном классе - Program 0_0. Теперь же пишу движок и модули(HackGame2.0), а в основной программе всего строчек 20-40, использую ООП, интерфейсы. Единственные минусы C# - Малая Кроссплатформенность и Не очень Производительность(чего вы хотели С++ написан на C, C# написан на C++ ;))) (Вроде так)) Я только на C++ пишу, когда нужна кроссплатформенность ;) А так C# люблю больше, уж самый он удобный и красивый (Привет PHP"шникам! ;D(не все поймут)) 
12 Интерфейс игры 00:21:58
1 тест
44 чел. ★ 5 Done
  На этом уроке мы создадим интерфейс пользователя -
разместим несколько кнопочек и запрограммируем их.
Также создадим перечисление всех режимов игры.
Отчёт отправил: 12230. LINKI Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Null 
Сложности: Найти время 
Комментарии: Класс! У меня уже всё было готово, кроме кнопки старт и секретной функции ;)))) 
13 Последний Бой! 00:26:59
40 чел. ★ 5 Done
  На этом уроке мы закончим создание Морского боя.
Сделаем отображение выстрелов пользователя.
Подключим класс Mission и сделаем ход компьютера.
Ходы будут выполняться в порядке очереди.
Нам потребуется таймер для постепенного
отображения серии ходов компьютера.
Отчёт отправил: 12230. LINKI Выполнено за 1 час. 28 мин. [Показать отчёт]
Научился: Null 
Сложности: Найти время ;) 
Комментарии: Очень классно! Я даже на средней сложности ели как выиграл - были эпичные баталии 0_o не ожидал такого :_ Я ещё сделал так, чтобы, когда корабль убит - он весь закрашивался в цвет убитого, а не одна клетка ;) А эти жёлтые клетки на скриншоте - это "пользовательские отметки" - их можно ставить нажав на ПКМ и при этом можно так и отмечать так и убирать отметку (можно ставить на клетку с статусом - неизвестно) - сделано для того, чтобы отмечать места, где точно не может быть кораблей - я мог сделать, чтобы автоматически вокруг корабля отметки делались, но тогда играть будет менее интересно, поэтому не стал ;) Кстати сделал прозрачное поле - элегантно - просто "вырубил" делегат отображения во время старта игры и потом вернул обратно :) 
14 ФИНАЛЬНЫЙ УРОК 00:23:23
1 тест
17 чел. ★ 5 Done
  Записать видео обзор Морского боя. созданного на этом курсе.

Отчёт отправил: 12230. LINKI Выполнено за 4 час. 00 мин. [Показать отчёт]
Научился: +К практике 
Сложности: Найти время на выполнение. Долго болел - не мог делать, температура было :( 
Комментарии: Очень понравился курс "Морской Бой". Но VIP уроки я наверное сделать не смогу, так как их 2 и следующий открывается после набирания предыдущего 16 лайков :), а мне осталось до 31. Печалька :_ / Хотя может быть VIP уроки выполняются ВНЕ курса - то есть срок закончится, а выполнять VIP уроки можно будет? Кстати. Я после того, как вылечился, за 1 ВЕЧЕР СДЕЛАЛ ЭТОТ МОНТАЖ. Это даже удивило 0_0 :) 
Видеообзор: cOjxEzZqkw4
15 VIP. Анимированный кружок 00:32:54
125 чел. ★ 4.9 Done
  На этом уроке мы создадим двигающийся кружок,
из которого потом сделаем анимированый кубик.

Задание:
Создать два класса с наследованием.
Сделать плавное перемещение кружка.
Отчёт отправил: 12230. LINKI Выполнено за 40 мин. [Показать отчёт]
Научился: +Практика работы с графикой 
Сложности: null 
Комментарии: Классно получилось. Можно было-бы сделать перерисовку так - box.Refrash();  :) Я ещё сделал, чтобы на паузу анимацию можно поставить было :) 
16 VIP. Анимированный кубик 00:44:27
114 чел. ★ 5 Done
  На этом уроке мы создадим массив из кружков,
они будут сначала двигаться случайно, похоже на бильярд.
Дальше мы создадим правила для их передвижения
и в конечном итоге реализуем анимированный игральный кубик.

Задание:
Нарисовать верхнюю сторону игрального кубика
с шестью анимированными точками для смены чисел.
Отчёт отправил: 12230. LINKI Выполнено за 1 час. 28 мин. [Показать отчёт]
Научился: Реализация 
Сложности: null 
Комментарии: Классно получилось! НА ЗАМЕТКУ (БУДЕТ ПОЛЕЗНО): Можно не создавать Brush! А просто сделать так - pen.Brush; ;D 
  Итого:   16 видеоуроков 9 час. 36 мин.
7 тестов
14 чел. ★ 4.97  
  Финалисты:   Алексей В.,   Ильшат,   Станислав,   Tekashnik,   Новопашин Владимир,   LINKI,   Dimon,   Yefim,   chokayes,   Николай Денисов,   Максим Лапшинов,   Александр,   vip,   MaxB .

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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: Запиливать видос.
Трудности: Что творится с моим организмом - все слова разом пропадают и несу какой-то бред.
Следующий курс - куда укажет улиточная судьба.


Научился: Записывать видеоотчет
Трудности: Собраться, привести мысли в порядок.
Все отлично, только устал почему. Как после экзамена.