Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 14194|Antwort: 0

Stärken und Schwächen von Lua und Luajit

[Link kopieren]
Veröffentlicht am 27.04.2018 09:44:40 | | | |
1. Was ist lua&luaJit?



lua(www.lua.org)Es handelt sich tatsächlich um eine Skriptsprache, die entwickelt wurde, um andere Anwendungen einzubetten
Luajit(www.luajit.org)Es ist ein Just-in-Time-Laufzeit-Compiler von lua und kann auch als effiziente Version von lua bezeichnet werden.

2. Vorteile

1) Lua ist eine freie, kleine, einfache, leistungsstarke, effiziente und leichte eingebettete Skriptsprache, und die aktuelle Verteilungsversion 5.3.1 von Lua umfasst nur 276k.
2) Es handelt sich um ein in C entwickeltes Projekt, sodass es auf den meisten Betriebssystemen laufen kann
3) Lua ist derzeit die schnellste Skriptsprache, die die Flexibilität der Sprache verbessern und die Speicherzeit maximieren kann
4) Seine Syntax ist sehr einfach, es gibt keine Ausnahmen
5) lua kann auch als API für C verwendet werden

3. Unzulänglichkeiten und Unterschiede

1) Lua verfügt nicht über eine leistungsstarke Bibliothek, daher werden viele Funktionen ohne die prägnanten Skriptsprachen wie Python, Perl und Ruby implementiert
2) Luas Ausnahmebehandlungsfunktion ist umstritten, obwohl sie Ausnahmebehandlungsfunktionen für pcland und xpcall bereitstellt.
3) Die Unterstützung für Unicode-Codierung ist in der LUA-Muttersprache nicht verfügbar, obwohl http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html durch einige Kompromisse erreicht werden kann
4) Es bietet keine ternären Operatoroperationen für a?b:c, was in C++ weit verbreitet ist.
5) Kein Schalter... Fall... Syntax, die nur dann durchgeführt werden kann, wenn: sonst wenn.. sonst wenn.. oder.. Endmethode
6) Die Continue-Syntax wird beim Schleifen nicht bereitgestellt
7) Es gibt keine Operationen wie a++ und a+=1, die in C++ weit verbreitet sind
8) Luas Index beginnt bei 1, nicht bei der vertrauten 0 (Zeichenkette, Tabelle)
9) Wenn man ein Element auf null setzt, bedeutet das, dass das Element nicht existiert
10) Der numerische Typ von Lua ist nur Zahl, und es gibt keinen Unterschied zwischen int, float, double usw
11) Es gibt kein Klassenkonzept in Lua, und ihre Klassen sind in Form von Tabellen implementiert
12) Nur null und falsch in Lua sind falsch, und null ist in Lua wahr
13) Viele Programme müssen mit () markiert werden, zum Beispiel a={["b"]=5}, print(a.b) kann ausgeführt werden, aber {["b"]=5}.b meldet einen Fehler, und ({["b"]=5}).b ist erforderlich

4. Überblick

Zusammenfassend ist LUA ein einfaches und effizientes ngx_lua, das weit verbreitet in der Entwicklung von Spielelogiken und Servern verwendet wird.

Übertragen von: https://blog.csdn.net/ugly_man_/article/details/48577007

Angehängt:

Lua-und-Luajit-Leistungsvergleichstest: https://blog.csdn.net/alexwoo0501/article/details/50618031





Vorhergehend:Nginx Luas WAF-Anwendungsfirewall-Schwachstelle
Nächster:NGINX fügt Drittanbieter-Module hinzu und aktiviert zudem Module, die nativ von nginx unterstützt werden
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com