Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 14194|Atsakyti: 0

Lua ir Luajit stipriosios ir silpnosios pusės

[Kopijuoti nuorodą]
Paskelbta 2018-04-27 09:44:40 | | | |
1. Kas yra lua&luaJit?



lua(www.lua.org)Iš tikrųjų tai yra scenarijų kalba, sukurta kitoms programoms įterpti
luajit(www.luajit.org)Tai "just-in-time" lua kompiliatorius, taip pat galima sakyti, kad tai efektyvi lua versija.

2. Privalumai

1) Lua yra nemokama, maža, paprasta, galinga, efektyvi ir lengva įterpta scenarijų kalba, o dabartinė Lua platinimo versija 5.3.1 yra tik 276k.
2) Tai projektas, sukurtas C kalba, todėl jis gali veikti daugumoje operacinių sistemų
3) Lua šiuo metu yra greičiausia scenarijų kalba, kuri gali pagerinti kalbos lankstumą ir maksimaliai padidinti išlaikymo greitį
4) Jo sintaksė labai paprasta, nėra išimčių
5) lua taip pat gali būti naudojamas kaip C API

3. Trūkumai ir skirtumai

1) Lua neturi galingos bibliotekos, todėl daugelis funkcijų įgyvendinamos be glaustų scenarijų kalbų, tokių kaip python, perl ir ruby
2) Lua išimčių tvarkymo funkcija yra prieštaringa, nors ji teikia išimčių tvarkymo funkcijas pcland ir xpcall
3) Unicode kodavimo palaikymas neteikiamas LUA gimtąja kalba, nors http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html galima pasiekti kai kuriais kompromisais
4) Jis neteikia trijų operatorių operacijų a?b:c, kuris plačiai naudojamas C++
5) Nėra jungiklio... atvejis... sintaksė, kurią galima padaryti tik jei: elseif.. elseif.. kitaip.. Pabaigos metodas
6) Tęsimo sintaksė nepateikiama cikluojant
7) Nėra tokių operacijų kaip a++ ir a+=1, kurios yra plačiai naudojamos C++
8) Lua indeksas prasideda nuo 1, o ne pažįstamas 0 (eilutė, lentelė)
9) Kai elementą priskiriate nuliui, tai reiškia, kad elemento nėra
10) Skaitinis lua tipas yra tik skaičius, ir nėra skirtumo tarp int, float, double ir t.t
11) Lua klasių sąvokos nėra, o jų klasės įgyvendinamos lentelių pavidalu
12) Tik nulis ir klaidingas lua yra klaidingi, o nulis yra teisingas lua
13) Daugelis programų turi būti pažymėtos (), kad paleistų, pavyzdžiui, a={["b"]=5}, print(a.b) gali būti paleistas, bet {["b"]=5}.b praneš apie klaidą, o ({["b"]=5}).b yra reikalingas

4. Apžvalga

Apibendrinant galima pasakyti, kad LUA yra paprasta ir efektyvi ngx_lua, plačiai naudojama žaidimų logikos kūrimui ir serverių kūrimui.

Perkelta iš: https://blog.csdn.net/ugly_man_/article/details/48577007

Pridedama:

Lua ir Luajit našumo palyginimo testas: https://blog.csdn.net/alexwoo0501/article/details/50618031





Ankstesnis:"Nginx Lua" WAF programos ugniasienės pažeidžiamumas
Kitą:NGINX prideda trečiųjų šalių modulius, taip pat įgalina modulius, kuriuos palaiko NGINX
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com