שחרור כלי הרכבה Qbs 2.0

הוכרזה שחרור ערכת הכלים להרכבה Qbs 2.0. כדי לבנות Qbs, Qt נדרש בין התלויות, אם כי Qbs עצמו נועד לארגן את ההרכבה של כל פרויקט. Qbs משתמשת בגרסה פשוטה של ​​שפת QML כדי להגדיר סקריפטים לבניית פרויקטים, המאפשרת לך להגדיר כללי בנייה גמישים למדי שיכולים לחבר מודולים חיצוניים, להשתמש בפונקציות JavaScript וליצור כללי בנייה מותאמים אישית.

שפת הסקריפטים המשמשת ב-Qbs מותאמת להפוך את היצירה והניתוח של סקריפטים לבנות על ידי IDEs. בנוסף, Qbs אינה מייצרת קבצי makefile, ובעצמה, ללא מתווכים כגון תוכנית השירות make, שולטת בהשקה של מהדרים ומקשרים, תוך אופטימיזציה של תהליך הבנייה בהתבסס על גרף מפורט של כל התלות. הנוכחות של נתונים ראשוניים על המבנה והתלות בפרויקט מאפשרת לך להקביל ביעילות את ביצוע הפעולות במספר שרשורים. עבור פרויקטים גדולים המורכבים ממספר רב של קבצים ותתי ספריות, ביצועי הבנייה מחדש באמצעות Qbs יכולים לעלות על make פי כמה - הבנייה מחדש היא כמעט מיידית ואינה גורמת למפתח להקדיש זמן להמתנה.

נזכיר כי בשנת 2018, חברת Qt החליטה להפסיק לפתח Qbs. Qbs פותחה כתחליף ל-qmake, אך בסופו של דבר הוחלט להשתמש ב-CMake כמערכת הבנייה הראשית של Qt בטווח הארוך. הפיתוח של Qbs נמשך כעת כפרויקט עצמאי הנתמך על ידי כוחות קהילתיים ומפתחים מתעניינים. תשתית Qt Company ממשיכה לשמש לפיתוח.

שינוי משמעותי במספר הגרסה קשור להטמעה של קצה ג'אווה סקריפט חדש, שהחליף את QtScript, שהוכרז מיושן ב-Qt 6. זה נחשב לא ריאלי להמשיך לתחזק QtScript בכוחות עצמנו בגלל כריכות מורכבות ל-JavaScriptCore, ולכן אחד עצמאי וקומפקטי נבחר כבסיס ל-backend החדש. מנוע ה-JavaScript QuickJS נוצר על ידי Fabrice Bellard, שייסד את הפרויקטים QEMU ו-FFmpeg. המנוע תומך במפרט ES2019 ועדיף באופן ניכר בביצועים בהשוואה לאנלוגים קיימים (XS ב-35%, DukTape ביותר מפעמיים, JerryScript פי שלוש, ו-MuJS פי שבע).

מנקודת מבט של פיתוח סקריפטים להרכבה, המעבר למנוע חדש לא אמור להוביל לשינויים ניכרים. גם הפריון יישאר בערך באותה רמה. בין ההבדלים, ישנן דרישות מחמירות יותר במנוע החדש לשימוש ב-null, מה שיכול לחשוף בעיות בפרויקטים קיימים שלא שמים לב אליהם בעת השימוש ב-QtScript.

מקור: OpenNet.ru

הוספת תגובה