Ein neues Projekt beginnen
Wird der ESF Edit gestartet, ist zunächst kein Projekt geöffnet. Über das Hauptmenü kann leicht ein vorhandenes Projekt geöffnet oder ein ganz neues Projekt erstellt werden. In dieser Rubrik des Hauptmenüs kann später auch leicht der Fortschritt in einem Projekt gespeichert werden.
Um ein neues Projekt zu beginnen, muss der erste Eintrag im Projekt-Menü Neu ausgewählt werden. Der ESF Edit generiert ein neues, leeres Projekt an dem anschließend gearbeitet werden kann. War bereits ein Projekt geöffnet, wird zunächst eine entsprechende Warnung ausgegeben. Das zuvor geöffnete Projekt muss erst geschlossen werden. Die Warnung weist nochmals auf diesen Umstand hin und erlaubt das bereits geöffnete Projekt per Mausklick vor dem Schließen zu speichern, es ohne speichern zu schließen oder den Vorgang abzubrechen.
Platz für Inhalte schaffen
Das neu angelegte Projekt ist zunächst leer. Öffnet man im Projekt-Baum den Reiter Inhaltsseiten, so sind keine Einträge zu sehen. Dem Projekt muss eine Inhaltsseite hinzugefügt werden, damit mit dem "Programmieren" begonnen werden kann. Dies gelingt über den Reiter Inhalt im Hauptmenü des ESF Edits. Anschließend ist die neue Inhaltsseite im Reiter Inhaltsseiten des Projekt-Baums zu sehen und kann ausgewählt werden.
Snippets einfügen und verkabeln
Nun kann mit dem Füllen der Inhaltsseite begonnen werden. Für das kleine Beispiel muss hier ein Text-Snippet und ein Ende-Snippet auf die Arbeitsfläche erzeugt werden. Dazu muss nacheinander das Text-Snippet und Ende-Snippet in der Werkzeugleiste rechts markiert werden, anschließend wird das ausgewählte Snippet über einen Linksklick in die Arbeitsfläche angelegt. (Eine ausführlichere Anleitung hierzu finden Sie unter Snippets.)
Anschließend müssen die Snippets verbunden werden, sodass ein logisch ablaufendes Programm entsteht. Dazu müssen zwei Kabel in der Arbeitsfläche angelegt werden. Einfach auf das Kabel-Symbol ganz unten in der Werkzeugleiste klicken und mit zwei Rechtsklicken in der Arbeitsfläche die Position beider Kabelenden festlegen. Um ein Snippet mit einem Kabel fest zu verbinden, muss einfach der Stecker eines Kabels in die Nähe des entsprechenden Kabelsteckplatzes bewegt werden. (Eine ausführlichere Anleitung hierzu finden Sie unter Kabel.)
Text einfügen
Das Programm verfügt zwar jetzt über ein Text-Snippet, das durchlaufen wird. Allerdings wurde noch kein Text hinterlegt, der ausgegeben werden kann. Um den Text anzupassen, muss der Text-Editor des Text-Snippets gestartet werden. Lassen Sie das Text-Snippet beispielsweise den Text "Hello World" sagen. Am besten geben Sie ihm auch noch einen bezeichnenden Titel. Sie sollten sich generell angewöhnen, den Text-Snippets einen aussagekräftigen Titel zu verleihen. Er wird nicht in der Textausgabe angezeigt, sondern direkt auf dem Text-Snippet innerhalb des ESF Edits. Dadurch wird die Lesbarkeit des Programms für den Anwender/Programmierer deutlich erhöht. (Mehr dazu unter Text-Snippets)
Die letzten Schritte
Das kleine Beispielprogramm ist sicherlich nicht sonderlich innovativ oder umfangreich, aber es sollte jetzt funktionsfähig sein. Das kann über die Rubrik Kompilieren im Hauptmenü getestet werden. Als erstes muss die Inhaltsseite, die getestet werden soll, in Inhaltsbaum rechts markiert werden. Anschließend wird das Menü Kompilieren aufgerufen, der zweite Eintrag dort lautet Seite Testen.
Unterhalb der Arbeitsfläche erscheint eine neue Fläche. Sie enthält verschiedene Reiter mit unterschiedlichen Ausgabefenstern:
- Der erste Reiter enthält alle Meldungen des Kompilers. Das ist das Dienstprogramm im Hintergrund, das versucht das vom Anwender im ESF Edit zusammengestellte Programm zu verstehen und zu interpretieren. Diese Meldungen sind im Erfolgfall nur Hinweise darüber, dass bestimmte Strukturen eingelesen wurden, oder dass Optimierungen möglich waren.
Kam es während des Kompilierens des Programms zu einem oder mehreren Fehlern, dann sind diese hier ebenfalls zu lesen. Wird eine Logbuch-Zeile mit einem Fehler markiert, wird das Snippet in der Arbeitsfläche farbig hervorgehoben, das ihn verursacht hat. In Kombination mit der Fehlermeldung können so Fehler schnell behoben werden. - Der zweite Reiter enthält die Ausgabe des Programms, also die Texte, die über die durchlaufenen Text-Snippets zusammengesetzt wurde. In diesem kleinen Beispiel also "Hello World!".
- Der dritte Reiter enthält Werte von Variablen. Skripte fragen häufig Werte vom ausführenden Programm ab. Wenn die Skripte aber vom ESF Edit zum Testen des Programms ausgeführt werden, dann steht das eigentliche Zielprogramm nicht zur Verfügung.Um dennoch ein Testlauf durchführen zu können, kann hier der Name der Variable und deren Wert hinterlegt werden.
Fragt ein Skript eine Variable während des Testlaufs ab, die hier nicht hinterlegt wurde, dann fragt der ESF Edit über ein Eingabedialog nach einem festzusetzenden Wert und trägt ihn hier ebenfalls für die Zukunft ein. Variablenwerte können hier auch jederzeit geändert werden, um andere Varianten des Feedbacks zu testen.
Das Programm an anderen Stellen verwenden
Das Programm läuft bisher nur im ESF Edit. Die Feedback erzeugenden Programme, die im ESF Edit entwickelt werden, sollen aber in anderen Programmen ausgeführt werden, die die Daten dafür bereitstellen. Zu diesem Zweck sind die Projekt-Dateien des ESF Edits aber nicht geeignet. Sie enthalten unnötige Informationen und sind nicht effizient ausführbar. Sie müssen in eine ausführbare Datei zusammenfasst werden. Dieses Dateiformat enthält keine unnötigen Informationen wie Positionen der Snippets und alle Instruktionen können direkt von der Laufzeit abgearbeitet werden.
Der Vorgang das eine von menschen editierbare Datei in eine ausführbare Datei überführt wird, nennt man Kompilieren. Dieser Vorgang lief bereits beim Testen ab, die Datei wurde allerdings nur temporär im Speicher erzeugt und vom ESF Edit ausgeführt. In einer ausführbaren Datei werden alle Inhaltsseiten zusammen abgelegt, deshalb muss immer klar festgelegt werden, welche Seite ausgeführt werden soll. Das ist auch im Beispiel-Projekt mit nur einer Seite notwendig.
Die gewünschte Hauptseite muss im Inhaltsbaum auf der linken Seite markiert sein. Danach kann sie über das Inhaltsmenü zur Hauptseite gemacht werden. Es kann immer nur eine Hauptseite geben. Sie wird über entsprechende Symbole im Titel hervorgehoben. Das Programm beginnt bei der Ausführung mit dem Start-Snippet der Inhaltsseite, die als Hauptseite festgelegt wurde.
Anschließend kann das Beispiel-Programm zu einer ausführbaren Datei kompiliert werden. Im Kompilieren-Menü ist die entsprechende Funktion Ausführbare Datei erstellen zu finden. Es öffnet sich ein neues Dialogfenster, das Sie durch diesen Vorgang leitet. In der ersten Zeite muss der Zielname der neu zu erzeugenden Datei festgelegt werden. Der Knopf mit "..." öffnet ein Datei-Speichern-Dialog, der Sie beim Festlegen des Dateipfads grafisch unterstützt.
Die ausführbaren Dateien der ESF Runtime haben klassischerweise die Endung *.sxe in Anlehnung an ausführbare Dateien des Betriebssystems Windows von Microsoft (*.exe). Sie haben aber in ihrem Aufbau keine Ähnlichkeit mit diesen Dateien, sie enthalten keinen von Windows ausführbaren Programm-Code. Sie können nur für der ESF Runtime verwendet werden, um Texte zu generieren.
Ein Mausklick auf Kompilieren startet den Vorgang. Der Fortschrittsbalken unterhalb füllt sich langsam und zeigt den Fortgang des Kompilierens an. Unterhalb des Fortschrittbalkens befindet sich ein kleines Logbuch, das alle Meldungen des Kompilers und Linkers enthält. Eine abschließende Meldung, ob der Vorgang erfolgreich war oder nicht, erhalten Sie zusätzlich über ein Nachrichtenfenster.
Herzlichen Glückwunsch, Sie haben ein kleines Programm mit dem ESF Edit geschrieben, dass die Nachricht "Hello World" ausgibt! Würden Sie dieses Programm zum Beispiel über die Feedback erzeugen Funktion des LMSA Kits verwenden, dann erhält jeder Teilnehmer das Feedback mit dem Inhalt "Hello World". Bei dem nächsten Projekt erfahren Sie, wie man größere Programme schreibt, die auch zielgerichtet Feedback-Texte erzeugen. Im diesem Zusammenhang mit der Entwicklung von Feedback erzeugenden Programmen für das LMSA Kit sei an dieser Stelle auch auf die Rubrik Nützliches verwiesen, in der unter Anderem erklärt wird, wie man die Unterstütztungstools für LMSA Kit-Entwickler aktiviert.