Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 14194|Odpoveď: 0

Silné a slabé stránky Lua a Luajita

[Kopírovať odkaz]
Zverejnené 27. 4. 2018 9:44:40 | | | |
1. Čo je lua&luaJit?



lua(www.lua.org)V skutočnosti ide o skriptovací jazyk vyvinutý na vkladanie iných aplikácií
Luajit(www.luajit.org)Je to just-in-time runtime kompilátor Lua a dá sa tiež označiť za efektívnu verziu Lua.

2. Výhody

1) Lua je bezplatný, malý, jednoduchý, výkonný, efektívny a ľahký embedded skriptovací jazyk a aktuálna distribučná verzia 5.3.1 Lua má len 276k.
2) Je to projekt vyvinutý v jazyku C, takže môže bežať na väčšine operačných systémov
3) Lua je momentálne najrýchlejší skriptovací jazyk, ktorý môže zlepšiť flexibilitu jazyka a maximalizovať rýchlosť zapamätania
4) Jeho syntax je veľmi jednoduchá, neexistujú žiadne výnimky
5) lua môže byť tiež použitá ako API pre C

3. Nedostatky a rozdiely

1) Lua nemá výkonnú knižnicu, takže mnohé funkcie sú implementované bez stručných skriptovacích jazykov ako python, perl a ruby
2) Funkcia spracovania výnimiek v Lua je kontroverzná, hoci poskytuje funkcie spracovania výnimiek pre pcland a xpcall
3) Podpora Unicode kódovania nie je v natívnom jazyku LUA poskytovaná, hoci http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html je možné dosiahnuť určitými kompromismi
4) Neposkytuje ternárne operátorové operácie pre a?b:c, ktoré sa široko používajú v C++
5) Žiadny spínač... prípad... Syntax, ktorá môže byť vykonaná len poľom, ak: inak.. inak.. inak.. Metóda END
6) Syntax pokračovania nie je poskytovaná pri cyklovaní
7) Neexistujú operácie ako a++ a a+=1, ktoré sa široko používajú v C++
8) Luaov index začína na 1, nie na známom 0 (reťazec, tabuľka)
9) Keď priradíte prvok k nul, znamená to, že tento prvok neexistuje
10) Číselný typ lua je len číslo a neexistuje rozdiel medzi int, float, double a podobne
11) V lua neexistuje koncept tried a ich triedy sú implementované vo forme tabuliek
12) Iba nul a false v lua sú nepravdivé a nula je pravdivé v lua
13) Mnohé programy musia byť označené () na spustenie, napríklad a={["b"]=5}, print(a.b) môže byť spustený, ale {["b"]=5}.b hlási chybu a ({["b"]=5}).b je potrebný

4. Prehľad

Na záver, LUA je jednoduchá a efektívna ngx_lua široko používaná vo vývoji hernej logiky a vývoji serverov.

Prenesené z: https://blog.csdn.net/ugly_man_/article/details/48577007

Priložené:

Porovnávacie testy výkonu Lua a Luajit: https://blog.csdn.net/alexwoo0501/article/details/50618031





Predchádzajúci:Zraniteľnosť firewallu WAF od Nginx Lua
Budúci:NGINX pridáva moduly tretích strán, ako aj umožňuje moduly, ktoré sú natívne podporované nginx
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com