Netbeans RCP против Eclipse RCP

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

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

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

3 ответа

Решение

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

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

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

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

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

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

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

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

Еще один фактор, о котором вы можете прочитать в этом блоге, - это RAP (Rich Ajax Platform), который может помочь развернуть ваше приложение на многих платформах на основе одного исходного кода. Но это может не касаться вас.

Интеграция maven довольно хороша с обеих сторон (см. Статью Hello World от Netbeans-RCP-Maven), но интеграция Maven3-Tycho в первую очередь разработана на Eclipse.
Опять же, вам могут не понадобиться эти новые функции maven (или вы могли бы полностью использовать другую систему управления сборкой, такую ​​как Ivy или Graddle)

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

Другие вопросы по тегам