Netbeans RCP против Eclipse RCP

Я хотел бы начать новый проект, в котором будут широко использоваться плагины. Я знаю, что и у Eclipse, и у Netbeans есть свои полноценные клиентские платформы со своими сильными и слабыми сторонами.

Я хотел бы получить некоторые комментарии, которые предпочитает сообщество Stack Overflow.

Кроме того, и это самое главное, насколько легко на соответствующих платформах писать плагины для уже существующих приложений. Например, если я закончу свое приложение и хочу, чтобы третьи стороны могли расширить его с помощью своих собственных плагинов, как каждая из этих платформ предоставляет для этого функциональные возможности? Понадобится ли им мой источник для этого, или эти платформы предоставляют API-интерфейсы плагинов, для которых третьи стороны могут кодировать?


person Nico Huysamen    schedule 23.10.2010    source источник


Ответы (3)


Я хотел бы получить некоторые комментарии, которые предпочитает сообщество Stack Overflow.

Я отдаю предпочтение Eclipse RCP, в основном потому, что я все еще считаю, что сама IDE на данный момент является лучшей. Eclipse RCP также является более зрелым и содержит больше книг и документации в Интернете. Netbeans RCP немного отстает: на Amazon.com я могу найти только три книги, посвященные этой платформе.

Я также очень хочу, чтобы платформа развивалась благодаря проектам e4, которые многое упростят. (от внедрения зависимостей до настройки пользовательского интерфейса)

Кроме того, и это самое главное, насколько легко на соответствующих платформах писать плагины для уже существующих приложений. Например, если я закончу свое приложение и хочу, чтобы третьи стороны могли расширить его с помощью своих собственных плагинов, как каждая из этих платформ предоставляет для этого функциональные возможности? Понадобится ли им мой источник для этого, или эти платформы предоставляют API-интерфейсы плагинов, для которых третьи стороны могут кодировать?

Я могу себе представить, что ответ на этот вопрос не будет действительно удовлетворительным, поскольку обе платформы спроектированы так, чтобы быть расширяемыми. В этом отделе они почти равны.

Самое главное — спроектировать приложение так, чтобы оно также было расширяемым. То есть предоставление точек расширения. Для этого вам не нужно предоставлять исходный код, но вы можете задокументировать точки расширения. Кроме того, если вам нужно предоставить интерфейсы, вы можете просто предоставить javadoc без реального источника.

Я повторяю свою точку зрения: разработка приложения с использованием RCP не означает, что ваше приложение будет автоматически расширяемым. Вы также должны разработать свое приложение таким образом. Это будет нелегко, когда вы впервые изучите платформу, но в конечном итоге вы узнаете об этом на собственном опыте.

person nanda    schedule 25.10.2010
comment
Я не согласен. Сейчас я уже полгода в команде, разрабатывающей приложение на основе RCP4. ИМХО, вся экосистема Eclipse — полный бардак. Плохо задокументировано. Если поискать в сети, то совершенно невозможно отличить, устаревший ли это RCP3 материал или нет. IRC-каналы мертвы. И, наконец, если вы посмотрите на код, чтобы найти ответы: я никогда не видел настолько плохо спроектированного и документированного кода! Я не могу сказать, лучше ли Netbeans RCP. ИМХО Сделайте пользовательский интерфейс своим и избавьтесь от всего фреймворка Eclipse. - person Weltraumschaf; 13.04.2016

(Примечание: я не говорю от лица сообщества ;))
Два основных различия между Netbeans и Eclipse RCP:

Другой фактор, как вы можете прочитать в этом сообщении блога, это < href="http://www.eclipse.org/rap/" rel="nofollow">RAP (богатая платформа Ajax), которая может помочь развернуть ваше приложение на многих платформах на основе одного исходного кода. Но это может вас не касаться.

Интеграция с maven достаточно хороша с обеих сторон (см. %28NetBeans+Zone%29" rel="nofollow">Netbeans-RCP-Maven Hello World), но Maven3-Tycho в основном разработана для Eclipse.
Опять же, вам могут не понадобиться эти новые функции maven (или вы можете полностью использовать другую систему управления сборкой, например Ivy или Gradle).

person VonC    schedule 23.10.2010
comment
Спасибо за ответ. Я знаю об упомянутых различиях между двумя архитектурами. Что я действительно хотел бы знать, так это то, насколько легко (для обоих по отдельности) писать плагины вне среды приложения. Например, если я завершу приложение и отправлю его, насколько легко кому-то другому написать для него плагины. - person Nico Huysamen; 23.10.2010
comment
@Nico: вот почему я упомянул ссылку на nuxeo.org/static/book -draft/osgi2.html: OSGi разработан для упрощения работы с расширениями. И я понимаю, что вы уже много знаете об этих двух средах ;) Но я должен также ответить случайному поисковику в очках, который наткнется на этот вопрос, отсюда и подробности об основных различиях между двумя моделями. . - person VonC; 23.10.2010

Подумайте, действительно ли вашим подключаемым модулям нужна такая сложная архитектура, которую предоставляют eclipse RCP или NetBeans. Плагины для RCP или NetBeans могут создаваться только разработчиками Java с сильным опытом RCP/NetBeans. Имейте в виду, что вы можете сделать (очень простое) приложение RCP, которое вообще не подключается. В некоторых случаях лучше написать свой, может менее гибкий, но более удобный способ подключения новых плагинов. Вы даже можете сделать несколько волшебников для них.

person Grzegorz Gajos    schedule 03.02.2012
comment
Вы проверяли дату поста? В любом случае, спасибо за ответ, я решил использовать Java Simple Plugin Framework, он отлично работает. - person Nico Huysamen; 06.02.2012
comment
Я должен пропустить это. Спасибо за информацию о JSPF, никогда не слышал об этом. - person Grzegorz Gajos; 07.02.2012