Es wird in jedem Informatikunterricht gelehrt und in vielen Büchern geschrieben, dass Programmierer GoTo nicht verwenden sollten. Es gibt sogar einen xkcd Comic darüber. Meine Frage ist, haben wir einen Punkt erreicht, wo dasselbe über Eval gesagt werden kann?
Wo GoTo für Programmablauf und Lesbarkeit nicht leitfähig ist, Eval ist das gleiche für das Debuggen und die Programmausführung und das Design.
Sollte Eval das gleiche Stigma wie GoTo und die gleichen Konsequenzen wie im xkcd-Comic haben?
Wenn überhaupt, sollte es mehr Stigma tragen.
GoTo erstellt häufig Code, der schwer zu pflegen ist. Eval erzeugt oft Code mit Sicherheitslücken - das ist schlimmer.
Eval hat einige ernsthafte Sicherheitsbedenken. Wenn es eine Chance gibt, dass nicht vertrauenswürdige oder vom Benutzer bereitgestellte Eingaben in einer Prüfung landen, ist sie anfällig.
Jslint warnt vor der Verwendung von eval () in js-Code, der durch es ausgeführt wird.
Vielleicht hat eval nicht die Kritikpunkte erreicht, die GoTo erreicht hat, aber sicherlich ist es veraltet!
"Exploits of Mom" deckt eval indirekt ab - bösartiger Code wird vom System wegen fehlender korrekter Überprüfung ausgeführt.