새로운 버전의 QBS 2.0 편집 시스템 출시

QbS

Qbs는 커뮤니티 중심의 언어 독립적 빌드 자동화 시스템입니다. 빠르고 QML을 기반으로 배우기 쉬운 언어를 제공합니다.

최근에 새로운 버전의 Qbs 2.0 출시가 발표되었고, 소프트웨어 생성 프로세스를 관리하기 위한 무료 오픈 소스 크로스 플랫폼 소프트웨어입니다. 주로 C/C++와 같은 다양한 프로그래밍 언어로 작성된 크고 복잡한 프로젝트를 지원하도록 설계되었습니다.

새로운 버전 2.0은 새로운 JavaScript 백엔드의 구현과 관련되어 있으므로 버전 번호가 중요합니다., Qt 6에서 더 이상 사용되지 않는 QtScript를 대체했습니다.

Qbs를 모르시는 분들은 이 사실을 아셔야 합니다. QML 언어의 단순화 된 버전을 사용합니다. 프로젝트 빌드 스크립트를 정의하여 외부 모듈을 연결할 수 있고 JavaScript 함수를 사용할 수 있으며 임의의 빌드 규칙을 만들 수 있는 매우 유연한 빌드 규칙을 정의할 수 있습니다.

Qbs는 다음과 같은 점에서 독특합니다.e는 내부 컴파일을 위한 메커니즘이 없습니다. 단일 명령 호출 및 병렬 빌드를 포함하여 단일 소스 트리에서 여러 빌드를 생성하는 기능을 보장합니다.

이것은 핵심 기능이며, 빌드 디렉토리가 삭제되더라도 소스 파일이 영향을 받지 않도록 합니다. 출력 아티팩트가 소스 디렉터리에 기록되지 않습니다. Qbs를 빌드하려면 Qt가 종속성으로 필요하지만 Qbs 자체는 모든 프로젝트의 어셈블리를 구성하도록 설계되었습니다.

Qbs에서 사용되는 스크립팅 언어는 IDE에서 빌드 스크립트의 생성 및 구문 분석을 자동화하도록 맞춤화되었습니다. 또한 Qbs는 make 파일을 생성하지 않으며 make 유틸리티와 같은 중개자 없이 컴파일러 및 링커의 릴리스를 제어하여 모든 종속성에 대한 자세한 그래프를 기반으로 빌드 프로세스를 최적화합니다.

프로젝트의 구조 및 종속성에 대한 초기 데이터가 있으면 여러 스레드에서 작업 실행을 효과적으로 병렬화할 수 있습니다. 많은 수의 파일과 하위 디렉터리로 구성된 대규모 프로젝트의 경우 Qbs를 사용한 재구축 성능이 make보다 몇 배 더 나을 수 있습니다. 재구축은 거의 즉각적이며 개발자가 대기하는 데 시간을 낭비하지 않습니다.

QBS 2.0의 주요 참신함

이 새로운 QBS 2.0 릴리스는 처음에 언급한 바와 같이 주목할 만합니다. QtScript를 대체할 새로운 JavaScript 엔진 이는 JavaScriptCore에 대한 복잡한 바인딩으로 인해 자체적으로 QtScript를 계속 지원하는 것이 비현실적인 것으로 간주되어 Qt 6에서 더 이상 사용되지 않습니다.

QtScript를 복잡한 종속성으로 유지할 가능성은 특별히 매력적으로 보이지 않았습니다. 그러나 두 후보 모두 속성 액세스를 가로채는 API를 제공하지 않았으며 개발자는 성능상의 이유로 절대적으로 필요하다고 말했습니다.

사용자의 관점에서 눈에 띄는 변화가 없어야 합니다. 특히 성능은 거의 비슷할 것 같습니다. 그러나 QtScript는 필요하지 않은 컨텍스트에서 정의되지 않은 값을 허용하는 데 매우 관대했기 때문에 새로운 구현으로 프로젝트에서 일부 버그를 발견할 수 있습니다.

모터는 ES2019 사양을 준수합니다. 성능 면에서 기존 제품보다 훨씬 뛰어납니다(XS는 35%, DukTape는 XNUMX배 이상, JerryScript는 XNUMX배, MuJS는 XNUMX배). 빌드 스크립트 개발 관점에서 새 엔진으로 전환해도 눈에 띄는 변화가 있어서는 안 됩니다.

성능도 거의 동일하게 유지됩니다. 차이점 중 새 엔진에는 null 값 사용에 대한 더 엄격한 요구 사항이 있으며, 이는 QtScript를 사용할 때 발견되지 않은 기존 프로젝트의 문제를 드러낼 수 있습니다.

이 외에도 다음과 같이 언급됩니다. qmake 프로젝트 파일을 제거하여 유지 관리 작업 감소 개발자를 위해.

마지막으로 버전 2.1에서는 개발자가 일반적인 성능 향상뿐만 아니라 몇 가지 새로운 기능을 갖게 될 것이라고 추정하는 코드를 다시 작성할 것이라고 언급됩니다.

더 자세히 알고 싶으시면 자세한 내용을 참조하십시오 다음 링크에서.


Google에서 선호하는 검색 엔진으로 추가