1. Τι είναι το lua&luaJit;
lua(www.lua.org)Στην πραγματικότητα είναι μια γλώσσα δέσμης ενεργειών που αναπτύχθηκε για την ενσωμάτωση άλλων εφαρμογών
Λουατζίτ(www.luajit.org)Είναι ένας μεταγλωττιστής του lua just-in-time και μπορεί επίσης να ειπωθεί ότι είναι μια αποτελεσματική έκδοση του lua.
2. Πλεονεκτήματα
1) Η Lua είναι μια δωρεάν, μικρή, απλή, ισχυρή, αποτελεσματική και ελαφριά ενσωματωμένη γλώσσα δέσμης ενεργειών και η τρέχουσα έκδοση διανομής 5.3.1 της Lua είναι μόνο 276k. 2) Είναι ένα έργο που αναπτύχθηκε σε C, ώστε να μπορεί να τρέξει στα περισσότερα λειτουργικά συστήματα 3) Η Lua είναι αυτή τη στιγμή η ταχύτερη γλώσσα σεναρίου, η οποία μπορεί να βελτιώσει την ευελιξία της γλώσσας και να μεγιστοποιήσει την ταχύτητα διατήρησης 4) Η σύνταξή του είναι πολύ απλή, δεν υπάρχουν εξαιρέσεις 5) Το lua μπορεί επίσης να χρησιμοποιηθεί ως API για C
3. Ανεπάρκειες και διαφορές
1) Η Lua δεν διαθέτει ισχυρή βιβλιοθήκη, έτσι πολλές λειτουργίες υλοποιούνται χωρίς τις συνοπτικές γλώσσες δέσμης ενεργειών όπως python, perl και ruby 2) Η λειτουργία χειρισμού εξαιρέσεων της Lua είναι αμφιλεγόμενη, αν και παρέχει λειτουργίες χειρισμού εξαιρέσεων για pcland και xpcall 3) Η υποστήριξη για κωδικοποίηση Unicode δεν παρέχεται στη μητρική γλώσσα LUA, αν και http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html μπορεί να επιτευχθεί μέσω ορισμένων συμβιβασμών 4) Δεν παρέχει τριμερείς λειτουργίες χειριστή για a?b:c, το οποίο χρησιμοποιείται ευρέως στη C++ 5) Χωρίς διακόπτη... περίπτωση... σύνταξη, η οποία μπορεί να γίνει μόνο εάν: αλλιώςαν.. αλλιώςαν.. αλλιώς.. Μέθοδος τέλους 6) Η σύνταξη συνέχειας δεν παρέχεται κατά την επανάληψη 7) Δεν υπάρχουν λειτουργίες όπως a++ και a+=1, οι οποίες χρησιμοποιούνται ευρέως στη C++ 8) Ο δείκτης του Lua ξεκινά από το 1, όχι από το γνωστό 0 (συμβολοσειρά, πίνακας) 9) Όταν εκχωρείτε ένα στοιχείο στο μηδέν, σημαίνει ότι το στοιχείο δεν υπάρχει 10) Ο αριθμητικός τύπος του lua είναι μόνο αριθμός και δεν υπάρχει διάκριση μεταξύ int, float, double κ.λπ 11) Δεν υπάρχει έννοια κλάσεων στο lua και οι τους υλοποιούνται με τη μορφή πινάκων 12) Μόνο το μηδέν και το ψευδές στο lua είναι ψευδές και το μηδέν είναι αληθές στο lua 13) Πολλά προγράμματα πρέπει να επισημανθούν με () για να εκτελεστούν, για παράδειγμα, a={["b"]=5}, το print(a.b) μπορεί να εκτελεστεί, αλλά το {["b"]=5}.b θα αναφέρει ένα σφάλμα και ({["b"]=5}).b απαιτείται
4. Επισκόπηση
Συνοπτικά, το LUA είναι ένα απλό και αποτελεσματικό ngx_lua που χρησιμοποιείται ευρέως στην ανάπτυξη λογικής παιχνιδιών και στην ανάπτυξη διακομιστών.
Μεταφορά από: https://blog.csdn.net/ugly_man_/article/details/48577007
Επισυνάπτεται:
Δοκιμή σύγκρισης απόδοσης Lua και Luajit: https://blog.csdn.net/alexwoo0501/article/details/50618031
|