Розробка/Інструменти

From KDE TechBase
This page is a translated version of the page Development/Tools and the translation is 100% complete.
Other languages:

Спільнота 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, будь ласка, ознайомтеся із настановами спільноти щодо інтернаціоналізації.

Допоміжні інструменти

Нижче наведено деякі з інструментів командного рядка, які можуть допомогти розробникам у виконанні щоденних завдань.

kf5-config
Надає дані щодо встановлених бібліотек і програм KDE, зокрема щодо шляхів та префіксів.
kioclient5
Виконує прозорі щодо мережі операції (за допомогою бібліотеки KIO) у командному рядку, зокрема копіювання або навіть отримання файлів.
kconf_update
Автоматизує оновлення файлів налаштувань.
kapidox
Створює документацію щодо програмного інтерфейсу для коду із коментарями Doxygen.

Забезпечення якості

Учасники команди KDE та сторонні розробники, зацікавлені у спостереженні за розробкою програмного забезпечення спільноти, можуть стежити за цим за допомогою наведених нижче посилань на сайти та інструменти.

Керування проєктами
У KDE для керування проєктами використовується Phabricator. Зараз виконується перехід на Gitlab.
Неперервне збирання
Для забезпечення високої якості програмне забезпечення KDE використовує систему неперервної інтеграції на основі Jenkins.
Статичний аналіз
KDE використовує інструмент для автоматичного статичного аналізу English Breakfast Network