Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 14194|Antwoord: 0

Sterke en zwakke punten van Lua en Luajit

[Link kopiëren]
Geplaatst op 27-04-2018 09:44:40 | | | |
1. Wat is lua&luaJit?



lua(www.lua.org)Het is eigenlijk een scripttaal die is ontwikkeld om andere applicaties in te sluiten
Luajit(www.luajit.org)Het is een just-in-time runtime-compiler van lua, en kan ook worden beschouwd als een efficiënte versie van lua.

2. Voordelen

1) Lua is een gratis, kleine, eenvoudige, krachtige, efficiënte en lichtgewicht embedded scripttaal, en de huidige distributieversie 5.3.1 van Lua is slechts 276k.
2) Het is een project ontwikkeld in C, zodat het op de meeste besturingssystemen kan draaien
3) Lua is momenteel de snelste scripttaal, wat de flexibiliteit van de taal kan verbeteren en de retentiesnelheid kan maximaliseren
4) De syntaxis is heel eenvoudig, er zijn geen uitzonderingen
5) lua kan ook worden gebruikt als API voor C

3. Tekortkomingen en verschillen

1) Lua heeft geen krachtige bibliotheek, waardoor veel functies worden geïmplementeerd zonder de beknopte scripttalen zoals python, perl en ruby
2) Lua's exception handling-functie is controversieel, hoewel deze uitzonderingsbehandelingsfuncties biedt voor pcland en xpcall
3) Ondersteuning voor Unicode-codering wordt niet geboden in de moedertaal LUA, hoewel http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html mogelijk is door enkele compromissen
4) Het biedt geen ternaire operatoroperaties voor a?b:c, wat veel wordt gebruikt in C++
5) Geen schakelaar... zaak... syntaxis, wat alleen kan worden gedaan via als: anders als.. anders als.. anders.. Endmethode
6) De continue-syntaxis wordt niet gegeven bij het lusen
7) Er zijn geen bewerkingen zoals a++ en a+=1, die veel worden gebruikt in C++
8) Lua's index begint bij 1, niet bij de bekende 0 (string, tabel)
9) Wanneer je een element aan nul toekent, betekent dat dat het element niet bestaat
10) Het numerieke type lua is slechts getal, en er is geen onderscheid tussen int, float, double, enzovoort
11) Er is geen concept van klassen in lua, en hun klassen zijn geïmplementeerd in de vorm van tabellen
12) Alleen nul en onwaar in lua zijn vals, en nul is waar in lua
13) Veel programma's moeten worden gemarkeerd met () om uit te voeren, bijvoorbeeld a={["b"]=5}, print(a.b) kan worden uitgevoerd, maar {["b"]=5}.b zal een fout rapporteren, en ({["b"]=5}).b is vereist

4. Overzicht

Samengevat is LUA een eenvoudige en efficiënte ngx_lua veel gebruikt in de ontwikkeling van gamelogica en servers.

Overgeplaatst van: https://blog.csdn.net/ugly_man_/article/details/48577007

Bijgevoegd:

Lua en Luajit prestatievergelijkingstest: https://blog.csdn.net/alexwoo0501/article/details/50618031





Vorig:Nginx Lua's WAF Application Firewall-kwetsbaarheid
Volgend:NGINX voegt modules van derden toe en maakt modules mogelijk die native door nginx worden ondersteund
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com