One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse
In this paper considered the problem of heterogeneous environments interconnection for developing a programs to provide further joint integration of the programs whereas their building conditions in different environments. Considered both Visual Studio .Net and Eclipse. Shown the approaches to trans...
Saved in:
| Date: | 2025 |
|---|---|
| Main Author: | |
| Format: | Article |
| Language: | Ukrainian |
| Published: |
PROBLEMS IN PROGRAMMING
2025
|
| Subjects: | |
| Online Access: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/807 |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Journal Title: | Problems in programming |
| Download file: | |
Institution
Problems in programming| id |
pp_isofts_kiev_ua-article-807 |
|---|---|
| record_format |
ojs |
| resource_txt_mv |
ppisoftskievua/4e/87051b09e2f27a11c02d5f00bad1914e.pdf |
| spelling |
pp_isofts_kiev_ua-article-8072025-08-28T20:52:26Z One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse Один з підходів до взаємодії середовищ VISUAL STUDIO i ECLIPSE Radetskyi, I.O. UDC 681.3.06 УДК 681.3.06 In this paper considered the problem of heterogeneous environments interconnection for developing a programs to provide further joint integration of the programs whereas their building conditions in different environments. Considered both Visual Studio .Net and Eclipse. Shown the approaches to transfer program projects created with one of named environmentsto other one provided their interaction by interconnecting and deployment for getting final results.Prombles in programming 2011; 2: 43-49 Розглядається проблема взаємодії різнорідних середовищ з розробки в них програм для забезпечення подальшої сумісної інтеграції цих програми з урахуванням умов їх побудови в різних середовищах. Розглянуті два середовища розробки: Visual Studio .Net та Eclipse. Показано способи перенесення проектів програм, створених в одному з названих середовищ в інше, забезпечення їхній взаємодії при об’єднанні та виконанні для отриманням кінцевого результату.Prombles in programming 2011; 2: 43-49 PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2025-08-28 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/807 PROBLEMS IN PROGRAMMING; No 2 (2011); 43-49 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2 (2011); 43-49 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2 (2011); 43-49 1727-4907 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/807/859 Copyright (c) 2025 PROBLEMS IN PROGRAMMING |
| institution |
Problems in programming |
| baseUrl_str |
https://pp.isofts.kiev.ua/index.php/ojs1/oai |
| datestamp_date |
2025-08-28T20:52:26Z |
| collection |
OJS |
| language |
Ukrainian |
| topic |
UDC 681.3.06 |
| spellingShingle |
UDC 681.3.06 Radetskyi, I.O. One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse |
| topic_facet |
UDC 681.3.06 УДК 681.3.06 |
| format |
Article |
| author |
Radetskyi, I.O. |
| author_facet |
Radetskyi, I.O. |
| author_sort |
Radetskyi, I.O. |
| title |
One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse |
| title_short |
One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse |
| title_full |
One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse |
| title_fullStr |
One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse |
| title_full_unstemmed |
One of Approaches to maintenance inter-connection environments Visual Studio and Eclipse |
| title_sort |
one of approaches to maintenance inter-connection environments visual studio and eclipse |
| title_alt |
Один з підходів до взаємодії середовищ VISUAL STUDIO i ECLIPSE |
| description |
In this paper considered the problem of heterogeneous environments interconnection for developing a programs to provide further joint integration of the programs whereas their building conditions in different environments. Considered both Visual Studio .Net and Eclipse. Shown the approaches to transfer program projects created with one of named environmentsto other one provided their interaction by interconnecting and deployment for getting final results.Prombles in programming 2011; 2: 43-49 |
| publisher |
PROBLEMS IN PROGRAMMING |
| publishDate |
2025 |
| url |
https://pp.isofts.kiev.ua/index.php/ojs1/article/view/807 |
| work_keys_str_mv |
AT radetskyiio oneofapproachestomaintenanceinterconnectionenvironmentsvisualstudioandeclipse AT radetskyiio odinzpídhodívdovzaêmodííseredoviŝvisualstudioieclipse |
| first_indexed |
2025-09-17T09:23:34Z |
| last_indexed |
2025-09-17T09:23:34Z |
| _version_ |
1850412011929731072 |
| fulltext |
Методи та засоби програмної інженерії
УДК 681.3.06
І.О. Радецький
ОДИН З ПІДХОДІВ ДО ЗАБЕЗПЕЧЕННЯ ВЗАЄМОДІЇ
СЕРЕДОВИЩ VISUAL STUDIO і ECLIPSE
Розглядається проблема взаємодії різнорідних середовищ з розробки в них програм для забезпечення
подальшої сумісної інтеграції цих програми з урахуванням умов їх побудови в різних середовищах.
Розглянуті два середовища розробки: Visual Studio .Net та Eclipse. Показано способи перенесення
проектів програм, створених в одному з названих середовищ в інше, забезпечення їхній взаємодії при
об’єднанні та виконанні для отриманням кінцевого результату.
Вступ
У зв’язку з появою різних розподі-
лених середовищ (Sun IBM, Microsoft,
CORBA, СОМ, JAVA і ін.) для побудови
програм засобами діючих в них мовах
програмування (МП), виникла проблема
забезпечення взаємодії різномовних і різ-
ноплатформенних програм між собою,
коли вони переносяться в невідповідне
для їх розроблення середовище.
Під взаємодією розуміється суміс-
ність двох і більше об'єктів. Даний термін
має спеціальний спектр використання в
діяльності програмістів (наприклад, вза-
ємодія програм і середовищ між собою
тощо) [1, 2]. Здатність до взаємодії двох і
більше програм або систем пов’язана з
обміном інформацією і використанням її
для організації обчислень. Для забезпе-
чення локальної взаємодії програм у МП
існує апарат зв’язку підпрограм і функцій
через оператори звернення типу CALL, а
для розподілених програм у різних
середовищах є, наприклад, такі засоби –
RPC, RMI, ORB (stub, skeleton), IContract
тощо. Відповідно цих засобів зв’язки
різномовних та різноплатформених прог-
рам виконує інтерфейс, який специ-
фікується загально прийнятою мовою IDL
(Interface Definition Language). На загаль-
ному рівні опис інтерфейсу з типами да-
них, що передаються, слугує для різних
середовищ механізмом забезпечення вза-
ємодії різномовних програм.
Кожне сучасне операційне середо-
вище реалізує цей механізм по-різному. І
тому, при переносі програм з одного сере-
довище в інше вирішуються питання за-
безпечення їхній інтероперабельності в
новому середовищі.
На даний час використовуються
деякі засоби забезпечення взаємодії різно-
рідних програм у Європейському проекті
Grid – інфраструктурі глобальних обчис-
лень за різнорідними програмами із класу
e-science. Одним з загальних способів під-
тримки взаємодії у цьому середовищі є
конфігураційний файл, в якому міститься
інформація про різні механізми взаємодії
програм у середовищах, де вони будува-
лися [3, 4].
У даній роботі розглянуті два сере-
довища розробки програм – Visual Studio
та Eclipse, на які орієнтується в проекті
Grid і застосовуються в фундаментальному
проекті ІІІ-1-07 ІПС НАН України [5]. На
прикладі цих середовищ наведено новий
спосіб забезпечення взаємодії середовищ і
програм, що створені в них.
Особливості розроблення
програм у заданих середовищах
Засобами цих середовищ можна
розробляти програми та складати їх
шляхом збирання із компонентів, специ-
фікованих різними мовами програмування.
Це має велике значення тому, що для
написання більш-менш складного повно-
цінного програмного продукту в більшості
випадках і використовуються специфічні
засоби різних МП. Наряду з мовними
засобами для опису програм у науковому
проекті [5], що базується на інтегрованому
середовищі Eclipse, виникала ідея по-
ширення спектру МП для використання
різних їх можливостей при об’єднанні
складних різномовних програмних систем,
що кожне середовище надає окремо в
межах своїх МП і підходів до їх зборки.
43 © Радецький І.О., 2011
ISSN 1727-4907. Проблеми програмування. 2011. № 2
Методи та засоби програмної інженерії
Для реалізації цієї ідеї було запропоновано
декілька пар мобільних середовищ, зокре-
ма, CORBA⇔ Eclipse [6] та MS.Net ⇔
Eclipse. Тобто через додавання до системи
Eclipse відкритого доступу і механізмів
взаємодії цих середовищ підвищується
могутність цієї системи.
У системі CORBA реалізовані такий
набір МП: Ada, C++, C, Lisp, Smalltalk,
Java, COBOL, Object Pascal, PL/1, Python.
Крім того, допускається застосування й
мов з середовища .NET. Зв'язок програм у
цих МП здійснюється через проміжний
прошарок за допомогою брокера ORB,
який оброблює інтерфейс в IDL, а саме,
Stub для клієнтських програм і Skeleton
для серверних програм. Наявність опису
брокера в МП високого рівня дозволяє
перенести його реалізацію й в інші сере-
довища для забезпечення взаємодії різно-
рідних програм у цьому середовищі.
Наприклад, Borland Enterprise Broker
підтримує МП Java і С++. Існують також
інструменти, які розширюють можливості
брокера для компілювання стабов IDL-
описів для МП в інших середовищах
(наприклад, платформа MS.NET забезпе-
чена пакетом IIOPNet).
Автором був реалізований зв’язок
між Visual Studio (VS) та Eclipse для мов
C#. і Java іншим підходом, ніж той, що був
розглянутий для системи CORBA. Visual
Studio надає широкі можливості для
програмування чотирьох мов: C#, F#, C++ ,
Visual Basic. Це прокривається потуж-
ними засобами програмування, які VS
надає для роботи з базами даних,
створення графічного інтерфейсу корис-
тувача, режимів тестування та налагод-
ження програм, фреймворки для розробки
web-програм та багато іншого [7–10]. З
іншої сторони є середовище розробки
Eclipse, це потужне безкоштовне сере-
довище розробки програм, яке за до-
помогою механізму плагінів надає мож-
ливість для написання програм на багатьох
МП (Java, C\C++, Python, PHP, C#, COBOL
та інші) з використанням різних фрейм-
ворків (Spring, Zend, Symphony, Django,
Twisted і багато інших). Ще однією
перевагою Eclipse є те, що воно не
прив’язана до якоїсь платформи чи ін-
струментальних засобів. Деяку програму
можна збирати різними компіляторами,
запускати на різних платформах (на-
приклад, програму на C# можна збирати та
розгортати як на платформі Mono, так і на
платформі .NET). Усі розроблені у цьому
середовищі програми зберігаються у репо-
зитарії програм і інтерфейсів.
Для побудови різномовних програм
через Visual Studio можна скористатись
засобами платформи .NET. У ній є CTS
(Common Type System, загальна система
типів), за допомогою якої програма, яка
використовує метод чи клас із модуля,
написаний на іншій мові, правильно
інтерпретує типи цього методу чи класу.
CLR (Common Language Runtime) дозволяє
виконувати програми, написані на мовах,
які підтримує платформа .NET.
Платформа Eclipse дає модель за-
гального інструментального засобу, приз-
наченого для об’єднання інструментів, які
готові або розроблені у іншому сере-
довищі через точки розширення і меха-
нізми plug-in-ів. Для додавання їх до ба-
зової платформи платформа Eclipse має
структуру підсистем, які складаються із
множини plug-in-ів за механізмами Run-
time (рис. 1).
Середовище Eclipse не має ніяких
обмежень для підключення деяких прог-
рам, різних інструментів та середовищ.
Вони забезпечує різні засоби для побудови
різномовних програм, що розробляються у
середовищах CORBA, COM та інші.
Рис. 1. Структура платформи Eclipse
44
Методи та засоби програмної інженерії
Потрібно лише підключити відповідні
плагіни у системі Eclipse. Все це знач-
но розширює її можливості засобами за-
безпечення взаємодії різнорідних програм,
що створені в інших середовищах [10, 11].
Для реалізації підходу потрібно
мати два середовища: Visual Studio та Ec-
lipse. Для підтримки в Eclipse мови C# пот-
рібен плагін Emonic та програма NAnt для
взаємодії Eclipse із визначеною плат-
формою (Mono чи .NET). Встановивши ці
програми можна створений проект прог-
рами із Visual Studio імпортувати в Eclipse
та внести зміни в конфігураційний файл
при її збірці.
Зміст нового підходу для
забезпечення взаємодії програм
Середовище Visual Studio має по-
тужні засоби для створення програм на
мові C#. Доцільно було б створювати
проект саме в ньому, але є репозиторій,
сховище програм, в якому програми роз-
міщені в каталогах відповідно до їх
тематики (фізика, хімія, математика і т. д.).
Цей репозиторій є сховищем програм для
середовища Eclipse. Було б дуже зручно
вміти об’єднувати ці два середовища, щоб
при створенні та розробці проекту ви-
користовувати властивості Visual Studio, а
після реалізації програми помістити її в
репозиторій Eclipse. Якщо потрібно буде
внести зміни в дану програму, то можна
просто внести зміни в програму із сере-
довища Eclipse.
Створюємо проект у Visual Studio.
Для прикладу побудуємо графічний
Windows-проект, який буде генерувати
задану кількість білетів із заданої кількості
питань та розподіляти для кожного білета
за трьома рівнями складності питань
(рис. 1).
Для переходу в Eclipse нас цікав-
лять вихідні файли програми, dll-бібліотки
VS, від яких залежить ця програма та
файли ресурсів (.resx), так як створено
Windows-програму. Але для того, щоб
можливо знову перейти в Visual Studio
будемо імпортувати весь проект.
Рис. 2. Приклад тестової програми
45
Методи та засоби програмної інженерії
Треба в Eclipse встановити плагін
для мови C#. Для цього завантажується
плагін emonic та NAnt. Розархівовуємо
архів з emonic та переносимо вміст папок
архіву в аналогічні папки середовища
Eclipse. Також необхідно розархівувати
архів з NAnt. Створюємо в Eclipse пустий
проект. Натиснувши правою кнопкою ми-
ші назву проекту, із контекстного меню
вибираємо пункт Import -> File System та з
файлової системи повністю імпортуємо
вибраний проект. Відкривши текстовим
редактором конфігураційний файл проекту
(.build), змінюємо його вміст, вказуючи
вихідні файли, бібліотеки та файли ресур-
сів.
Опис прикладу зміни конфігурацій-
ного файлу проекту:
<target name='SomeTargetName'>
<csc debug='true' optimize='true'
output='${build}/ SomeTargetName.exe'
target='exe' warninglevel='4'>
<sources>
<include name='**/*.cs'/>
</sources>
<resources dynamicprefix="true">
<include name='**/*.resx'/>
</resources>
<references>
<include
name='System.dll'/><include
name='System.Data.dll'/>
<include name='System.XML.dll'/>
</references></csc></target>
Для того, щоб перебудувати та
запускати проект потрібно створити відпо-
відні конфігурації. Для цього треба натис-
нути правою кнопкою миші кнопку на
панелі інструментів Run as … та з кон-
текстного меню вибрати пункт External
Configuration Tools …. Потім створити
конфігурацію для збірки програми. Для
цього в Location вказується шлях до
програми NAnt, а в Working Directory шлях
до папки проекту в репозиторії (рис. 3).
Для запуску програми потрібно
створити відповідну конфігурацію. Для
цього в розділ Location вказується цільо-
вий exe-файл, а в Working Directory – шлях
до папки проекту (рис. 4).
Рис. 3. Меню конфігурації для збірки
46
Методи та засоби програмної інженерії
Рис. 4. Меню конфігурації для запуску проекту
Збірка різномовних програм у
середовищі Visual Studio
Середовище Visual Studio має по-
тужні засоби для програмування на мовах
C#, F#, C++, Visual Basic. Завдяки плат-
формі .NET та її CLR (Common Language
Runtime) можна писати програми, які
будуть складатися із компонентів, напи-
саних на мовах, які підтримує платформа
.NET. Вона є своєрідною віртуальною
машиною, яка виконує свій специфічний
байт-код. Вихідний код мови програмував-
ня компілюється в так званий керований
код (managed code). Керований код
представляє собою код на проміжній мові
IL (Intermediate Language), який знаходить-
ся посередині між високорівневою мовою
(C#, F#, C++, Visual Basic) та мовою більш
низького рівня (асемблером, машинним
кодом). Під час виконання СLR на ходу
компілює код IL в машинний код,
застосовуючи для цього оперативну ком-
піляцію (Just In Time – JIT). Компілятор
JIT не компілює функцію чи метод при
кожному його виклику: він робить це лише
в перший раз, продукуючи при цьому
машинний код, рідний за відношенням до
платформи, на якій він виконується. Тобто
під час виконання компілюється лише той
код, який необхідний. Такий спосіб ком-
піляції відрізняється від інтерпретатора.
Таким чином можна реалізувати збірку
різнорідних програм в Visual Studio за
допомогою платформи .NET, звичайно,
враховуючи те, що типи в методах та
функціях мають відповідати загальній
системі типів CTS.
Збірка різномовних програм у
середовищі Eclipse
У Eclipse на відміну від Visual
Studio немає таких обмежень у мовах та
технологіях програмування. За допомогою
механізму плагінів можна підключати
засоби для створення програм в різних
мовах програмування та фреймворках.
Також є можливість створення власних
плагінів. Це середовище є гнучким
адаптивним інструментом, має високу
якість. Для реалізації задачі об’єднання
різномовних компонентів можна викорис-
товувати й інші технології, наприклад,
COM, CORBA.
Для прикладу, можна показати як в
Eclipse можна використовувати техно-
логію CORBA. Завдяки механізму плагінів
можна побудувати плагін для роботи з
CORBA-об’єктами. Наприклад, можна взя-
47
Методи та засоби програмної інженерії
ти плагін Eclipse CORBA plugin (ecp). Для
його встановлення можна викачати архів із
jar-файлами, або обновити Eclipse за
допомогою команд Help -> Install New
Software… Нажавши кнопку Add…, вка-
зати http://eclipsecorba.sf.net/update та вста-
новити плагін. Створювати новий IDL-
інтерфейс можна за допомогою команд
File -> New -> Other… та вибравши
CORBA -> IDL file. Описавши новий
інтерфейс можна скомпілювати стаб од-
ним із двох шляхів: використовуючи
інтегрований компілятор OpenORB або
вказати сторонній. У першому випадку
потрібно зайти в Project -> Properties ->
IDL Compilation та у вкладці Compilation
Options зазначити Compile Stub (рис. 5), а у
вкладці Compilers зазначити OpenORB
(рис. 6). В іншому випадку потрібно зайти
в External Tools Configuration та створити
нову конфігурацію, вказавши в Location
шлях до компілятора.
Рис. 5. Вибір опції для компіляції
Рис. 6. Вибір компілятора
48
http://eclipsecorba.sf.net/update
Методи та засоби програмної інженерії
49
Висновки
У роботі дано аналіз підходів до
забезпечення взаємодії різнорідних прог-
рам і сучасних середовищ. Наведені прин-
ципи взаємозв’язку різнорідних і різно-
мовних програм через інтерфейс, в якому
дається опис параметрів і типів даних, що
необхідно передавати іншим програмам.
Розглянуті варіанти операцій звернення
програм між собою. Дано зміст і приз-
начення нового способу реалізації зв’язків
між середовищами розробки Visual Studio
та Eclipse. Були розглянуті можливості цих
двох середовищ, а також способи ство-
рення за допомогою них програм із
компонентів, написаних на різних МП.
Перелічені переваги та недоліки кожного
із наведених підходів. Надані приклади,
що підтверджують можливості та деякі
додаткові переваги нового способу об’єд-
нання двох середовищ MS.NET і Eclipse.
Автор дякує за постановку задачі дослід-
ження і допомогу в підготовці цієї статті
професора К.М. Лавріщеву.
1. Лаврищева Е.М. Интерфейс в програм-
мировании // Проблеми програмування. –
2007. – № 2. – С. 126–139.
2. Лаврищева Е.М. Проблема интеропера-
бельности разнородных объектов, компо-
нентов и систем. Подходы к ее решению
// Мат. 7 Міжнар. конф. З програму-
вання “Укрпрог–2008”.– 2008. – № 2-3. –
С. 28–41.
3. Таковицкий О. Технология Grid comput-
ing.– 2003.– С. 1–9.
4. Андон П.І., Лавріщева К.М. Розвиток фаб-
рик програм в інформаційному світі //
Вісник НАН України. – 2010. – № 10. –
C. 15–41.
5. Лавріщева Е.М. Генерувальне програму-
вання програмних систем і сімейств //
роблеми програмування. – 2009. – № 1. –
С. 3–16.
6. Островський А.И. Подход к обеспечению
взаимодействия программных сред JAVA
и Ms.Net. // Проблеми програмування.–
2011. – № 2.– С. 40…
7. Нейгел Кристиан, Ивьен Билл, Глинн
Джей, Уотсон Карл и Скиннер Морган.
С# 2008 и платформа .NET 3.5 для
профессионалов. : Пер. с англ. – М. : ООО
"И.Д. Вильямс", 2009. – 1392 с.
8. Trey Nesh, Accelerated C# 2010.: Пер. с
англ. – М.: ООО «И.Д. Вильямс», 2010. –
592 с.
9. http://www.ibm.com/developerworks/library/
os-ecl-vscdt/ – міграція проектів на C# із
Visual Studio в Eclipse.
10. http://emonic.sourceforge.net/index.html –
головна сторінка плагіна Emonic.
11. http://nant.sourceforge.net/ – головна сторін-
ка засобу для збірки .NET програм NAnt.
Отримано 11.03.2011
Про автора:
Радецький Ігор Олегович,
студент 4 курсу КНУ ім. Тараса Шевченка,
факультет кібернетики.
Місце роботи автора:
Інститут програмних систем
НАН України,
інженер-конструктор I кат.
Тел.: 050 641 0472
e-mail: iradetskiy@mail.ru
http://www.ibm.com/developerworks/library/os-ecl-vscdt/
http://www.ibm.com/developerworks/library/os-ecl-vscdt/
http://emonic.sourceforge.net/index.html
http://nant.sourceforge.net/
|