Игра “Be a Better Programmer. Turing machine” Студент: Васина Дарья [email protected] Руководитель: Мария Давыдова Ссылка на проект: https://github.com/JetBrains/programmer-games Сентябрь, 2016 год
Игра “Be a Better Programmer. Turing machine”
Студент: Васина Дарья[email protected]
Руководитель: Мария ДавыдоваСсылка на проект:
https://github.com/JetBrains/programmer-games
Сентябрь, 2016 год
Современный человек проводит за компьютером много времени.
2/12
Современный человек должен многое знать и уметь.
3/12
Многими людьми лучше всего воспринимается информация, сопровождаемая зрительными
образами.
4/12
Что мы сделали?
Браузерная игра “Be a Better Programmer.Turing
machine” 5/12
Как это выглядит?
6/12
7/12
Почему это круто?
Одна из немногих игр, посвященных классической
машине Тьюринга.
Игра, призванная обучать идее машины Тьюринга человека, изначально не
имеющего представления о ней.
8/12
Какие были сложности?
● Смена библиотеки для отрисовки элементов (с evancz/elm-graphics на elm-lang/svg)
● Создание функций для автоматической отрисовки таблиц перехода
● Перевод пользовательской таблицы переходов в тип таблицы, понятной модулю машины
● Уменьшение модели● Решение проблемы
зацикливания машины
9/12
Используемые технологии, или что дал проект стажеру?
● Навыки frontend разработки (интерфейс игры)
● Навыки backend разработки (модуль машины Тьюринга и его взаимодействие с представлением игры)
● Навыки разработки на Elm● Совершенствование навыков
работы с git● Совершенствование навыков
работы с gimp
10/12
Какие планы на будущее?● Нарисовать собственные картинки● Добавить возможность выбора языка
(русский, английский)● Добавить поддержку нескольких входных
слов для одного уровня, чтобы пользователь понимал, что необходимо сделать обобщенную таблицу
● Добавить правилам и инструкциям больше интерактивности
● Сделать интерфейс игры еще более дружелюбным
● Выложить игру на github pages
11/12
Это так здорово, что даже ваш котик захочет поиграть!
Спасибо за внимание!
12/12
А как же Google Doodle?
● Игра, написанная Nadbor Drozd
● http://turing-game.pl/
● Google doodle игра к столетию Алана
Тьюринга http://www.google.com/doodles/
alan-turings-100th-birthday
Как это все работает?
Elm архитектураЛогика каждой программы,
написанной на Elm, состоит из трех отдельных частей:
● Model — состояние приложения● Update — то, каким образом обновляется
состояние● View — то, каким образом состояние
представляется в виде HTML