Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 14194|Odgovoriti: 0

Prednosti in slabosti Lue in Luajita

[Kopiraj povezavo]
Objavljeno na 27. 04. 2018 09:44:40 | | | |
1. Kaj je lua&luaJit?



lua(www.lua.org)Pravzaprav gre za skriptni jezik, razvit za vgradnjo drugih aplikacij
luajit(www.luajit.org)Gre za prevajalnik lua v času izvajanja just-in-time, prav tako pa lahko rečemo, da je učinkovita različica Lua.

2. Prednosti

1) Lua je brezplačen, majhen, preprost, zmogljiv, učinkovit in lahek vgrajen skriptni jezik, trenutna distribucijska različica 5.3.1 Lua pa je le 276k.
2) Gre za projekt, razvit v jeziku C, zato lahko deluje na večini operacijskih sistemov
3) Lua je trenutno najhitrejši skriptni jezik, kar lahko izboljša prilagodljivost jezika in maksimira hitrost pomnjenja
4) Njena sintaksa je zelo preprosta, ni izjem
5) lua se lahko uporablja tudi kot API za C

3. Pomanjkljivosti in razlike

1) Lua nima zmogljive knjižnice, zato je veliko funkcij implementiranih brez jedrnatih skriptnih jezikov, kot so python, perl in ruby
2) Funkcija obravnave izjem v Lua je kontroverzna, čeprav zagotavlja funkcije obravnave izjem za pcland in xpcall
3) Podpora za Unicode kodiranje v maternem jeziku LUA ni zagotovljena, čeprav je http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html mogoče doseči z določenimi kompromisi
4) Ne omogoča ternarnih operatornih operacij za a?b:c, ki je široko uporabljen v C++
5) Brez stikala... primer... Skladnja, ki jo je mogoče izvesti le, če: drugače... drugače... drugače.. Končna metoda
6) Sintaksa nadaljevanja ni na voljo pri zankanju
7) Ni operacij, kot sta a++ in a+=1, ki bi bile široko uporabljene v C++
8) Luajev indeks se začne pri 1, ne pri znanem 0 (niz, tabela)
9) Ko element dodelite nič, to pomeni, da element ne obstaja
10) Numerična vrsta lua je le število, pri čemer ni razlike med int, float, double itd
11) V lua ni koncepta razredov, njihovi razredi so implementirani v obliki tabel
12) Samo nil in false v lua sta napačni, nič pa je resničen v lua
13) Veliko programov je treba označiti z () za zagon, na primer a={["b"]=5}, print(a.b) se lahko izvaja, vendar {["b"]=5}.b poroča o napaki, in ({["b"]=5}).b je potreben

4. Pregled

Povzemimo, LUA je preprosta in učinkovita ngx_lua široko uporabljena pri razvoju logike iger in strežnikov.

Preneseno iz: https://blog.csdn.net/ugly_man_/article/details/48577007

Priloženo:

Primerjalni test zmogljivosti Lua in Luajit: https://blog.csdn.net/alexwoo0501/article/details/50618031





Prejšnji:Ranljivost WAF aplikacijskega požarnega zidu Nginx Lua
Naslednji:NGINX dodaja module tretjih oseb ter omogoča module, ki jih nativno podpira NGINX
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com