Язык был разработан для решения трёх основных задач в образовательных программах[3]:
В большинство промышленных языков программирования вносится дополнительная сложность. Язык Alice предназначен исключительно для обучения программированию. Он может быть использован при работе с 3D-интерфейсомпользователя. У пользователя есть возможность программировать при помощи стрелок и других элементов, называемых «контролами».
Направленность на конкретный слой населения, который, как правило, не использует компьютерное программирование. Пример: ученицы среднего школьного возраста (путём поощрения создания историй). В отличие от большинства других языков программирования, которые предназначены для вычислений, Alice может легко использоваться простым пользователем.
Alice 3 распространяется под открытой лицензией, допускающей использование, изменение и распространение исходного кода как с модификациями, так и без них.[4].
Исследования
В исследованиях в колледже Итаки(англ.Ithaca College) и университете Св. Иосифа(англ.Saint Joseph's University) наблюдали за студентами без опыта программирования, которые впервые изучали курс «Компьютерные науки». Их средняя успеваемость улучшилась с C до B, усвоение информации увеличилось с 47% до 88%.[5]
Во втором исследовании, проведенном в Университете Карнеги-Меллона, студенты, впервые изучавшие информатику с использованием метода опосредованного переноса, который был применен при переходе с Alice 3 на Java, набрали в среднем 84,96% и 81,52% баллов за два семестра тестирования этого подхода, по сравнению со средним показателем в 60,8% до использования метода опосредованного переноса.[6]
Версии
В версии 3.0 Electronic Arts включила персонажей из игры The Sims 2[7]. Осенью 2008 года была выпущена тестовая альфа-версия, которая весной 2009 года будет заменена бета-версией[8]. Окончательный выпуск версии планировался летом 2009. На случай, если график тестирования будет сорван, был предусмотрен выпуск неограниченной публичной бета-версии до осени 2009 года[9]. В дальнейшем Sun Microsystems обещала оказывать помощь в глобализации Alice[10].
Storytelling Alice
Один из вариантов языка Alice 2.0 называется "Storytelling Alice" (рус.Рассказывающая истории Алиса). Он был создан Кетлин Келлер (англ.Caitlin Kelleher) для её докторской диссертации. Версия языка включает в себя три основных различия[11]:
Высокоуровневая анимация. Позволяет пользователям программировать социальные взаимодействия между персонажами.
Учебник на основе рассказа. Знакомит пользователей с программированием через создание сюжета.
Галерея 3D-персонажей и декорации с пользовательской анимацией. Позволяет «оживлять» идеи истории.
Исследование, проведённое среди учениц средней школы в США, продемонстрировало значительное повышение интереса к программированию без изменения содержания учебной программы. Увеличение времени занятия программированием составило 42%, дополнительную работу выполнило в 3 раза больше студентов по сравнению с обычным языком Generic Alice.[12]
↑M. Moskal, D. Lurie, and S. Cooper, Evaluating the Effectiveness of a New Instructional Approach. In Proceedings of 2004 SIGCSE Conference, (Norfolk, VA).
↑Kelleher, Caitlin. Storytelling alice motivates middle school girls to learn computer programming // Proceedings of the SIGCHI Conference on Human Factors in Computing Systems / Caitlin Kelleher, Randy Pausch, Sara Kiesler. — 2007. — P. 1455–1464. — ISBN 9781595935939. — doi:10.1145/1240624.1240844.
Learning to Program with Alice, Wanda P. Dann, Stephen Cooper, Randy Pausch: ISBN 0-13-187289-3
An Introduction to Programming Using Alice, Charles W. Herbert ISBN 1-4188-3625-7
Alice 2.0: Introductory Concepts and Techniques; Gary B. Shelly, Thomas J. Cashman, Charles W. Herbert ISBN 1-4188-5934-6
Starting Out with Alice: A Visual Introduction to Programming; Tony Gaddis; Pearson Addison Wesley, 2007; ISBN 9780321475152
Motivating Programming: using storytelling to make computer programming attractive to middle school girls [1]