Войти  |  Регистрация
Авторизация

Qt Creator



Qt Creator (ранее известная под кодовым названием Greenhouse) — кроссплатформенная свободная IDE для разработки на С, С++ и QML. Разработана Trolltech (Digia) для работы с фреймворком Qt. Включает в себя графический интерфейс отладчика и визуальные средства разработки интерфейса как с использованием QtWidgets, так и QML. Поддерживаемые компиляторы: GCC, Clang, MinGW, MSVC, Linux ICC, GCCE, RVCT, WINSCW.

Особенности

Основная задача Qt Creator — упростить разработку приложения с помощью фреймворка Qt на разных платформах. Поэтому среди возможностей, присущих любой среде разработки, есть и специфичные, такие как отладка приложений на QML и отображение в отладчике данных из контейнеров Qt, встроенный дизайнер интерфейсов: как на QML, так и на QtWidgets.

Работа с проектами

Qt Creator поддерживает системы сборки qmake, cmake, autotools, с версии 2.7 qbs. Для проектов, созданных под другими системами, может использоваться в качестве редактора исходных кодов. Есть возможность редактирования этапов сборки проекта.

Также IDE нативно поддерживает системы контроля версии, такие как Subversion, Mercurial, Git, CVS, Bazaar, Perforce. Начиная с версии 2.5, в поле комментария к правке поддерживается автодополнение.

Редактирование кода

В Qt Сreator реализовано автодополнение, в том числе ключевых слов, введённых в стандарте C++11 (начиная с версии 2.5), подсветка кода (её определение аналогично таковому в Kate, что позволяет создавать свои виды подсветок или использовать уже готовые). Также, начиная с версии 2.4, есть возможность задания стиля выравнивания, отступов и постановки скобок.

Реализован ряд возможностей при работе с сигнатурами методов, а именно:

  • автогенерация пустого тела метода после его обновления;
  • возможность автоматически изменить сигнатуру метода в определении, если она была изменена в объявлении и наоборот;
  • возможность автоматически поменять порядок следования аргументов.

При навигации по коду доступно переключение между определением и объявлением метода, переход к объявлению метода, переименование метода как в отдельном проекте, так и во всех открытых. Также есть возможность вызвать справку согласно текущему контексту.

Отладка кода

Среда разработки имеет графический интерфейс для следующих отладчиков: GDB, CDB и QML/JavaScript. В качестве отдельной опции реализовано отображение содержимого контейнеров, таких как QString, std::map и прочих. Поддерживаются следующие режимы отладки:

  • простой для отладки локально запущенных приложений, таких как GUI приложения на Qt;
  • терминал для отладки локально запущенных процессов, которым требуется консоль, обычно это приложения без GUI;
  • подключённый для отладки локальных процессов, запущенных вне Qt Creator;
  • удалённый для отладки запущенных на другой машине процессов (используя gdbserver);
  • ядро для отладки завершившихся аварийно процессов на Unix;
  • Post-mortem для отладки завершившихся аварийно процессов на Windows;
  • TRK для отладки процессов, запущенных на устройстве Symbian.

Точки остановки можно задать различными способами, а именно:

  • останавливаться на заданной строчке заданного файла;
  • останавливаться при вызове функции с определенным именем;
  • останавливаться при обращении к данным по заданному адресу;
  • останавливаться при поимке исключения;
  • останавливаться при запуске или создании нового процесса;
  • останавливаться при выполнении системного вызова;
  • останавливаться при изменении в данных с адресами, заданными выражением.

Архитектура

Функция main по сути своей — вызов загрузчика плагинов, которые и реализуют всю функциональность. Поэтому все компоненты QtCreator так или иначе связаны с плагинами.

ExtensionSystem представляет интерфейс для разработки плагинов, обеспечивает загрузку плагинов и базовое взаимодействие. Содержит в себе класс-интерфейс IPlugin, от которого должны наследоваться все плагины в программе.

Aggregation содержит функции и классы, предназначенные для объединения нескольких компонентов в единое целое.

Utils — библиотека утилит, которые могут вызывать плагины.

QmlJS — библиотека для поддержки QML и JavaScript.


Добавить комментарий
Ваше Имя:
Ваш E-Mail:
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent