Наша совместная команда Banwar.org

Связаться с нами

  • (097) ?601-88-87
    (067) ?493-44-27
    (096) ?830-00-01

Статьи

Інструменти ОС Linux для розробників додатків для ОС Windows. Частина 9. Інтегровані середовища розробки

  1. Інтегровані середовища розробки
  2. Малюнок 1. Створення нового проекту в KDE
  3. Середовища розробки, засновані на платформі Java
  4. Малюнок 3. Проект, відкритий в Eclipse IDE
  5. Малюнок 4. Приклад проекту, відкритого в Solaris Studio
  6. Малюнок 5. Вікно для вибору компіляторів в Solaris Studio
  7. Малюнок 6. Проект в IntelliJ IDEA
  8. Альтернативні середовища розробки
  9. Малюнок 8. Вибір компілятора в Code :: Blocks IDE
  10. Малюнок 9. Типи проектів, доступні в Code :: Blocks IDE
  11. Малюнок 10. Середовище розробки Geany
  12. Малюнок 11. Створення GUI-додатки в Glade
  13. Що залишилося за кадром
  14. висновок
  15. Ресурси для скачування

Інтегровані середовища розробки (IDE - Integrated Development Environment) не належать до обов'язкових компонентів процесу розробки ПО, і це твердження особливо застосовно до програмування на платформі Unix / Linux. В Unix для розробки програм традиційно вважається достатнім наявність лише текстового редактора, правда володіє додатковими можливостями, такими як колірна розмітка тексту, функції контекстного пошуку і заміни. У Linux існує велика кількість редакторів, які відповідають таким вимогам, починаючи з традиційних vim і Emacs, або простого редагування файлів в mc. І як показує досвід, цих коштів цілком достатньо для розробки проектів невеликого і середнього масштабу.

Але використання IDE часто дозволяє більш ефективно організувати процес розробки ПО та без невиправданих затримок цикл: редагування коду - збірка проекту - налагодження програми. Також роль IDE зростає при розробці GUI-додатків, так як більшість IDE пропонують у своєму складі візуальні побудовники (Візард) графічного інтерфейсу користувача.

Інтегровані середовища розробки

Для ОС Linux є безліч різних IDE, і їх уже настільки багато, що докладний опис стає безглуздим, так як вибір і використання конкретної середовища розробки визначається, значною мірою, суб'єктивними уподобаннями або звичками. Нижче перераховані тільки найбільш широко використовувані IDE з прикладами графічного інтерфейсу, щоб можна було зробити хоча б попередні висновки.

Kdevelop IDE - це середовище розробки проекту KDE, яка активно розвивається з 1998 р. Крім проектів на мові C в ній можна створювати проекти практично на всіх мовах, які використовуються в Linux, C ++, Perl, Python, PHP, Java, Fuby, Ada, Bash, Pascal, Fortran. Крім того середовище дозволяє інтегрувати (технологія KParts) в себе різні текстові редактори, але головним редактором є Kate.

Середа Kdevelop не є мульти-платформної, на відміну від багатьох інших IDE, і може використовуватися тільки на платформі Linux (але незалежно від використовуваного робочого оточення: KDE, GNOME, MATE і інші). Також вона може генерувати початкові скелети додатків. Відмінною особливістю Kdevelop (і великою перевагою для окремих сценаріїв) є те, що серед таких шаблонів є і проект модуля ядра (драйвера) Linux, як показано на малюнку 1. На малюнку 2 наведено типовий вигляд проекту, відкритого в KDE.

Малюнок 1. Створення нового проекту в KDE
Інтегровані середовища розробки (IDE - Integrated Development Environment) не належать до обов'язкових компонентів процесу розробки ПО, і це твердження особливо застосовно до програмування на платформі Unix / Linux
Малюнок 2. Проект, відкритий в середовищі KDE

Проекти, створені в Kdevelop, виходять досить громіздкими, як можна помітити по каталогу Kdevelop в архіві прикладів (в розділі "Матеріали для скачування"). Але це, загалом, властиво всім IDE. Ось скільки місця займає найпростіший проект після очищення від генерованих виконуваних файлів:

$ Make clean ... $ du -hs 248K.

Середовища розробки, засновані на платформі Java

Eclipse IDE (Eclipse Integrated Development Environment) - одна з найбільш популярних середовищ розробки, що з'явилася на початку 2000-х років як закритий проект IBM, а потім перетворена у відкритий проект. Відмінною особливістю Eclipse є можливість удосконалення за рахунок динамічних плагінів (які можуть створювати і рядові користувачі), так існують плагіни для підтримки десятків мов програмування, серед яких: Java, C / C ++, PHP, Python і інші, і число доступних плагінів постійно збільшується.

Це середовище розробки представлена ​​практично на всіх операційних системах, за рахунок того, що сама вона повністю реалізована на платформі Java. Але Eclipse IDE є мульти-платформної середовищем не тільки в плані підтримки безлічі операційних систем, але і безлічі апаратних платформ, відмінних від x86, для яких може вестися розробка ПО: ARM, MIPS, PPS і навіть мікроконтролери, наприклад, AVR. Крім засобів розробки, для Eclipse IDE доступні плагіни для програмної емуляції інших апаратних платформ (наприклад, Android ARM) з підтримкою налагодження. На основі Eclipse IDE сторонніми розробниками вже було створено багато інших IDE (клонів), призначених для вузькоспеціалізованих областей, що може створити складнощі у виборі конкретної модифікації IDE.

Eclipse IDE представлена ​​в репозитариях практично будь-якого дистрибутива Linux, звідки її можна встановити. Але проект постійно розвивається, тому має сенс встановити найбільш свіжу реалізацію IDE прямо з сайту проекту.

На малюнку 3 показаний найпростіший проект для розробки під архітектуру ARM7, відкритий в Eclipse IDE.

Малюнок 3. Проект, відкритий в Eclipse IDE

середа Oracle Solaris Studio (Колишній проект Sun Solaris Studio) - це один з найстаріших проектів, споконвічно орієнтований на операційну систему Solaris, але існує і альтернативна реалізація для ОС Linux. Компілятор в складі Solaris Studio (сс) володіє спеціальними повноваженнями щодо оптимізації і нерідко може генерувати більш ефективний і швидкодіючий код, ніж компілятор gcc. Але середовище може бути налаштована і на використання компілятора gcc. Це середовище в основному орієнтована на роботу з мовами програмування: C, C ++ і Fortran, а з додатковими плагінами від сторонніх виробників, які можна встановити безпосередньо з Solaris Studio, можна працювати і іншими мовами: Java, PHP, Python, Ruby, Ada. Правда для підтримки додаткових мов може знадобитися встановити Oracle JDK (замість або на додаток до OpenJDK, встановленого в Linux дистрибутивах за замовчуванням).

Малюнок 4. Приклад проекту, відкритого в Solaris Studio

Середа Solaris Studio заснована на інший IDE - NetBeans IDE, реалізованої також на платформі Java, і має багаті налаштування, що дозволяють, в тому числі, вибрати використовувані компілятори, як показано на малюнку 5.

Малюнок 5. Вікно для вибору компіляторів в Solaris Studio

На жаль, середа Solaris Studio не представлена ​​в репозитариях дистрибутивів Linux, і повинна встановлюватися з інсталяційних файлів зі сторінки проекту на сайті Oracle, крім того для установки використовуються готові бінарні пакети, а не вихідний код.

проект IntelliJ IDEA IDE активно розвивається з 2000 року і в основному орієнтований на мову Java, але також пропонує розвинені інструменти розробки і налагодження для Android на базі ефективного емулятора Android, заснованого на віртуальній машині QEMU. Для IntelliJ IDEA існують дві реалізації IDE: вільна з обмеженою функціональністю (загальнодоступна) і професійна (пропріетарна).

На малюнках 6 і 7 представлений IntelliJ IDEA проект для Android (каталог IDEA в архіві в розділі "Матеріали для скачування") і емулятор Android для налагодження цієї програми:

Малюнок 6. Проект в IntelliJ IDEA
Малюнок 7. Емулятор Android в IntelliJ IDEA

При спробі запустити IntelliJ IDEA з консолі Linux можна побачити попередження:

$ ./Idea.sh OpenJDK Runtime Environment (IcedTea6 1.8.3) (fedora-43.1.8.3.fc12-i386) OpenJDK Server VM (build 14.0-b16, mixed mode) WARNING: You are launching IDE using OpenJDK Java runtime .. . NOTE: If you have both Sun JDK and OpenJDK installed please validate either IDEA_JDK or JDK_HOME environment variable points to valid Sun JDK installation

Це попередження в рівній мірі відноситься до всіх IDE, реалізованим на мові Java, а, як уже говорилося, все найбільш розвинені IDE реалізовані саме на Java. Для всіх цих середовищ кращим буде використання оригінального Sun JDK, а не OpenJDK. Пакет Sun JDK можна завантажити і встановити з сайту Oracle, і це слід зробити, так як середовища, реалізовані на платформі Java, можуть більш ефективно взаємодіяти саме з Sun JDK.

Альтернативні середовища розробки

Code :: Blocks IDE - це вільна мульти-платформна середовище розробки, написана на С ++ з використанням переносної графічної бібліотеки wxWidgets . Ця IDE підтримує мови програмування С і С ++ з можливістю розробки для різних операційних систем (Windows, Linux, Mac OS X). Також середу можна адаптувати практично для будь-якої UNIX-системи, наприклад FreeBSD. Середа Code :: Blocks забезпечує мульти-платформену розробку для кількох процесорних архітектур (ARM, AVR) і багатьох графічних оточень (GTK +, Qt, wxWidgets, GLUT і т.д.), тому може виявитися особливо зручною для проектування GUI додатків. Це середовище, також як і Solaris Studio, допускає використання різних компіляторів С / С ++ з числа встановлених в системі:

Малюнок 8. Вибір компілятора в Code :: Blocks IDE

Крім того, Code :: Blocks пропонує багатий набір шаблонів для створюваних додатків (різні платформи, різні графічні бібліотеки), і проекти, створені в Code :: Blocks IDE, виходять дуже компактними, на відміну від багатьох інших IDE.

Малюнок 9. Типи проектів, доступні в Code :: Blocks IDE

Geany - мульти-платформна популярна середовище розробки з низьким порогом входження. По суті, Geany - це не повноцінна середовище розробки, а високо-функціональний текстовий редактор з колірною розміткою, вбудованими можливостями для роботи з gcc, make і т.д. Завдяки цьому Geany можна використовувати при розробці програм більш ніж на 40 мовах програмування, серед яких: C / C ++, Java, JavaScript, Tcl, PHP, Python, XML / HTML та інші. З цієї ж причини Geany працює не зі спеціальними проектами, а безпосередньо з файлами вихідного коду, що збираються традиційної утилітою make. На малюнку 10 показано відкрите в цьому середовищі додаток з попередніх статей, в якому видно і запущений у вікні терміналу Geany менеджер mc (відсутність специфічних можливостей IDE і визначає гнучкість і універсалізм Geany):

Малюнок 10. Середовище розробки Geany

Glade IDE також не є середовищем розробки в тому сенсі, як описані раніше. Це вільна система для візуального проектування графічних інтерфейсів (GUI), яка може використовуватися для створення шаблонів практично для будь-якої графічної бібліотеки (саме середовище Glade написана на GTK +). На малюнку 11 представлений робочий інтерфейс Glade в процесі створення програми, а сам код прикладу можна знайти в каталозі glade архіву в розділі "Матеріали для скачування".

Малюнок 11. Створення GUI-додатки в Glade

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

CCOPT = `wx-config --cxxflags` LDOPT =` wx-config --libs` app: app.cpp g ++ $ (CCOPT) $ (LDOPT) $ <-o $ @

Тепер можна відкрити отриманий проект в інший IDE (або просто текстовий редактор) і продовжити його розробку. Завдяки подібному підходу усувається необхідність в складних IDE, які можуть підтримувати і візуальне проектування GUI і редагування програмного коду.

Що залишилося за кадром

Ми перерахували далеко не всі IDE, активно застосовуються при розробці ПЗ на платформі в Linux. Варто також згадати такі середовища розробки:

  • Anjuta - офіційна інтегроване середовище розробки проекту GNOME, для розробки на мовах: C, C ++, Vala, Java, JavaScript, Python. Особливо добре підходить для розробки GUI додатків.
  • QDevelop в зв'язці з QtDesigner або Qt Creator - являє собою потужний комплекс для створення графічних додатків, які базуються на бібліотеці Qt. Qdevelop є полегшену версію Kdevelop, хоча і побудований на абсолютно відмінному коді.
  • HaiQ - ще одна мульти-платформна IDE, орієнтована на розробку з використанням бібліотеки Qt.

Існує таке визначення, що «UNIX - це операційна система, яку писали програмісти для програмістів». Це ж правило можна застосувати і до Linux. У даній системі представлені практично всі існуючі мови програмування і інструменти для розробки. Якщо підтримка необхідного мови або середовища розробки відсутня в репозитарії вашого дистрибутива, то напевно його можна знайти на сайтах сторонніх розробників.

висновок

Представлений короткий огляд не може і не повинен розглядатися як порівняння всіх доступних в Linux засобів розробки. Варто відзначити, що на платформі Linux є набагато більше різноманітних засобів розробки, ніж, наприклад, в ОС Windows, але саме ця різноманітність і створює деяку розгубленість у виборі оптимальних інструментів під конкретний програмний проект. Протягом якогось певного порівняння інструментів для розробки ПЗ можна знайти в Wikipedia на даній сторінці .

Але після успішного завершення процесу розробки ПО, необхідно доставити готове створене рішення користувачам і встановити його на їх станціях ... І наступна стаття буде присвячена розгляду саме цих питань.

Ресурси для скачування

Схожі теми

Підпишіть мене на повідомлення до коментарів

Новости

Banwar.org
Наша совместная команда Banwar.org. Сайт казино "Пари Матч" теперь доступен для всех желающих, жаждущих волнения и азартных приключений.

Фольгированные шары с гелием
Для начала давайте разберемся и чего же выполнен фольгированный шар и почему он летает дольше?! Как вы помните, наши латексные шарики достаточно пористые, поэтому их приходится обрабатывать специальным