Розробка/Інструменти
Спільнота KDE створює бібліотеки та інструменти для розробки програмного забезпечення, але, окрім вимог щодо Qt і CMake, не ніяк не обмежує бібліотеки. Нижче наведено зразковий список інструментів, якими ви можете скористатися для розробки програмного забезпечення, яке використовує програмні інтерфейси KDE, або самі програми KDE.
Основні інструменти
Це інструменти, без яких не обійтися для збирання та розробки програмного забезпечення KDE. У Linux, типово, їхнє встановлення забезпечується пакунками з вашого дистрибутива. На інших платформах, зазвичай, такі пакунки теж можна встановити, часто отримати з домашньої сторінки інструмента. Звичайно, вам також знадобляться стандартні інструменти для розробки, зокрема компілятор C/C++ і якийсь текстовий редактор.
- CMake
- CMake є вибраною KDE системою збирання. Після встановлення CMake ви можете скористатися ним для налаштовування збирання проєкту до збирання. У процесі програма повідомить вам про нестачу будь-яких інших залежностей. Зауваження: KDE Frameworks також можна використовувати у заснованих на QMake проєктах.
- Git
- Розробка проєктів KDE виконується у Git. Отже, вам знадобиться ця система для отримання останніх версій початкового коду для розробки. Крім того, KDE надає архіви з початковим кодом найсвіжіших випусків. Ви також можете знайти відповідні адреси Git у навігаторі сховищ Git KDE.
- Subversion
- У деяких проєктах KDE все ще використовується для різних речей Subversion, зокрема перекладів. Стороннім розробникам, зазвичай, ця система керування версій не потрібна, але на наявність цієї системи слід зважати розробникам основної гілки.
Середовища і редактори для розробки
- Qt Creator
- Розробники програм Qt, найімовірніше, вже використовують як інтегровану систему розробки Qt Creator. Доброю новиною є те, що для використання KDE Frameworks переходу на іншу систему розробки не потрібно. Просто додайте відповідний модуль до файла проєкту QMake, як вказано у документації до програмного інтерфейсу, і все.
- KDevelop
- KDevelop потужне інтегроване середовище розробки для програм KDE і Qt C++. На відміну від Qt Creator, втім, це середовище не обмежено однією бібліотекою — передбачено підтримку інших мов, бібліотек та інструментів.
- Kate
- Хоча це не зовсім комплексне середовище розробки, основний текстовий редактор KDE має можливості та додатки, які спрощують процедуру розробки програмного забезпечення — від підсвічування синтаксичних конструкцій та згортання коду до керування проєктами та вбудованого емулятора термінала.
Діагностика і аналіз
Існує широкий спектр інструментів, особливо у Linux, які призначено для аналізу коду та профілювання програм. Нижче наведено список деяких популярних інструментів.
- Valgrind
- Valgrind допомагає виявляти витоки пам'яті та неініціалізовані блоки пам'яті. Серед додаткових можливостей — засіб профілювання. Valgrind є одним із найважливіших інструментів розробника!
- GNU Project Debugger (GDB)
- GDB допомагає у діагностиці початкового коду. Вам варто звернути на оболонки з графічним інтерфейсом до цієї програми, зокрема на два наступних інструменти.
- KDbg і DDD
- KDbg і DDD є графічними інтерфейсами користувача до GDB, які можуть встановлювати точки зупинки, виконувати покрокове виконання коду тощо.
Підказки щодо аналізу і профілювання програмного забезпечення KDE можна знайти на сторінці діагностики вікі спільноти KDE.
Переклад
У більшості проєктів Qt використовується вбудована система перекладу бібліотек. Щодо проєктів KDE, будь ласка, ознайомтеся із настановами спільноти щодо інтернаціоналізації.
Допоміжні інструменти
Нижче наведено деякі з інструментів командного рядка, які можуть допомогти розробникам у виконанні щоденних завдань.
- Provides information related to the installation of KDE libraries and applications, particularly paths and prefixes.
- Performs network-transparent operations (via the KIO framework) on the command line, like copying or even downloading files.
- Автоматизує оновлення файлів налаштувань.
- Створює документацію щодо програмного інтерфейсу для коду із коментарями Doxygen.
Забезпечення якості
KDE contributors and third-party developers interested in monitoring the community's software development activities can take a peek via the sites and tools below.
- Керування проєктами
- KDE currently uses Phabricator for project management but is also moving to a Gitlab instance.
- Неперервне збирання
- To ensure high-quality, KDE software operates a continuous integration system powered by Jenkins.
- Статичний аналіз
- KDE uses an automated static analysis tool hosted on the English Breakfast Network