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

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

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

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

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

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

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

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

Задание:
Подготовить картинки, настроить форму, сделать меню.
Разместить сетку, написать правила игры и сводку об авторе.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 1 час. 47 мин. [Показать отчёт]
Научился: Вспмонил по компонент tableLayoutPanel. 
Сложности: Пфф.. Да ничего! Хотя нет. Было сложно... Подобрать иконку! Бесит блин - перебираешь кучу вариантов - и все не подходят! :-))) Хоть сам сиди рисуй!! Еле догадался - карточки памяти же (памяти Карл!) Я и набрал:  память! Нашлась иконка - самое то))) 
2 Отображение карточек 00:29:01
1 тест
208 чел. ★ 4.9 Done
  На этом уроке мы сначала нарисуем блок-схему алгоритма игры,
а потом сделаем отображение и перемешивание карточек.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 7 час. 21 мин. [Показать отчёт]
Научился: Вспомнил, как создавать объекты на форме динамически. 
Сложности: Самым сложным было сделать так, чтобы количество картинок можно было менять. (Покажу на след уроке). 
3 Алгоритм игры 00:26:50
66 чел. ★ 4.9 Done
  У нас всё готово для программирования.
На этом уроке мы напишем основной алгоритм.
Будем использовать блок-схему состояний с прошлого урока.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 4 час. 44 мин. [Показать отчёт]
Научился: Вспомнил, как динамически создавать объекты на форме. Вспомнил, как получать с другой формы данные. Разработал универсальный алгоритм для этой игры. 
Сложности: Самым сложным было сделать универсальный алгоритм, который бы подходил к любым ситуациям: произвольный размер поля, пары-тройки-четверки....  
Видеообзор: 30rnGEC217I
4 Независимый класс 00:19:44
53 чел. ★ 4.9 Done
  На этом уроке мы приступим к рефакторингу для выделения логики игры в отдельный, независимый класс.
Мы определим в новом классе два публичных метода, а также создадим интерфейс IPlayable,
который поможет нам вызывать методы из внешнего класса,  не нарушая независимости.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 1 час. 11 мин. [Показать отчёт]
Научился: Создавать интерфейс 
Сложности: Самое сложное будет дальше - переделать мой код под новые требования - у меня то параметры извне берутся, то есть карточек не 16 а любое количество))) Мне и самому интересно, как я это умудрюсь сделать) Подороге тут структурирую свой же код, выделяя какие то функции. Да, разумеется, точно также у меня не получится, как на видео, но я буду стремиться подстроить свой код под необходимый результат. (например у меня он "зашуфлил" и массив картинок то сохранился - поэтому они вразброс.) 
5 Классовая независимость 00:10:03
51 чел. ★ 5 Done
  На этом уроке мы перенесём все методы и поля,
которые относятся к логике игры, в независимый
и самодостаточный класс LogicMemory.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 1 час. 43 мин. [Показать отчёт]
Научился: Попробовал выделить логику в отдельный класс. 
Сложности: Божимой.... Чего я понаделал!?!? Как это всё работает?)))) Мне было гора-аздо сложнее, чем в уроке. Как ни странно, получилось. Видно, что в форме только логика, а все переменные ушли "вовнутрь". Голова пухнет, капец)))) PS не пугайтесь: сначала выскакивает мэссадж бокс, а потом счет обновляется и картинки закрашиваются... 
6 Класс в Библиотеке 00:06:18
47 чел. ★ 5 Done
  На этом уроке мы вынесем класс LogicMemory с интерфейсом в отдельный проект для создания библиотеки.
Не забудьте дать публичный доступ классу и интерфейсу, а также добавить Reference на добавленный проект.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 24 мин. [Показать отчёт]
Научился: Познакомился с созданием dll 
Сложности: Самым сложным... Ну что было? В общем-то та форма options, которую я добавил - это же то же интерфейс пользователя, и его не должно быть в библиотеке. Пришлось его отделить. Надеюсь, сумею в Uniti создать свои options)) ... Интересно, а там "менюшку" такую же можно сделать? Есть такой компонент? 
7 Персональные картинки 00:02:33
43 чел. ★ 4.8 Done
  Мы начинаем создание карточек памяти для мобильных платформ: Android + iPhone.
В этом нам поможет технология Unity. Скачайте и установите Unity Personal,
а также найдите 9 *квадратных* картинок по вашей любимой тематике.
Убедитесь, что у вас есть файл MemoryLibrary.dll из прошлого урока.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 33 мин. [Показать отчёт]
Научился: Узнал, что при поиске картинок можно задавать точный размер 
Сложности: Найти картинки. Хотел машины - но подобрать много штук одинакового размера? (а мне надо много а не 8). Лан. Получится с options сделать - заморочусь)))) 
8 Запуск Unity с картинками 00:06:20
1 тест
42 чел. ★ 4.9 Done
  На этом уроке мы познакомимся с интерфейсом Unity.
Разместим в Assets подготовленные картинки и добавим их на сцену.
Запустим, порадуемся результату и морально подготовимся к следующему уроку.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 9 мин. [Показать отчёт]
Научился: Всё знал. 
Сложности: Ничего. 
9 Авоська картинок 00:08:08
1 тест
39 чел. ★ 4.9 Done
  На этом уроке мы разместим 16 кнопок в панель, с натройкой Grid Layout.
Поэкспериментируйте и напишите, что у вас получилось.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 28 мин. [Показать отчёт]
Научился: Познакомился со свойством Grid Layout Group элемента panel 
Сложности: Не нашел способа красиво разместить кнопки, чтобы не вылазили за панель, хотя и полазил по всем лэйаутам. 
10 Горизонтальное и Вертикальное 00:09:11
1 тест
39 чел. ★ 5 Done
  На этом уроке мы разместим панели внутри панели.
Будем использовать горизонтальное и вертикальное выравнивание.
В результате все 16 кнопок будут автоматически менять размеры под экран устройства.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 13 дней 4 час. 56 мин. [Показать отчёт]
Научился: Бывает, начнёшь делать урок, потом надо отойти... а время идет... 
Сложности: Все получилось, как на видео. Пока так. Идем дальше. 
11 Открытие по щелчку 00:15:36
2 теста
39 чел. ★ 4.9 Done
  На этом уроке мы создадим скрипт, в котором будет метод обработки нажатия по картинке.
Во второй части урока мы реализуем отображение выбранной картинки на кнопке.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 1 час. 6 мин. [Показать отчёт]
Научился: Узнавать, по какой кнопке был произведён щелчок. 
Сложности: Загружаю картинки из ресурсов чтобы не перетаскивать их на "раб. стол." 
12 Неуловимая птичка 00:15:50
38 чел. ★ 4.9 Done
  На этом уроке мы подключим библиотеку к нашему проекту и запустим игру.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 21 мин. [Показать отчёт]
Научился: Подключаем библиотеку к проекту и используем её функции. 
Сложности: Сложным ничего не было. Всё сразу получилось. Сразу подключилась библиотека через "добавить анализатор". Сразу пошла игра. Уф, всё хорошо. Нет, из видео удалять процесс подключения библиотеки не нужно. 
13 ФИНАЛЬНЫЙ УРОК без видео
19 чел. ★ 5 $
  Запишите видеообзор полученных программ.
14 VIP-загрузка на Android 00:08:43
23 чел. ★ 4.9 Done
  На этом уроке формулист VIP расскажет, как запустить игру на Android.
Отчёт отправил: 1901. Neverwinter 2 Выполнено за 22 мин. [Показать отчёт]
Научился: Познакомился с настройками проекта для выгрузки на андроид 
Сложности: Спасибо за урок конечно, но если бы я так сделал - у меня бы не заработало - я это уже знаю - там куча ошибок вываливается, и чтобы получить верные sdk jdk - нужно преодолеть несколько килограммов мучений... 
Видеообзор: fFMEb0qE0e4
  Итого:   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. Здесь мои дети выкладываю программы, которые решают самостоятельно.