Коли використовувати RCP?


9

Мені подобається писати невеликі програми GUI за допомогою Java та Swing, щось на зразок клієнта для соціального веб-сайту Tumblr

Чи варто використовувати Eclipse RCP або платформу Netbeans?

І які переваги я отримую від використання будь-якого над використанням звичайного гойдалки / SWT?

Чи потребують додатки RCP більше залежностей, ніж ті, що розроблені за допомогою Swing або SWT?

Відповіді:


6

Декард мав досить хороший відгук. Хочу додати, що варто подумати, як цей проект буде підтримуватися вниз. Поміркуйте, скільки ваших колег (або розробників взагалі) знайомі з Swing та ін., А скільки знайомі з RCP. У моєї організації були певні головні болі, коли ми хотіли запилити стару програму RCP. Виявляється, більшість людей, які беруть участь у розробці проекту, або виїхали з компанії, або перейшли в ролі, що не розвиваються. Наша внутрішня експертиза була більше в Swing, тому це ускладнювало справи, ніж потрібно було. У нас також було бажання інтегрувати його частини в окремий додаток на основі Swing, і знову-таки факт, що старий додаток був додатком RCP, ускладнював справи.

Я не кажу, що ви не повинні створювати додаток RCP, але це деякі речі, які ви, можливо, захочете розглянути спочатку.


7

По суті, коли ви використовуєте Swing, ви повинні налаштувати все вручну: ви визначаєте Вікно, кожну область та елемент управління, всередині якого ви знову визначаєте кожен елемент управління. Для кожного управління та області ви визначаєте обробники для вирішення змін та дій користувача тощо. Це потрібно зробити, тому що нічого не буде працювати, якщо ви чітко не визначите та не реалізуєте це.

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

Оскільки RCP - це те, що забезпечує повноваження Eclipse, основні блоки, як правило, зосереджуються на додатках, що мають потреби, подібні до середовища розробки: широке редагування тексту у всіх видах вікон, використовуючи всі види контекстно-залежних меню / панелей інструментів / операцій / тощо.

Отже, якщо ви хочете зробити невелику користувацьку програму з великою кількістю нестандартних речей у ній (наприклад, кричущий клієнт Twitter, який має всілякі спеціально накреслені чи скінні елементи управління), використовувати RCP немає реального сенсу. Насправді він перетягне 5 + МБ плагінів у вашу програму без реальної вигоди.

Якщо ви хочете зробити додаток, який відображає веб-сторінки, потребує розширеної довідкової системи, потрібно зробити автоматичне оновлення через Інтернет і такий масштабний функціонал настільних додатків, тоді RCP буде чудово підходить.


0

Я професійний інженер програмного забезпечення Java з великим досвідом роботи як на платформі Eclipse RCP, так і на Netbeans.

"Чи варто використовувати Eclipse RCP або платформу Netbeans?"

Відповідь: Це залежить від наступних факторів:

  • Ваш досвід у галузі Java.
  • Зусилля, необхідні для впровадження чогось в обох RCP.
  • Чіткість документації кожного РКП.
  • Бажаний зовнішній вигляд, який ви хочете надати своїм кінцевим користувачам.

Ось плюси і мінуси кожного з цих RCP відповідно до факторів, про які я згадував вище:

Платформа Netbeans:

Плюси:

  • Чіткість та організація документації ВИГОТОВЛЯЄТЬСЯ! Але активне співтовариство мало порівняно з розробниками Eclipse RCP.

Мінуси:

  • Потрібен великий досвід роботи на мові Java.
  • Для того, щоб зробити те ж саме, потрібно записати більше коду порівняно з Eclipse RCP.
  • Зовнішній вигляд не є рідним. Платформа Netbeans заснована на Swing, таким чином ви отримуєте однаковий Java Swing Look & Feel на всіх цільових платформах!

RC "Затемнення":

Плюси:

  • Потрібні лише гарні знання Java, а також хороші знання ін'єкції залежності (іншими словами, ніяких речей з Кунг-фу не потрібно: P)!
  • Отриманий зовнішній вигляд набагато рідніший, ніж у Netbean. Це тому, що RCP Eclipse базується на SWT. (це для мене шахрайство - просто тому, що я не задоволення від SWT, особисто)

Мінуси:

  • Чіткість та організація документації не настільки хороша! Мінуси.

Мої особисті переваги - платформа Netbeans тільки тому, що мені подобається мати повний контроль над тим, що я роблю зі своїм кодом, і тому, що я думаю, що інтерфейс на основі Swing набагато стабільніший, ніж SWT (я раніше деякі інтерфейси інтерфейсу в моїй EElipse IDE, коли я кодую: P)!

"Чи потрібні додатки RCP більше залежностей, ніж ті, що розроблені за допомогою Swing або SWT?"

Відповідь: Залежності - це те, що змушує цих 2 дітей кататися. Інакше було б непотрібно їх називати РКП. RCP розшифровується як платформа клієнтських клієнтів, тобто екосистема (великий набір API), яка допомагає будувати додатки "Річ", надаючи засоби для цього (через API). ;-). Таким чином, відповідь тут - «ТАК, БУДЕ БІЛЬШЕ ЗАВИСИМОСТІ»!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.