1. Mis on lua&luaJit?
Lua(www.lua.org)Tegelikult on see skriptikeel, mis on loodud teiste rakenduste manustamiseks
Luajit(www.luajit.org)See on just-in-time runtime'i lua kompilaator ning seda võib pidada ka tõhusaks lua versiooniks.
2. Eelised
1) Lua on tasuta, väike, lihtne, võimas, tõhus ja kerge sisseehitatud skriptikeel ning praegune levituse versioon 5.3.1 on vaid 276k. 2) See on C-keeles arendatud projekt, seega saab see töötada enamikul operatsioonisüsteemidel 3) Lua on praegu kiireim skriptikeel, mis võib parandada keele paindlikkust ja maksimeerida säilituskiirust 4) Selle süntaks on väga lihtne, erandeid pole 5) lua-d saab kasutada ka C API-na
3. Puudused ja erinevused
1) Lua-l puudub võimas teek, seega on paljud funktsioonid rakendatud ilma lühikeste skriptikeelteta nagu python, perl ja ruby 2) Lua erandite käsitlemise funktsioon on vastuoluline, kuigi see pakub erandite käsitlemise funktsioone pclandi ja xpcalli jaoks 3) Unicode'i kodeerimise tugi ei ole LUA emakeeles olemas, kuigi http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html on võimalik mõningate kompromisside kaudu saavutada 4) See ei paku ternaaroperaatori operatsioone a?b:c jaoks, mida kasutatakse laialdaselt C++ süsteemis 5) Ei mingit lülitit... juhtum... süntaks, mida saab teha ainult siis, kui: muul juhul.. muul juhul.. muidu.. Lõpp meetod 6) Jätkamissüntaksit ei pakuta tsükli tegemisel 7) C++-s laialdaselt kasutatavaid operatsioone nagu a++ ja a+=1 ei ole 8) Lua indeks algab 1-st, mitte tuttavast 0-st (string, tabel) 9) Kui määrad elemendi väärtusele null, tähendab see, et seda elementi ei eksisteeri 10) Lua numbriline tüüp on ainult arv ning vahet ei tehta int, float, double jne vahel 11) Lua-s puudub klasside mõiste ning nende klassid on rakendatud tabelite kujul 12) Lua puhul on ainult null ja väär ning null on tõene lua puhul 13) Paljusid programme tuleb käivitamiseks märkida (), näiteks a={["b"]=5}, print(a.b) saab käivitada, kuid {["b"]=5}.b teatab veast ning ({["b"]=5}).b on vajalik
4. Ülevaade
Kokkuvõttes on LUA lihtne ja tõhus ngx_lua laialdaselt kasutusel mänguloogika ja serverite arenduses.
Üleviidud: https://blog.csdn.net/ugly_man_/article/details/48577007
Lisatud:
Lua ja Luajiti soorituse võrdlustest: https://blog.csdn.net/alexwoo0501/article/details/50618031
|