Mama (oprogramowanie) - Mama (software)
Środowisko programistyczne Mama
| |
Pierwotni autorzy | Eytam Computer Science |
---|---|
Wersja stabilna | 1.5.2 / 22 lutego 2010 r |
System operacyjny | Windows |
Rodzaj | Edukacyjny język programowania |
Licencja | Oprogramowanie bezpłatne |
Stronie internetowej | eytam |
Mama to zorientowany obiektowo, edukacyjny język programowania zaprojektowany, aby pomóc młodym uczniom w rozpoczęciu programowania, zapewniając wszystkie elementy językowe w języku ojczystym ucznia. Język programowania Mama jest dostępny w kilku językach, z obsługą kierunku od lewej do prawej (LTR) i od prawej do lewej (RTL).
Nowy wariant Mama został zbudowany na bazie środowiska programistycznego Alice Carnegie Mellon , obsługującego skrypty obiektów sceny 3D. Ten nowy wariant Mamy został zaprojektowany, aby pomóc młodym uczniom w rozpoczęciu programowania poprzez tworzenie animacji 3D i gier.
Historia
Pierwsze wersje Mama - 1.0, 1.1 i 1.2 - zapewniały proste zintegrowane środowisko programistyczne (IDE), które zawierało wsparcie dla standardowych elementów, takich jak edytor tekstu z podświetlaniem składni , kompilator, debugger, okno wyjściowe itp. Począwszy od wersji 1.5, Mama była zintegrowany z oprogramowaniem Alice IDE typu open source w celu obsługi programowania metodą przeciągnij i upuść oraz animacji 3D. Wersje Mama są zaimplementowane w Javie.
Bieżąca wersja programu Mama, wersja 1.5.4, jest dostępna zarówno w języku angielskim, jak i hebrajskim, i działa w systemie Microsoft Windows.
Projekt
Mama została zaprojektowana, aby rozwiązać następujące problemy w programowaniu edukacyjnym:
- Przemysłowe języki programowania są zaprojektowane tak, aby można je było używać w kodzie produkcyjnym, co wprowadza dodatkową złożoność. Mama jest przeznaczona wyłącznie do nauczania koncepcji programowania, zapewniając proste i szybkie tworzenie programów.
- Błędy składniowe frustrują uczniów, gdy zaczynają się uczyć programowania - wariant Mamy zamiast Alice wykorzystuje środowisko przeciągnij i upuść do tworzenia animacji komputerowych przy użyciu modeli 3D .
Język Mama jest językiem czysto obiektowym , podczas gdy Alice IDE jest oparta na obiektach . Oznacza to, że podczas pisania skryptów tekstowych w języku Mama obsługuje wszystkie elementy obiektowe ( dziedziczenie , polimorfizm , programowanie ogólne , obsługę zdarzeń w stylu obserwatora ), tworzenie obiektów i metod za pomocą interfejsu przeciągnij i upuść jest oparte na obiektach - nie ma dziedziczenia (i a więc brak polimorfizmu). Ta ostatnia obserwacja może zmylić początkujących - dlatego sugeruje się używanie skryptów Mama tylko jako zaawansowanych tematów na kursach CS.
Główne ulepszenia Mama 1.5 w stosunku do wersji Alice 2.2:
- dodano język programowania Mama jako (bogaty) język skryptowy - za pomocą tego mechanizmu skryptowego można manipulować obiektami sceny 3D
- pełna obsługa Unicode
- tworzenie i edycja obiektów 3D
- wsparcie przesyłania filmów do YouTube i publikowania na Facebooku
- wsparcie dla scenerii i postaci
- narzędzie do edycji samouczków dla instruktorów
- eksport filmów z dźwiękiem
- samodzielne pliki wykonywalne użytkownika
- lepsza logika menu
- Wiele poprawek
Podstawy IDE
W oknie IDE jest kilka części: u góry znajduje się menu główne i pasek narzędzi, które pozwalają wykonywać polecenia, takie jak tworzenie / otwieranie światów, importowanie obiektów 3D do świata, tworzenie samodzielnej aplikacji, eksportowanie animacji do YouTube itp.
Pięć okien znajdujących się w oknie głównym to:
- drzewo obiektów - zawiera listę obiektów w aktualnym świecie.
- Okno 3D - w tym miejscu obiekty są pozycjonowane, przesuwane, obracane itp.
- obszar wydarzeń - pozwala edytować, co dzieje się po wystąpieniu określonego zdarzenia.
- obszar szczegółów - zawiera informacje o aktualnie wybranym obiekcie w 3 zakładkach: właściwości, metody i funkcje.
- obszar edytora (na dole) - to tam zapisywany jest kod programu, za pomocą instrukcji przeciągnij i upuść.
W trybie edycji scen dwie z powyższych części są zastępowane:
- panel sterowania - zastępuje obszar zdarzeń i wyświetla różne kontrolki, które pomagają manipulować obiektami w oknie 3D.
- galeria obiektów - zastępuje obszar edytora i wyświetla obiekty w hierarchicznych folderach do wybrania i osadzenia w oknie 3D.
Oto podstawowe typy dostępne w Alice IDE:
- Liczba - typ liczbowy, reprezentuje zarówno liczby całkowite, jak i rzeczywiste
- Boolean - wartość logiczna, przyjmująca wartość prawda lub fałsz
- Obiekt - ogólny obiekt Mama
- String - ciąg, zbiór znaków
- Kolor - kolor RGB
- TextureMap - mapa tekstur
- Dźwięk - dźwięk
- Pose - uchwycona poza obiektu
- Pozycja - tablica 3D określająca położenie w przestrzeni 3D
- Orientacja - tablica 3D określająca orientację w przestrzeni 3D
- PointOfView - połączenie Pozycji i Orientacji
Instrukcje sterujące dostępne w dolnej części obszaru edytora to:
- doInOrder - wykonuje sekwencję instrukcji
- doTogether - wykonaj sekwencję instrukcji jednocześnie
- if - wykonuje sekwencję instrukcji sekwencyjnie tylko pod zadanym warunkiem
- while - wykonuje sekwencję instrukcji sekwencyjnie, podczas gdy dany warunek jest spełniony
- for - wykonuje sekwencję instrukcji sekwencyjnie określoną liczbę razy
- forAllInOrder - wykonuje sekwencję instrukcji kolejno iterując po danej kolekcji
- forAllTogether - wykonuje sekwencję instrukcji jednocześnie iterując po danej kolekcji
- czekaj - czekaj określoną liczbę sekund
- print - wypisuje podane dane do konsoli wyjściowej
- assert - potwierdź, że warunek jest prawdziwy, wyświetl komunikat, jeśli warunek jest fałszywy (nowość w Mama 1.5)
- Skrypt - dodaj darmowy skrypt Mama do programu
- # - dodaj komentarz do programu
Zobacz też
Bibliografia
Dalsza lektura
- Podręcznik referencyjny języka Mama
- Instrukcja obsługi Mama IDE
- Nauka programowania z Alice, Wanda P. Dann, Stephen Cooper, Randy Pausch : ISBN 0-13-187289-3
- Projektowanie i tworzenie wirtualnego świata dla nastolatków; Charles R. Hardnett; Course Technologies PTR, 2009; ISBN 1-59863-850-5 , ISBN 978-1-59863-850-9