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

1
0

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();
    }
}

Конечно, эта игра больше подходит под категорию головоломок или пазлов, чем обучалок программированию, но в качестве разминки для мозгов весьма затягивает.

Источник: http://habrahabr.ru/post/223173/

 

© 2009-2024"Proдвинутый папа" GeekDad.ru, 16+ | Дизайн Antsin.com

По вопросам работы сайта обращаться на

Rambler's Top100