ИзданиС Π·Π° Ρ€Π°Π·Π²ΠΎΡ˜Π½ΠΎ ΠΎΠΏΠΊΡ€ΡƒΠΆΡƒΠ²Π°ΡšΠ΅ Π½Π° Qt Creator 10

ОбјавСно Π΅ ΠΎΠ±Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½ΠΎΡ‚ΠΎ Ρ€Π°Π·Π²ΠΎΡ˜Π½ΠΎ ΠΎΠΏΠΊΡ€ΡƒΠΆΡƒΠ²Π°ΡšΠ΅ Qt Creator 10.0, Π΄ΠΈΠ·Π°Ρ˜Π½ΠΈΡ€Π°Π½ΠΎ Π·Π° ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ“Ρƒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ ја Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Qt. ΠŸΠΎΠ΄Π΄Ρ€ΠΆΡƒΠ²Π° ΠΈ Ρ€Π°Π·Π²ΠΎΡ˜ Π½Π° класични ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π²ΠΎ C++ ΠΈ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ QML, Π²ΠΎ кој JavaScript сС користи Π·Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°ΡšΠ΅ Π½Π° скрипти, Π° структурата ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΎΡ‚ сС спСцифицирани со Π±Π»ΠΎΠΊΠΎΠ²ΠΈ слични Π½Π° CSS. Π‘ΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ сС Π³ΠΎΡ‚ΠΎΠ²ΠΈ склопови Π·Π° Linux, Windows ΠΈ MacOS.

Π’ΠΎ Π½ΠΎΠ²Π°Ρ‚Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°:

  • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ пСрСмСщСния ΠΈ скрытия Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ ΠΎ прогрСссС выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.
  • Π’ поисковой строкС (Locator) Ρ€Π΅ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ послСднСй Π²Π²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ поисковой Ρ„Ρ€Π°Π·Ρ‹ ΠΏΡ€ΠΈ использовании Ρ€Π΅ΠΆΠΈΠΌΠ° открытия Π² Π²Ρ‹Ρ€Π°Π²Π½Π΅Π½Π½ΠΎΠΌ ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΎΠΊΠ½Π΅.
  • ΠŸΠΎΡΡ‚Π°Π²Π»ΡΠ΅ΠΌΠ°Ρ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ… вСрсия LLVM ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° Π΄ΠΎ выпуска 16 с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ стандарта C++ 20 Π² Clang ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½Ρ‹ΠΌ взаимодСйствиСм ΠΌΠ΅ΠΆΠ΄Ρƒ Qt Creator ΠΈ Clangd. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ ΠΏΠ»Π°Π³ΠΈΠ½ ClangFormat, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выравнивания ΠΊΠΎΠ΄Π° Π½Π° языкС C++.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ автоматичСского измСнСния ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² (Ρ‡Π΅Ρ€Π΅Π· include) ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ссылок Π² Ρ„Π°ΠΉΠ»Π°Ρ… C++, послС ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ² Β«.uiΒ» ΠΈΠ»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Π² Π½ΠΈΡ… Ρ„ΠΎΡ€ΠΌ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ инструмСнт (Tools > C++ > Find Unused Functions) для поиска Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ просмотра ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² (Call Hierarchy), доступный для всСх языков, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ сСрвСры LSP (Language Server Protocol).
  • МодСль ΠΊΠΎΠ΄Π° QML ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Qt 6.5. Π’ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΊΠΎΠ΄Π° появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ прСдпросмотра свойств Ρ†Π²Π΅Ρ‚Π° Π² Π²ΠΈΠ΄Π΅ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° опрСдСлСния внСшнСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для форматирования Ρ„Π°ΠΉΠ»ΠΎΠ² с QML, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π²Ρ‹Π·ΠΎΠ²Π° qmlformat вмСсто встроСнной Π»ΠΎΠ³ΠΈΠΊΠΈ форматирования.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ тСстирования QML Language Server (Qt Quick > QML/JS Editing > Use qmlls now) ΠΏΡ€ΠΈ установкС Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Qt Language Server ΠΈΠ· установщика Qt.
  • Π”ΠΎ 5 вСрсии ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° прСднастроСк (cmake-presets) сборочной систСмы CMake, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ появилась ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ${pathListSep}, ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Β«includeΒ» ΠΈ внСшнСй стратСгии для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ инструмСнтария.
  • Π’ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка (CMake > Formatter) для указания ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ форматирования связанных с CMake Ρ„Π°ΠΉΠ»ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ cmake-format.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ этап установки, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ Β«cmake β€”installΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Β«Projects > Run Settings > Add Deploy StepΒ».
  • ΠŸΡ€ΠΈ сборкС Π² Docker Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ процСсс Clangd. Π’ ΠΏΠ»Π°Π³ΠΈΠ½ ClangFormat Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с внСшними Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½Π½Ρ‹ΠΌΠΈ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ Docker.
  • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… систСм, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° для сборки. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° открытия Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ систСмС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ дСйствиС Open Terminal, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ Π² настройках сборочного окруТСния.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€