Обучение языку c#

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

основатель — Волосатов Евгений Витольдович
Open shop Карточки памяти

Карточки памяти

Создание популярной игры для развития памяти с 16 карточками.

Карточки памяти

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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Подготовка формы 00:28:24
1 тест
237 чел. ★ 4.9 Done
  Мы напишем игру «Карточки памяти».
На форме 16 карточек из 8 парных картинок.
Цель игры - попарно открыть все карточки.

Задание:
Подготовить картинки, настроить форму, сделать меню.
Разместить сетку, написать правила игры и сводку об авторе.
Отчёт отправил: 11353. AlliZzeN Выполнено за 12 час. 36 мин. [Показать отчёт]
Научился: Все эти шаги проходили ранее, но все равно приятно их закрепить. 
Сложности: Сложного ничего не было, кроме поиска подходящих картинок + рисование одной своей. 
2 Отображение карточек 00:29:01
1 тест
208 чел. ★ 4.9 Done
  На этом уроке мы сначала нарисуем блок-схему алгоритма игры,
а потом сделаем отображение и перемешивание карточек.
Отчёт отправил: 11353. AlliZzeN Выполнено за 6 час. 49 мин. [Показать отчёт]
Научился: Ничего сложного вроде бы. Но пришлось немного посидеть, обдумать каждый шаг с реализацией задуманного. 
Сложности: Были некоторые некоторые сложности с передачей Images в PictureBox.  
3 Алгоритм игры 00:26:50
66 чел. ★ 4.9 Done
  У нас всё готово для программирования.
На этом уроке мы напишем основной алгоритм.
Будем использовать блок-схему состояний с прошлого урока.
Отчёт отправил: 11353. AlliZzeN Выполнено за 2 дня 5 час. 1 мин. [Показать отчёт]
Научился: Влился вместе с блок-схемой в программу. Из доп. функций увеличил количество picturesBox'ов, теперь нужно открыть ТРИ одинаковые картинки. Теперь при открытии трёх картинок получаете 3 очка. Очки можете потратить на подсказки: Открыть третью карту, Добавить 7 сек, открыть три карты(не открытые). Так же на все про все дается 60 сек. Программа прошла тестирование. Вроде работает всё.  
Сложности: Написать немного по-своему и всё проконтролировать. Сутки просидел над функцией Открыть три не открытые карты. А все оказалось проще простого) Вот так всегда правильная идея приходит в самом конце)  
Видеообзор: _durF_l0_NM
4 Независимый класс 00:19:44
53 чел. ★ 4.9 Done
  На этом уроке мы приступим к рефакторингу для выделения логики игры в отдельный, независимый класс.
Мы определим в новом классе два публичных метода, а также создадим интерфейс IPlayable,
который поможет нам вызывать методы из внешнего класса,  не нарушая независимости.
Отчёт отправил: 11353. AlliZzeN Выполнено за 2 дня 23 час. 9 мин. [Показать отчёт]
Научился: Научился пользоваться интерфейсом и независимым классом. Я так понял, что интерфейс необходим для реализации внутренней логики игры. А Независимый класс необходим для взаимодействия пользователя с программой/игрой. 
Сложности: С первого раза не понятно было для чего что реализуется. С классами и интерфейсами немного знаком. Пришлось несколько раз пересматривать. В итоге без подсказок получилось сделать. Так как у меня программа отличается от урока, пришлось немного помудрить, да и в дальнейшем думаю придется помучиться. 
5 Классовая независимость 00:10:03
51 чел. ★ 5 Done
  На этом уроке мы перенесём все методы и поля,
которые относятся к логике игры, в независимый
и самодостаточный класс LogicMemory.
Отчёт отправил: 11353. AlliZzeN Выполнено за 9 час. 46 мин. [Показать отчёт]
Научился: Научился рефакторингу, работать с независимым классом и интерфейсом.  Полностью перенес поля, методы в отдельный класс логики, что-то пришлось добавить в интерфейс. Так же добавить пару методов в поля. Не знаю, правильно ли я сделал, но всё работает как часы. Тестирование игра прошла успешно(не с первого раза конечно) 
Сложности: Разобраться в своём коде и сделать так, чтобы все работало. 
Видеообзор: 31_pCPqDtkI
6 Класс в Библиотеке 00:06:18
47 чел. ★ 5 Done
  На этом уроке мы вынесем класс LogicMemory с интерфейсом в отдельный проект для создания библиотеки.
Не забудьте дать публичный доступ классу и интерфейсу, а также добавить Reference на добавленный проект.
Отчёт отправил: 11353. AlliZzeN Выполнено за 7 час. 41 мин. [Показать отчёт]
Научился: Создавать и подключать библиотеки .dll. Все работает.  
Сложности: Cложностей не возникло. 
7 Персональные картинки 00:02:33
43 чел. ★ 4.8 Done
  Мы начинаем создание карточек памяти для мобильных платформ: Android + iPhone.
В этом нам поможет технология Unity. Скачайте и установите Unity Personal,
а также найдите 9 *квадратных* картинок по вашей любимой тематике.
Убедитесь, что у вас есть файл MemoryLibrary.dll из прошлого урока.
Отчёт отправил: 11353. AlliZzeN Выполнено за 8 час. 27 мин. [Показать отчёт]
Научился: Урок простой. Unity уже была установлена вместе с VS. Вроде бы полная версия(не урезанная). Если что, то в дальнейшем обновлю. 
Сложности: Как всегда сложное - найти картинки. Так как сначала я выбрал постапокалипсическую тематику.  В этом же духи и буду продолжать. 
8 Запуск Unity с картинками 00:06:20
1 тест
42 чел. ★ 4.9 Done
  На этом уроке мы познакомимся с интерфейсом Unity.
Разместим в Assets подготовленные картинки и добавим их на сцену.
Запустим, порадуемся результату и морально подготовимся к следующему уроку.
Отчёт отправил: 11353. AlliZzeN Выполнено за 1 час. 18 мин. [Показать отчёт]
Научился: Усвоил интерфейс Unity. 
Сложности: Сложностей не возникло. 
9 Авоська картинок 00:08:08
1 тест
39 чел. ★ 4.9 Done
  На этом уроке мы разместим 16 кнопок в панель, с натройкой Grid Layout.
Поэкспериментируйте и напишите, что у вас получилось.
Отчёт отправил: 11353. AlliZzeN Выполнено за 31 мин. [Показать отчёт]
Научился: Пока не понял как изменить размер камеры/сцены. 
Сложности: --- 
10 Горизонтальное и Вертикальное 00:09:11
1 тест
39 чел. ★ 5 Done
  На этом уроке мы разместим панели внутри панели.
Будем использовать горизонтальное и вертикальное выравнивание.
В результате все 16 кнопок будут автоматически менять размеры под экран устройства.
Отчёт отправил: 11353. AlliZzeN Выполнено за 9 час. 51 мин. [Показать отчёт]
Научился: Разместил панели по- своему, т.к. у меня на win forms по 3 каждой картинке. 
Сложности: Не понял как сделать их квадратными и почему площадь камеры такая маленькая. 
11 Открытие по щелчку 00:15:36
2 теста
39 чел. ★ 4.9 Done
  На этом уроке мы создадим скрипт, в котором будет метод обработки нажатия по картинке.
Во второй части урока мы реализуем отображение выбранной картинки на кнопке.
Отчёт отправил: 11353. AlliZzeN Выполнено за 1 день 11 час. 38 мин. [Показать отчёт]
Научился: Работать с Юнити немного. 
Сложности: Сначала не получалось вывести сообщение, переделал. Так и не понял в чем была проблема. 
12 Неуловимая птичка 00:15:50
38 чел. ★ 4.9 Open
  На этом уроке мы подключим библиотеку к нашему проекту и запустим игру.
13 ФИНАЛЬНЫЙ УРОК без видео
19 чел. ★ 5 $
  Запишите видеообзор полученных программ.
14 VIP-загрузка на Android 00:08:43
23 чел. ★ 4.9 $
  На этом уроке формулист VIP расскажет, как запустить игру на Android.
  Итого:   14 видеоуроков 3 час. 06 мин.
7 тестов
14 чел. ★ 4.93  
  Финалисты:   Иван Воронин,   Snepper,   Александр Балбашов,   vip,   Кирилл,   Айдар,   Дмитрий,   Артём Нагорный,   no name,   Permitin Alexey,   ES35,   MaxB,   Tim,   Tom .

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





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

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

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

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


Научился: В этом курсе создал игру "Карточки памяти". Получил много практики в работе с интерфейсом программы, научился создавать библиотеку и использовать ее в новом проекте. Результаты работы можно посмотреть по адресу http://tomfoxweb.rf.gd/memorycards/



Научился: Благодарю за урок. Продолжаем развивать ютуб канал "Маленький программист" - https://www.youtube.com/channel/UCWZ7scvu0mbOHmnG9Z6FkEQ. Здесь мои дети выкладываю программы, которые решают самостоятельно.