Qbs 2.0 montaj aracı sürümü

Qbs 2.0 derleme aracı sürümü tanıtıldı. Qbs'yi oluşturmak için bir bağımlılık olarak Qt gereklidir, ancak Qbs'nin kendisi herhangi bir projenin montajını organize etmek için tasarlanmıştır. Qbs, proje oluşturma komut dosyalarını tanımlamak için QML dilinin basitleştirilmiş bir sürümünü kullanır; bu, harici modüllerin bağlanabileceği, JavaScript işlevlerinin kullanılabileceği ve isteğe bağlı oluşturma kurallarının oluşturulabileceği oldukça esnek oluşturma kuralları tanımlamanıza olanak tanır.

Qbs'de kullanılan betik dili, IDE'ler tarafından yapı betiklerinin oluşturulmasını ve ayrıştırılmasını otomatikleştirmek için uyarlanmıştır. Ek olarak, Qbs makefiles oluşturmaz ve make yardımcı programı gibi aracılar olmadan kendisi, derleyicilerin ve bağlayıcıların başlatılmasını kontrol ederek, tüm bağımlılıkların ayrıntılı bir grafiğine dayalı olarak oluşturma sürecini optimize eder. Projedeki yapı ve bağımlılıklarla ilgili ilk verilerin varlığı, işlemlerin birkaç iş parçacığında yürütülmesini etkili bir şekilde paralelleştirmenize olanak tanır. Çok sayıda dosya ve alt dizinden oluşan büyük projeler için, Qbs kullanarak yeniden oluşturmaların performansı make'den birkaç kat daha iyi performans gösterebilir - yeniden oluşturma neredeyse anında gerçekleşir ve geliştiricinin beklemeye zaman harcamasına neden olmaz.

Qt Company'nin 2018'de Qbs geliştirmeyi bırakmaya karar verdiğini hatırlayın. Qbs, qmake'in yerine geçmek üzere geliştirildi, ancak sonuçta uzun vadede Qt için ana yapı sistemi olarak CMake'in kullanılmasına karar verildi. Qbs'nin gelişimi artık topluluk güçleri ve ilgili geliştiriciler tarafından desteklenen bağımsız bir proje olarak devam ediyor. Qt Company altyapısı geliştirme için kullanılmaya devam ediyor.

Sürüm numarasındaki önemli bir değişiklik, Qt 6'da kullanımdan kaldırılan QtScript'in yerini alan yeni bir JavaScript arka ucunun uygulanmasıyla ilişkilidir. JavaScriptCore'a karmaşık bağlantılar nedeniyle QtScript'i kendi başına sürdürmeye devam etmenin gerçekçi olmadığı düşünülüyordu. -QEMU ve FFmpeg projelerini kuran Fabrice Bellard tarafından oluşturulan yeni arka uç QuickJS JavaScript motorunun temeli olarak yeterli ve kompakt olan seçildi. Motor, ES2019 spesifikasyonunu destekliyor ve performans açısından mevcut benzerlerinden önemli ölçüde daha iyi performans gösteriyor (XS %35, DukTape iki kattan fazla, JerryScript üç kat ve MuJS yedi kat).

Derleme komut dosyalarının geliştirilmesi açısından bakıldığında, yeni bir motora geçiş gözle görülür değişikliklere yol açmamalıdır. Verimlilik de yaklaşık aynı seviyede kalacak. Farklılıklar arasında, yeni motorda boş değerlerin kullanımına yönelik daha sıkı gereksinimler var ve bu, mevcut projelerde QtScript kullanılırken fark edilmeyen sorunları ortaya çıkarabilir.

Kaynak: opennet.ru

Yorum ekle