Αποδέσμευση εργαλείου συναρμολόγησης Qbs 2.0

Παρουσιάστηκε η κυκλοφορία εργαλείου κατασκευής Qbs 2.0. Για την κατασκευή του Qbs, το Qt απαιτείται ως εξάρτηση, αν και το ίδιο το Qbs έχει σχεδιαστεί για να οργανώνει τη συναρμολόγηση οποιωνδήποτε έργων. Το Qbs χρησιμοποιεί μια απλοποιημένη έκδοση της γλώσσας QML για να ορίσει σενάρια κατασκευής έργου, η οποία σας επιτρέπει να ορίσετε αρκετά ευέλικτους κανόνες κατασκευής στους οποίους μπορούν να συνδεθούν εξωτερικές μονάδες, να χρησιμοποιηθούν συναρτήσεις JavaScript και να δημιουργηθούν αυθαίρετοι κανόνες κατασκευής.

Η γλώσσα δέσμης ενεργειών που χρησιμοποιείται στο Qbs είναι προσαρμοσμένη για να αυτοματοποιεί τη δημιουργία και την ανάλυση σεναρίων build από IDE. Επιπλέον, το Qbs δεν δημιουργεί makefiles και το ίδιο, χωρίς μεσάζοντες όπως το βοηθητικό πρόγραμμα make, ελέγχει την εκκίνηση μεταγλωττιστών και συνδέσμων, βελτιστοποιώντας τη διαδικασία δημιουργίας με βάση ένα λεπτομερές γράφημα όλων των εξαρτήσεων. Η παρουσία αρχικών δεδομένων σχετικά με τη δομή και τις εξαρτήσεις στο έργο σας επιτρέπει να παραλληλίσετε αποτελεσματικά την εκτέλεση λειτουργιών σε πολλά νήματα. Για μεγάλα έργα που αποτελούνται από μεγάλο αριθμό αρχείων και υποκαταλόγων, η απόδοση των ανακατασκευών που χρησιμοποιούν Qbs μπορεί να ξεπεράσει την απόδοση αρκετές φορές - η αναδόμηση είναι σχεδόν στιγμιαία και δεν κάνει τον προγραμματιστή να αφιερώνει χρόνο σε αναμονή.

Υπενθυμίζουμε ότι το 2018, η Qt Company αποφάσισε να σταματήσει την ανάπτυξη του Qbs. Το Qbs αναπτύχθηκε ως αντικατάσταση του qmake, αλλά τελικά αποφασίστηκε να χρησιμοποιηθεί το CMake ως το κύριο σύστημα κατασκευής για το Qt μακροπρόθεσμα. Η ανάπτυξη του Qbs συνεχίστηκε πλέον ως ανεξάρτητο έργο που υποστηρίζεται από κοινοτικές δυνάμεις και ενδιαφερόμενους προγραμματιστές. Η υποδομή της εταιρείας Qt συνεχίζει να χρησιμοποιείται για ανάπτυξη.

Μια σημαντική αλλαγή στον αριθμό έκδοσης σχετίζεται με την υλοποίηση ενός νέου backend JavaScript, το οποίο αντικατέστησε το QtScript, το οποίο είχε καταργηθεί στο Qt 6. Θεωρήθηκε μη ρεαλιστικό να συνεχιστεί η διατήρηση του QtScript από μόνο του λόγω πολύπλοκων δεσμεύσεων στο JavaScriptCore, έτσι -Επαρκές και συμπαγές επιλέχθηκε ως βάση για τη νέα μηχανή υποστήριξης QuickJS JavaScript που δημιουργήθηκε από τον Fabrice Bellard, ο οποίος ίδρυσε τα έργα QEMU και FFmpeg. Ο κινητήρας υποστηρίζει την προδιαγραφή ES2019 και ξεπερνά σημαντικά τους αντίστοιχους σε απόδοση (XS κατά 35%, DukTape περισσότερες από δύο φορές, JerryScript τρεις φορές και MuJS επτά φορές).

Από την άποψη της ανάπτυξης σεναρίων κατασκευής, η μετάβαση σε νέο κινητήρα δεν πρέπει να οδηγήσει σε αξιοσημείωτες αλλαγές. Η απόδοση θα παραμείνει επίσης περίπου η ίδια. Από τις διαφορές, υπάρχουν πιο αυστηρές απαιτήσεις στη νέα μηχανή για τη χρήση μηδενικών τιμών, οι οποίες μπορούν να αποκαλύψουν προβλήματα σε υπάρχοντα έργα που πέρασαν απαρατήρητα κατά τη χρήση του QtScript.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο