Разработчик(и) | Михаэль Кёллинг , Группа компьютерного образования, Королевский колледж Лондона |
---|---|
Стабильный релиз | 3.8.2 / 1 декабря 2023 г. ( 2023-12-01 ) |
Репозиторий | никто |
Операционная система | Кроссплатформенный |
Платформа | Ява |
Доступно в | Многоязычный |
Тип | Интегрированная среда разработки |
Лицензия | GPL-2.0 или более поздняя версия с исключением Classpath |
Веб-сайт | www.greenfoot.org |
Greenfoot — это интегрированная среда разработки с использованием Java или Stride, разработанная в первую очередь для образовательных целей на уровне средней школы и бакалавриата . Она позволяет легко разрабатывать двухмерные графические приложения , такие как симуляции и интерактивные игры .
Greenfoot разрабатывается и поддерживается в King's College London при поддержке Oracle . Это бесплатное программное обеспечение , выпущенное по лицензии GPL . Greenfoot доступен для Windows , macOS , Linux , Solaris и любой последней JVM .
Проект Greenfoot был инициирован Михаэлем Кёллингом в 2003 году, а первый прототип был построен Поулем Хенриксеном ( магистрантом ) и Михаэлем Кёллингом ( руководителем ) в 2003/2004 годах. [1] С 2005 года разработка была продолжена с участием других членов BlueJ Group.
Greenfoot разрабатывается и поддерживается в Королевском колледже Лондона [2] , куда команда разработчиков переехала из Кентского университета .
Первая полная версия Greenfoot версии 1.0 была опубликована 31 мая 2006 года, и с тех пор периодически выходили другие версии. [3]
В мае 2007 года проект Greenfoot был удостоен премии «Выбор герцога» в категории «Технологии Java в образовании», а в 2010 году он получил «Главную премию за выдающиеся достижения в области учебных курсов по инженерному образованию».
В марте 2009 года проект Greenfoot стал бесплатным программным обеспечением с открытым исходным кодом и лицензировался по лицензии GPL-2.0 или более поздней версии с исключением Classpath .
В августе 2009 года был опубликован учебник [4] , обучающий программированию с использованием Greenfoot.
В 2017 году Greenfoot был расширен для поддержки второго языка программирования Stride (в дополнение к Java). Stride призван облегчить программирование для новичков, поддержать молодых пользователей и облегчить переход с блочных языков. Его наиболее заметным отличием является использование редактора на основе фреймов .
public void act () { setLocation ( getX () + 4 , getY ()); // Перемещает Актера на 4 ячейки вправо setRotation ( getRotation () + 2 ); // Поворачивает Актера на 2 градуса по часовой стрелке } |
Пример простого метода действия в Greenfoot |
Актер a = getOneIntersectingObject ( Asteroid.class ) ; if ( a != null ) { // мы столкнулись с астероидом! Explode (); } |
Пример простого обнаружения столкновений |
Модель программирования Greenfoot состоит из класса World (представленного прямоугольной областью экрана) и любого количества объектов- актеров , которые присутствуют в мире и могут быть запрограммированы для независимого действия. Мир и акторы представлены объектами Java и определены классами Java. Greenfoot предлагает методы для легкого программирования этих акторов, включая метод для движения, вращения, изменения внешнего вида, обнаружения столкновений и т. д.
Программирование в Greenfoot в своей основе состоит из подклассов двух встроенных классов, World и Actor . Экземпляр подкласса world представляет мир, в котором будет происходить выполнение Greenfoot. Подклассы Actor — это объекты, которые могут существовать и действовать в мире. Экземпляр подкласса world автоматически создается средой.
Выполнение в Greenfoot состоит из встроенного основного цикла, который многократно вызывает метод действия каждого актера . Таким образом, программирование сценария в основном состоит из реализации методов действия для актеров сценария. Реализация выполняется на стандартном Java. Greenfoot предлагает методы API для ряда общих задач, таких как анимация, звук, рандомизация и манипуляция изображениями. Также можно использовать все стандартные библиотеки Java, и можно достичь сложной функциональности.
Greenfoot стремится быстро мотивировать учащихся, предоставляя им легкий доступ к анимированной графике, звуку и интерактиву. Среда очень интерактивна и поощряет исследования и эксперименты. С педагогической точки зрения дизайн основан на конструктивистском и ученическом подходах.
Во-вторых, среда разработана для иллюстрации и подчеркивания важных абстракций и концепций объектно-ориентированного программирования. Такие концепции, как отношение класса/объекта, методы, параметры и взаимодействие объектов, передаются посредством визуализаций и управляемых взаимодействий. Цель состоит в том, чтобы построить и поддерживать ментальную модель, которая правильно представляет современные системы объектно-ориентированного программирования.
Для пользователей Greenfoot сайт сообщества под названием Greenfoot Gallery [5] предоставляет платформу для публикации и обсуждения своих проектов. Любой может создать учетную запись в Greenfoot Gallery и опубликовать свою работу. После публикации сценарии запускаются в реальном времени в веб-браузере и мгновенно доступны для воспроизведения любому человеку по всему миру. Возможность легко публиковать проекты по программированию в Интернете рассматривается как существенный мотиватор для молодых учащихся.
Для педагогов проект предоставляет Greenroom, [6] сайт сообщества для обсуждения стратегий обучения, обмена опытом и распространения материалов. В дополнение к дискуссионному форуму Greenroom предоставляет общий репозиторий учебных ресурсов, включая многочисленные рабочие листы, идеи проектов, наборы слайдов и другие учебные пособия.
В версии 2.0 редактор и API получили некоторые важные изменения по сравнению с предыдущей версией 1.5.6. Редактор добавил поддержку автодополнения кода, цветную подсветку области действия, улучшенный поиск и замену и новый вид навигации. [7] Был добавлен встроенный звукозаписывающий аппарат, а также улучшенная поддержка звука в сценариях с помощью нового высокоуровневого звукового класса GreenfootSound. Он добавляет возможность приостанавливать и зацикливать звуки, а также добавляет поддержку MP3. В версии 3.0 добавлена поддержка языка Stride, [8] и включен новый редактор на основе кадров. [9]