KDevelop5/Підручник/Сеанси і проекти

    From KDE UserBase Wiki
    Revision as of 14:05, 9 September 2017 by Claus chr (talk | contribs) (Importing a new version from external source)

    Сеанси і проекти: основи KDevelop

    У цьому розділі ми оглянемо деякі питання щодо термінології, використаної у KDevelop, та структури роботи у середовищі. Зокрема, ми поговоримо про поняття сеанси і проекти та пояснимо, як налаштовувати проекти, над якими ви маєте намір працювати у KDevelop.

    Термінологія

    У KDevelop використано поняття сеанси та проекти. У сеансі містяться всі проекти, чимось пов’язані між собою. У наведених нижче прикладах ми припускаємо, що ви є розробником одночасно бібліотеки та програми, яка використовує цю бібліотеку. Прикладом подібної схеми розробки є бібліотеки KDE (бібліотека) і саме середовище KDevelop (програма). Інший приклад: ви є розробником ядра Linux і одночасно працюєте над драйвером пристрою для Linux, який ще не включено до ядра.

    У останньому прикладі у нас був би сеанс KDevelop з двома проектами: ядром Linux і драйвером пристрою. Варто згрупувати ці проекти у одному сеансі (замість двох сеансів для кожного окремого проекту), оскільки корисно бачити функції та структури даних ядра у KDevelop, коли ви пишете код драйвера: ви, наприклад, зможете скористатися автодоповненням назв функцій та змінних ядра або переглянути документацію з функції ядра під час розробки драйвера пристрою.

    Припустімо тепер, що ви є одним з розробників KDE. Тоді у вас буде інший сеанс, який міститиме проект KDE. Звичайно, ви можете створити єдиний сеанс для всіх ваших проектів, але для цього немає ніяких причин: для вашої роботи у KDE вам не потрібен доступ до функцій ядра або драйверів пристроїв, вам не потрібне автоматичне доповнення назв класів KDE під час роботи над ядром Linux. Нарешті, збирання бібліотек KDE не пов’язане зі збиранням ядра Linux (з іншого боку збирання драйвера пристрою часто пов’язане зі збиранням ядра Linux, якщо було внесено зміни до файлів заголовків ядра).

    Нарешті, ще одним з випадків використання сеансів є одночасна робота над експериментальною версією проекту та його стабільною версією: у цьому випадку небажаним буде конфлікт між класами, які належать різним гілкам проекту у KDevelop. Отже, варто створити два сеанси з однаковим набором проектів, але різними каталогами зберігання (відповідно до гілок розробки).

    Налаштування сеансу та імпортування вже створеного проекту

    Зупинимося на прикладі з ядром Linux і драйвером пристрою. Вам слід буде замінити назви бібліотек та проектів вашими назвами бібліотек і проектів, щоб реалізувати наші приклади у вашій системі. Щоб створити сеанс, який міститиме два наших проекти, скористаємося пунктом меню Сеанс -> Почати новий сеанс, розташованим вгорі ліворуч (або якщо ви вперше запустили KDevelop, просто скористайтеся типовим сеансом, його буде відкрито порожнім).
    Далі нам потрібно заповнити сеанс проектами, які у нашому прикладі будуть вже створеними раніше проектами (створення проектів «з нуля» обговорено у іншому розділі цього підручника). Виконати заповнення можна у два способи. Один з них можна застосувати до проектів, дані яких вже зберігаються на жорсткому диску вашого комп’ютера. Іншим можна скористатися для отримання даних проекту з сервера.

    1. Імпортування даних проекту з сервера системи керування версіями

    Припустімо, що дані потрібного нам проекту, — скажімо, ядра Linux, — зберігаються у якійсь системі керування версіями, але у вас ще немає копії сховища коду на жорсткому диску комп’ютера. У такому разі, відкрийте меню Проект для створення проекту ядра Linux у межах поточного сеансу і виконайте такі дії:

    • Скористайтеся пунктом меню Проекти -> Звантажити проект для імпортування даних проекту.
    • Середовище запропонує вам розпочати новий проект у межах поточного сеансу, залежно від походження коду: ви можете просто вказати KDevelop вже створений каталог з кодом, ви також можете наказати KDevelop отримати код зі сховища коду. Припускаємо, що у вас ще немає копії коду зі сховища системи керування версіями.

    Вам слід виконати такі дії:

      • У діалоговому вікні під написом Вибір джерела виберіть Subversion, Git або один з інших варіантів.
      • Виберіть робочий каталог призначення, до якого слід звантажити код проекту.
      • Виберіть адресу розташування сховища з кодом проекту.
      • Натисніть кнопку Отримати. Отримання кодів може бути доволі тривалою справою. Тривалість виконання цієї дії залежить від ширини каналу вашого з’єднання з інтернетом та розміру проекту. На жаль, у KDevelop 4.2.x панель поступу не є надто інформативною, але ви можете спостерігати за поступом з командного рядка за допомогою команди
        du -sk /шлях/до/проекту/KDevelop
        (буде показано об’єм отриманих даних).

    Зауваження

    Розробникам відомо про проблему зі смужкою поступу: KDevelop, вада 256832.


    Зауваження

    Під час оброби ви можете побачити повідомлення щодо помилки: «Вам слід вказати коректне розташування проекту». Можете не зважати на це повідомлення.


    • Середовище попросить вас вибрати файл проекту KDevelop у каталозі з кодом. Оскільки такого файла, ймовірно, у вас ще немає, просто натисніть кнопку Далі.
    • Ще раз натисніть кнопку Далі.
    • KDevelop попросить вас визначитися зі способом керування проектом. Якщо у проекті використано стандартні файли make Unix, виберіть нетиповий спосіб керування проектом за допомогою файла makefile.
    • KDevelop виконає обробку даних проекту. Знову ж таки, ця дія може бути доволі тривалою, оскільки доведеться виконати обробку всіх файлів, створити покажчик класів тощо. У нижній правій частині основного вікна буде показано панель поступу з даними щодо поступу виконання обробки. (Якщо у вашого процесора декілька ядер, ви можете пришвидшити процедуру: скористайтеся пунктом меню Параметри -> Налаштувати KDevelop, виберіть пункт Інструмент фонової обробки на панелі ліворуч і збільшіть кількість потоків обробки у полі праворуч.)

    2. Імпортування проекту, дані якого вже зберігаються на жорсткому диску вашого комп’ютера

    Якщо ж проект, над яким ви бажаєте працювати, вже зберігається на жорсткому диску вашого комп’ютера (наприклад, ви отримали дані проекту у архіві з сервера FTP, скопіювали зі сховища керування версіями проекту або ви працюєте над власним проектом, дані якого зберігаються лише на жорсткому диску вашого комп’ютера), скористайтеся пунктом меню Проекти -> Відкрити/Імпортувати проект і у діалоговому вікні вкажіть каталог, у якому зберігаються дані вашого проекту.

    Налаштування програми як другого проекту

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

    Якщо ви розробляєте одночасно декілька програм або бібліотек, просто повторіть вказані вище кроки для додавання цих проектів до вашого сеансу.

    Створення проектів «з нуля»

    Звичайно ж, ви можете скористатися новим проектом. Створити новий проект можна за допомогою пункту меню Проекти -> Створити за шаблоном, який відкриває діалогове вікно вибору шаблона. Деякі з шаблонів встановлюються з основним пакунком KDevelop, інші ж можна встановити разом з програмою KAppTemplate. Виберіть у діалоговому вікні тип проекту і мову програмування, вкажіть назву і розташування вашого проекту і натисніть кнопку Далі.

    За допомогою другої сторінки діалогового вікна ви можете налаштувати систему керування версіями. Виберіть бажану для вас систему і заповніть відповідні поля параметрів. Якщо ви не хочете користуватися системою керування версіями або хочете визначити її параметри пізніше, виберіть пункт Немає. Щойно визначення відповідних параметрів буде завершено, можете натиснути кнопку Завершити.

    Тепер ваш проект створено, ви можете спробувати зібрати і встановити його. У деяких шаблонах передбачено коментарі у коді або навіть окремий файл README. Рекомендуємо ознайомитися зі вмістом такого файла до того, як буде розпочато подальшу розробку. Після ознайомлення з усіма довідковими матеріалами можна розпочати роботу над проектом і додавання потрібних вам можливостей.