Программный дизайн
-
История и цели проекта ProgramByDesign
- Проект основан в 1995 году Маттиасом Фелляйзеном и PLT research group.
- Цель: обучить преподавателей колледжей и учителей программированию и вычислительной технике.
- Используются языки программирования PLT Scheme и Racket.
-
Функциональное программирование и алгебра
- Наблюдения за учащимися в начальной и средней школе.
- Учителя программируют учащихся с помощью правил и упражнений.
- Пример программы: имитация падения яблока.
-
Функциональное программирование и дизайн
- Вводное обучение программированию должно фокусироваться на систематическом проектировании.
- Ключевой элемент дизайна: рецепт дизайна с двумя измерениями: процесс и данные.
- Процесс: анализ проблем, переформулировка, создание примеров, упорядочивание данных, кодирование, тестирование.
- Данные: форма данных определяет форму кода и тестов.
-
Выбор языка программирования
- Название TeachScheme! подразумевает, что требуется Scheme, но это не так.
- Метод проектирования применим к различным языкам программирования.
- Racket выбран из-за его доступности и переносимости.
-
Учебная программа и инструменты
- Разработаны языки обучения и педагогическая среда DrRacket.
- Учебная программа изложена в книге «Как разрабатывать программы».
- Вторая часть учебной программы: ReachJava, применима к Java.
-
Начальная загрузка и сотрудничество
- Совместные усилия с Citizen Schools для охвата учащихся в Бостоне.
- Влияние на математические курсы привело к финансированию от Microsoft и Google.
-
Совместные усилия PLT и Citizen Schools
- В 2006 году PLT из Северо-Восточного университета и Citizen Schools из Бостона начали совместную работу.
- Цель проекта — охватить учащихся из центральных районов города внешкольными программами.
-
Деятельность Citizen Schools
- Citizen Schools — общенациональная организация, подбирающая места для проведения внеклассных программ.
- Организация знакомит волонтеров с разработанными учебными планами.
-
Влияние на учебную программу
- Первые тесты прошли успешно в Бостоне.
- Влияние программы на математические курсы побудило Microsoft и Google финансировать общенациональные усилия.
-
Расширение и развитие
- Microsoft и Google финансируют разработку материалов для обучения учителей.
- Создаются сайты в Техасе, Калифорнии и других городах, где работают волонтеры.