… ch-Konstrukte / Befehls-Umfang einschränken
Befehls-Umfang einschränken
JayMo bietet verschiedene Alternativen und Kurzformen, was ein sehr schnelles und schlankes schreiben von JayMo-Programmen ermöglicht.
Wird ein Programm jedoch größer oder arbeiten mehrere Entwickler daran, so können Vereinfachungen zugunsten einem klarerer Quellcode deaktiviert werden.
schlank und einfach <-----> klarer Quelltext
Folgende Levels stehen dafür zur Verfügung:
open | ( Vorgabe ) | Soll ein schnelles, einfaches und schlankes Skripten ermöglichen |
low | Einschränkungen, die die Lesbarkeit des Quellcodes vereinheitlichen und verbessern | |
medium | ( Normal ) | Normaler, standardisierter und klarer Quellcode |
high | Sehr strenge Quellcode-Regeln | |
insane | Extrem strikter Quellcode. Z.B. werden mathematische Funktionen wie + und - verboten, wodurch alle Funktionen (".add", ".sub") die selbe Priorität besitzen. |
Der Standard ist immer "open", womit alle Vereinfachungen erlaubt sind.
Ein anderes Level lässt sich als "Parser-Befehle" am Anfang der ersten Skript-Datei eingestellt:
>low
Zusätzlich existiert noch "strict" als ein Alias für "medium":
>strict
Überblick der Einschränkungen
Generell
Beschreibung | open | low | medium | high | insane |
---|---|---|---|---|---|
If-Abkürzung mit () | X | - | - | - | - |
Abkürzen von Funktionen der FunctionMap | X | - | - | - | - |
Weglassen von Typ-Angaben zu Variablen/Parametern | X | - | - | - | - |
Automatische Umwandlung von einer Variable in ein VarLet | X | - | - | - | - |
Abkürzungen für Imports | X | X | - | - | - |
Verwenden von Variablen/Konstanten ohne den Modifier '?' | X | X | - | - | - |
Aufruf der Standard-Funktion mittels Auto-Block | X | X | - | - | - |
Automatischer "Pass" eines Objektes an einen Block | X | X | - | - | - |
Direkter Aufruf von Eigenschaften ohne set und get | X | X | X | - | - |
Direkter Aufruf von Java-Klassen | X | X | X | X | - |
Objekte
Beschreibung | open | low | medium | high | insane |
---|---|---|---|---|---|
Atomare Typ upgrades | X | - | - | - | - |
Abkürzungen von magischen Variablen (°, §, ...) | X | X | - | - | - |
Abkürzungen Shell-Befehle (´´) | X | X | X | - | - |
Klammern: (), [], {} | X | X | X | X | - |
Funktionen
Beschreibung | open | low | medium | high | insane |
---|---|---|---|---|---|
Select und Update mit {} | X | X | - | - | - |
Abkürzungen für Range mit ".." | X | X | X | - | - |
Setzen von Eigenschaften mit '=' | X | X | X | - | - |
Position für Set/Get mit eckigen Klammern | X | X | X | - | - |
Berechnungen mit Zuweisung: +=, =++, ... | X | X | X | - | - |
Weglassen des Rückgabe-Typs einer Funktion | X | X | X | - | - |
Mathematische Funktionen wie +, -, *, /, = | X | X | X | X | - |
Interne Hilfe | X | X | X | X | - |
Zuweisung mit = und , => | X | X | X | X | - |
- Powered by
OghsWiki
-