template

Index :: Javascript :: Generischer Code

Wie der Name schon andeutet, wird generischer Code zur Laufzeit erzeugt - typischerweise ein Mechanismus, der von Compilern benutzt wird, um das eigentliche Zielprogramm zu generieren.
In Assembler ist es sogar möglich, dass ein fertiges Programm sich selbst manipuliert, indem es Op-Codes austauscht. Bei geschwindigkeitskritischen Bildbearbeitungsalgorithmen lassen sich beispielsweise Konstanten für Maskenwerte eintragen, die man normalerweise (mit Performanceverlust) aus Variablen holen müsste. Theoretisch können auch Schleifenzähler oder Verzweigungs- bzw. Abbruch-Bedingungen überschrieben werden, um den strukturellen Ablauf im Sinne einer Optimierung direkt zu beeinflussen. Auch selbstmodifizierende Viren setzen solche Verfahren ein; jedoch besteht hier die Absicht nicht in einer Optimierung, sondern in einer Code-Variation, um die Mustererkennung von Antiviren-Software zu unterwandern.

Jede Sprache, die Strings erzeugen und bearbeiten kann, ist auch dazu fähig, eigenen Quellcode herzustellen. Allerdings muss dieser dann i.d.R. von einem externen Interpreter oder Compiler geparst/übersetzt werden, um ausgeführt werden zu können.
Während die wenigsten Sprachen einen eingebauten Interpreter, geschweige denn eine entsprechende Funktion besitzen, bietet Javascript gleich 2 Möglichkeiten, Quellcode zu generieren und auszuführen:


Bei herkömmlichen Webprojekten wird normalerweise kein generischer Code benötigt. Erst in speziellen Anwendungsfällen stellt er die (oftmals einzige) Möglichkeit zur Problemlösung dar:

Index :: Javascript


template