Wikifunctions:Wie man Implementierungen erstellt

From Wikifunctions
This page is a translated version of the page Wikifunctions:How to create implementations and the translation is 100% complete.

Diese Seite bietet eine detailliertere Anleitung dafür, wie man Implementierungen erstellt und geht über den Überblick auf Wikifunctions:Introduction hinaus.

Code in Python

Im Folgenden geben wir ein konkretes Beispiel, wie man eine Implementierung in Form von Code in Python erstellt. Angenommen, wir möchten eine Implementierung für eine Funktion erstellen, die zwei Eingabezeichenketten durch Einfügen eines Leerzeichens dazwischen kombiniert und das Ergebnis zurückgibt. Nehmen wir an, die ZID dieser Funktion ist Z11057.

Diese Beschreibung ist nur gültig, wenn die Implementierung Zeichenketten und boolesche Werte als Eingabe- oder Ausgabetypen verwendet. Falls ein anderer Typ verwendet wird, lies bitte in der Dokumentation des jeweiligen Typs nach, wie man die Werte transformiert, damit sie in Python verwendet werden können. Wir planen, dies in Zukunft einfacher zu machen.

Die Implementierung wird über die ZID der Funktion definiert. Das gilt auch für die Argumente der Funktion. Im Fall der Funktion Z11057 mit ihren beiden Argumenten sollte die erste Zeile also so aussehen:

def Z11057(Z11057K1, Z11057K2):

Hinweis: Wir planen, die ZIDs in Zukunft auszublenden.

Die erste Zeile sollte automatisch für dich erstellt werden, sobald du Python als Programmiersprache ausgewählt hast. Du musst nur den Funktionskörper hinzufügen.

Darunter schreibst du den Code wie gewohnt in Python. Es ist nur so, dass die Variablen etwas komisch aussehen. In diesem Fall könnte es zum Beispiel so sein:

  return Z11057K1 + " " + Z11057K2

Da es sich um Python handelt, vergesse nicht, diese Zeile einzurücken.

Wenn du bereits Tests hast (und es ist eine gute Angewohnheit, die Tests zuerst zu erstellen), klicke auf den kreisförmigen Pfeil in den Testfällen und prüfe, ob deine Implementierung die Tests besteht.

Denke daran, dass die Laufzeit keinen Status hat. Gehe nicht von Werten für globale oder statische Variablen aus. Wenn du weitere Fragen dazu hast, was du in Python tun kannst und was nicht, frage auf Wikifunctions:Python implementations.

Code in JavaScript

Im Folgenden geben wir ein konkretes Beispiel, wie man eine Implementierung in Form von Code in JavaScript erstellt. Angenommen, wir möchten eine Implementierung für eine Funktion erstellen, die zwei Eingabezeichenketten durch Einfügen eines Leerzeichens dazwischen kombiniert und das Ergebnis zurückgibt. Nehmen wir an, die ZID dieser Funktion ist Z11057.

Diese Beschreibung ist nur gültig, wenn die Implementierung Zeichenketten und boolesche Werte als Eingabe- oder Ausgabetypen verwendet. Falls ein anderer Typ verwendet wird, lies bitte in der Dokumentation des jeweiligen Typs nach, wie man die Werte transformiert, damit sie in JavaScript verwendet werden können. Wir planen, dies in Zukunft einfacher zu machen.

Die Implementierung wird über die ZID der Funktion definiert. Das gilt auch für die Argumente der Funktion. Im Fall der Funktion Z11057 mit ihren beiden Argumenten sollte die erste Zeile also so aussehen:

function Z11057( Z11057K1, Z11057K2 ){

Hinweis: Wir planen, die ZIDs in Zukunft auszublenden.

Die Implementierung sollte mit einer Zeile enden, die die öffnende Klammer der ersten Zeile schließt.

Dies sollte automatisch für dich erstellt werden, sobald du JavaScript als Programmiersprache ausgewählt hast. Du musst nur den Funktionskörper hinzufügen.

Innerhalb der Klammern schreibst du den Code wie gewohnt in JavaScript. Es ist nur so, dass die Variablen etwas komisch aussehen. In diesem Fall könnte es zum Beispiel so sein:

  return Z11057K1 + " " + Z11057K2;

Wenn du bereits Tests hast (und es ist eine gute Angewohnheit, die Tests zuerst zu erstellen), klicke auf den kreisförmigen Pfeil in den Testfällen und prüfe, ob deine Implementierung die Tests besteht.

Denke daran, dass die Laufzeit keinen Status hat. Gehe nicht von Werten für globale oder statische Variablen aus. Wenn du weitere Fragen dazu hast, was du in JavaScript tun kannst und was nicht, frage auf Wikifunctions:JavaScript implementations.

Komposition

Im Folgenden geben wir ein konkretes Beispiel, wie man eine Implementierung in Form einer Komposition erstellt. Angenommen, wir möchten eine Implementierung für eine Funktion erstellen, die zwei Eingabezeichenketten durch Einfügen eines Leerzeichens dazwischen kombiniert und das Ergebnis zurückgibt. Nehmen wir an, die ZID dieser Funktion ist Z11057.

Normalerweise ist es sinnvoll, zunächst darüber nachzudenken, wie man vorhandene Funktionen kombinieren kann, um die gewünschte Ausgabe zu erzielen. Manchmal mag dies trivial sein und du kannst einfach mit dem Zusammenstellen und Funktionen fortfahren, aber in vielen Fällen lohnt es sich, die gewünschte Komposition zu notieren. Die Wikifunctions-Kompositionsoberfläche eignet sich noch nicht sehr gut für die Bearbeitung von Kompositionen, daher ist es eine gute Idee, zunächst herauszufinden, was genau du erstellen möchtest.

Beispielsweise könnten wir für die angegebene Funktion die vorhandene Funktion zum Verbinden von Zeichenketten verwenden. Diese Funktion nimmt zwei Zeichenketten und erstellt daraus eine Zeichenkette. Aber wir müssen dazwischen ein Leerzeichen einfügen. Wir verbinden also zunächst ein Leerzeichen mit dem Ende der ersten Zeichenkette und verbinden dann die zweite Zeichenfolge mit dem Ergebnis dieser ersten Verbindung. Unsere Komposition könnte also so notiert werden:

concatenate(concatenate(Z11057K1, " ["), Z11057K2).

Um dies zu erstellen:

  1. Klicke auf das rote Funktion auswählen.
  2. Gib den Namen der Funktion ein, die wir auswählen wollen, d.h. “verbinde” und wähle sie aus.
  3. Das erste Argument dieser äußeren Verbindung ist selbst ein Funktionsaufruf. Klicke dazu auf das > neben Erste Zeichenkette.
  4. Klicke nun auf den Wert des Typs Erste Zeichenkette. Derzeit steht dort Zeichenkette.
  5. Du siehst vier Optionen. Wähle Funktionsaufruf.
  6. Wähle nun die innere Funktion aus. Das ist wiederum verbinde.
  7. Das Argument Erste Zeichenkette der inneren Verbindung muss unser erstes Argument sein. Klicke also erneut auf > neben Erste Zeichenkette.
  8. Öffne das ausklappbare Menü, das Zeichenkette anzeigt.
  9. Wähle Argumentreferenz aus.
  10. Gib die Schlüssel-ID des ersten Arguments ein, in diesem Fall Z11057K1 (du kannst sie auf der Funktionsseite nachschlagen). In Zukunft wird dies ein ausklappbares Feld sein.
  11. Gib im inneren Feld Zweite Zeichenkette (nicht im äußeren) ein einzelnes Leerzeichen ein. Dies wird grundsätzlich unsichtbar sein.
  12. Wenn du bereits Tests hast (und es ist eine gute Angewohnheit, die Tests zuerst zu erstellen), klicke auf den kreisförmigen Pfeil in den Testfällen und prüfe, ob deine Implementierung die Tests besteht.
  13. Füge nun das zweite Argument hinzu. Klicke auf das > neben dem äußeren zweiten Argument.
  14. Öffne das ausklappbare Menü, das Zeichenkette anzeigt.
  15. Wähle Argumentreferenz aus.
  16. Gib die Schlüssel-ID des zweiten Arguments ein, in diesem Fall Z11057K2 (du kannst sie auf der Funktionsseite nachschlagen). In Zukunft wird dies ein ausklappbares Feld sein.
  17. Wenn du bereits Tests hast (und es ist eine gute Angewohnheit, die Tests zuerst zu erstellen), klicke auf den kreisförmigen Pfeil in den Testfällen und prüfe, ob deine Implementierung die Tests besteht.

Wenn die Komposition den Test besteht, kannst du sie veröffentlichen.