Makecode

Entwickler/Anbieter:Microsoft
Anwendungstyp:Webapplikation
Betriebssystem:Cross-Platform
Account erforderlich:Nein
Installation:Nein
Offline nutzbar: Ja, nach dem ersten Speichern im lokalen Cache

Microsoft MakeCode ist ein von Microsoft entwickelter Programmiereditor mit dem sowohl block-, als auch textbasiert Microcontroller programmiert werden können. Der Editor ist erweiterbar und skalierbar indem Pakete, die unter anderem von den Nutzer:innen erstellt werden, hinzugefügt werden können.

Zum Editor

Dateiverwaltung

Projekt speichern

Das Programm kann als HEX-Datei auf dem Computer abgespeichert und wieder in den Editor importiert werden.
Es ist außerdem möglich, per Drag & Drop die Programme in den Editor zu ziehen.
Zusätzlich bietet MakeCode die Möglichkeit, das Programm auf Github zu speichern, um gemeinsam an dem Projekt zu arbeiten. Alle Projekte werden außerdem automatisch im Browser-Cache online abgespeichert.

Github

Programme übertragen

Die gleiche HEX-Datei kann auf das Laufwerk des Calliope mini übertragen werden, um das Programm dort auszuführen.

Programm teilen

Programme können per Link ganz einfach geteilt werden. Die URL wird ebenfalls als QR-Code ausgegeben. Über den Link können die geteilten Programme bearbeitet werden.

Programmfunktionen

Simulation, Debugger und Multieditor

Mit der Simulation und dem Debugger gibt es die Möglichkeit, das Programm, ohne es auf den Calliope mini zu übertragen, auszutesten und nach Fehlern zu überprüfen.
Mit dem Multieditor lassen sich sogar zwei Calliope mini im gleichen Browser unterschiedlich programmieren und die Radio-Kommunikation zwischen beiden im Simulator testen.

Multi-Editor

Tutorials

Es gibt auf der Startseite eine Vielzahl an Einführungen und Anleitungen, um einen Einstieg in die Programmierung des Calliope mini zu bekommen. Auch eigene Anleitungen können mit dem Tutorial-Tool von MakeCode erstellt und veröffentlicht werden. Die Tutorials werden in der Auszeichnungssprache "Markdown" geschrieben und können per Link geteilt werden. Um ein Tutorial zu aktualisieren, kann es ebenfalls auf Github als Repository angelegt werden. Eine genaue Dokumentation gibt es hier oder als PDF

Tutorial-Editor

Erweiterungen

MakeCode bietet die Möglichkeit, eigene Erweiterungen und Blöcke zu erstellen, die von Dritten in den Editor geladen werden können. Dank der großen Community werden immer wieder neue Sensoren, Aktoren oder andere Erweiterungen hinzugefügt.

Makecode Docs

Mehr Infos zu diesen und weiteren nützliche Tools für das Arbeiten mit MakeCode findet ihr auf makecode.com/tools.

Programmierkonzepte

Blockbasierte ProgrammierungJa
Textbasierte ProgrammierungJavascript/Python
MultithreatingJa, es können mehrere Dauerhaftschleifen parallel ausgeführt werden
Ereignisse (eventbasierte Programmierung)Ja
VariablenJa
ListenJa
Schleifen: While / For / ForeachJa / Ja / Ja
Funktionen / mit Parametern / mit RückgabewertJa / Ja (keine Listen) / Ja
Serielle KommunikationJa
Sensoren/Aktoren-ErweiterungenJa, sie können als Erweiterungs-Paket hinzugefügt werden

Dokumentieren und Kommentieren

Kommentare

Es können Kommentare an den Blöcken oder auch frei auf der Arbeitsfläche als Post-Its hinterlegt werden.
So kann das Programm für einen selbst oder für andere dokumentiert und nachvollzogen werden.

Screenshots

Um Unterrichtsmaterial oder eigene Anleitungen für Programme zu erstellen, ist es hilfreich, Screenshots zu machen. MakeCode bietet die Funktion an, direkt hochauflösende Screenshots mit einem Rechtsklick als .png herunterzuladen. Der Vorteil davon ist, dass die Screenshots einen Alpha-Kanal für Transparenz haben. So können die Blöcke ohne weißen Hintergrund in dem erstellten Lehrmaterial angeordnet werden.

Dokumentation und Hilfe

Wenn das Fragezeichensymbol in der rechten Ecke des Editors angeklickt wird und dann auf Blöcke geklickt wird, öffnet sich eine ausführliche Dokumentation der einzelnen Programmierbausteine. Alternativ kann auch die direkte Information zu dem Block abgerufen werden, indem dieser mit einem rechten Mausklick ausgewählt und auf Hilfe geklickt wird.
Die Informationen werden aus der Dokumentation abgerufen, die hier zu finden ist:

Blöcke