Как стать автором
Обновить

Microsoft Research запустила браузерную игру-головоломку по обучению программированию

Время на прочтение1 мин
Количество просмотров117K


Microsoft Research в своем блоге анонсировала запуск браузерной игры-головоломки Code Hunt по обучению программированию на C# и Java.
Игроку даются фрагменты кода с заранее неизвестной функциональностью. Цель игры заключается в том, чтобы на основе входных данных и ожидаемого результата, изменить код метода или функции так, чтобы выходные данные соответствовали этому ожидаемому результату.



В начале игры игрок выбирает на каком языке (Java или C#) будут представлены фрагменты кода. В дальнейшем, в ходе игры в любой момент времени можно переключиться с одного языка на другой. Игра разделена на сектора, соответствующие разным темам программирования (циклы, массивы, работа со строками и т.д.). Каждый сектор, в свою очередь, состоит из нескольких уровней, расположенных в порядке возрастания сложности. Прохождение уровня оценивается одним, двумя или тремя «кирпичиками» в зависимости от «элегантности» написанного кода. Чем короче код, тем он считается элегантнее. Например, в задаче подсчета количества символов 'a' в строке, код
public class Program {
	public static int Puzzle(String s) {
		int result = 0;
		for (char c : s) {
			if (c == 'a') 
				++result;
		}
		return result;
    }
}

оценивается в один кирпичик по шкале элегантности, а вот код, имеющий ту же функциональность, но написанный с использованием регулярных выражений — уже в три кирпичика:
public class Program {
    public static int Puzzle(String s) {        		
		return s.replaceAll("[^a]", "").length();
    }
}

Конечно, эта игра больше подходит под категорию головоломок или пазлов, чем обучалок программированию, но в качестве разминки для мозгов весьма затягивает.
Теги:
Хабы:
Всего голосов 86: ↑75 и ↓11+64
Комментарии116

Публикации

Истории

Работа

Ближайшие события

19 марта – 28 апреля
Экспедиция «Рэйдикс»
Нижний НовгородЕкатеринбургНовосибирскВладивостокИжевскКазаньТюменьУфаИркутскЧелябинскСамараХабаровскКрасноярскОмск
24 апреля
VK Go Meetup 2025
Санкт-ПетербургОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань
14 мая
LinkMeetup
Москва
5 июня
Конференция TechRec AI&HR 2025
МоскваОнлайн
20 – 22 июня
Летняя айти-тусовка Summer Merge
Ульяновская область