2010-06-18 1 views
10

Я знаю много хороших приложений (включая UG Team Center, IBM Lotus Expeditor и т. Д.), Разработанных над Eclipse (RCP Framework). В последнее время я нахожу приложение, разработанное над Qt Creator, использующее его плагиновую архитектуру (GCF, конструктор VTK и т. Д.).Eclipse/RCP (SWT) vs Qt Creator (Qt) как основа для разработки плагинов?

Я хочу знать плюсы и минусы Eclipse и Qt Creator в качестве базовой структуры для разработки приложений поверх нее. Также, если кто-то может перечислить модули, которые поддерживают приложения в каждой из этих фреймворков. Какой из них вы рекомендуете для разработки кросс-платформенных приложений?

много спасибо.

ответ

3

Отказ от ответственности: я взломать на создателя

Я считаю, как создатель и Eclipse, чтобы быть стабильной и довольно полнофункциональный Иды. Создатель сильно фокусируется на C++ и Quick (новая вещь bling в Qt land ;-), в то время как Eclipse поддерживает целый ряд языков, причем поддержка Java действительно сияет. Это, конечно, также влияет на функциональность, которую ваш плагин может легко обеспечить.

Первое видимое отличие от разработчика плагина - это, конечно же, язык программирования: Eclipse написан на Java, а создатель разработан с использованием C++ с Qt. В зависимости от вашего фона разработки, который может быть довольно значительным.

Оба обеспечивают достойную систему плагинов со всеми функциями мэра, такими как обработка зависимостей между плагинами, управление версиями и т. Д. Я предполагаю, что система плагинов Eclipse немного более «ожесточена», так как у них довольно много больше сторонних плагинов, которые постоянно «тестируют» его. Оба проекта имеют некоторые API, которые все еще развиваются (мое впечатление, что это меньше проблема с eclipse в это время), поэтому стоит проверить дорожные карты.

Eclipse имеет больше доступных плагинов, и это может быть преимуществом, если ваш плагин может воспользоваться функциональностью, уже реализованной в других плагинах. Графическое моделирование и т. Д. У создателя еще не так много плагинов, но есть много открытых открытых исходных кодов на основе Qt, которые должны быть прямо связаны с подключением к плагинам (если это разрешает лицензия!).

Оба проекта имеют открытый исходный код, поэтому вы можете просмотреть код. Лицензия отличается от Qt Creator и Eclipse. Лучше попросите адвоката прочитать их, если вы подумаете о создании собственного плагина для любого из них ... но это только стандартный совет :-)

В обоих проектах есть приветственные сообщества пользователей, которые готовы помочь, когда застряли и оба проекта принимают взносы за код (в случае, если вы не хотите постоянно обновлять свой код самостоятельно ;-).

Это то, что я могу думать о в верхней части моей головы ...

1

Первоначально я был большим поклонником QtCreator. Затем я обнаружил, что это позволяет мне уйти со многими программными вещами, которых я не должен был. Я не могу вспомнить ни с одной точки, но когда я портировал Mac OSX, я решил построить его в XCode, а не в QtCreator. После моей сборки я обнаружил массу ошибок, которых я никогда не видел.

... И я знал это, как правило, функционирующий код ...

В любом случае, я по-прежнему работать в Qt много и тщательно наслаждаться этим, но я развиваю в Visual Studio, XCode и GCC на их соответствующих платформ. Извините, что я не помню никаких примеров, я столкнулся с этой проблемой 6 месяцев назад.

+0

Это a) не имеет никакого отношения к Qt (Creator), и b) никакой значимости (Qt vs Eclipse). Вероятно, ваша проблема заключалась в том, что MSVC vs gcc создает разные ошибки для нестандартного кода, который вы написали. Различные компиляторы производят разные ошибки. IDE или структура не имеют к этому ничего общего или ничего общего. – rubenvb

+0

Думаю, тогда я был довольно недоволен компилятором, который использовал QtCreator. Раньше я развивался в MSVC и GCC, поэтому мне показалось, что я пишу стандартный код. Было просто несколько разочаровывающе, что компилятор позволил этому случиться, где я не сталкивался с такими проблемами, как между MSVC и GCC. – Brett

+0

@Brett: конечно, это был древний 3.4.5 MinGW GCC (который также мог бы объяснить ошибку переключения), затем я отменяю (некоторые) из моего комментария :). Вы можете использовать любой компилятор/toolchain, который вы хотите с Qt, просто нужна небольшая настройка, вот и все. – rubenvb

0

Eclipse - это более основанная на Java, Qt - C++ и некоторые полезные дополнения (сигналы + слоты, среди прочего). Я никогда не слышал о Eclipse как о структуре, но это, конечно, не говорит за или против него. Я расскажу о Qt здесь:

Я считаю, что в основе Qt лежит основа, потому что он (его разработчики) обладает многолетним опытом, обеспечивающим хорошую кросс-платформенную платформу с почти всем, что вам когда-либо понадобится , У этого есть сеть, файловая система, gui, алгоритмы, контейнеры, инструменты перевода, дизайнер UI, ОЧЕНЬ хорошая документация и солидное сообщество. Он основан на C++, что делает взаимодействие с практически любой C или C++ библиотекой «ветерок». Qt, безусловно, является более зрелым игроком здесь.

+1

Я никогда не использовал Qt, но я думаю, что он более зрелый, чем затмение, не зная, что такое затмение - безответственно. В принципе, в затмении есть все, что вы упомянули, минус бесплатный дизайнер пользовательского интерфейса (есть коммерческие версии). Я работаю с eclipse уже 3 года и не имею серьезных жалоб. – drstupid

+0

Я попробую уточнить: я говорю о зрелости в смысле «многолетнего опыта и существования». Eclipse существует с 2005 года (первый релиз: декабрь 2005 года, я даже не уверен в RCP). Qt существует с 1991 года. Я уверен, что Eclipse одинаково хорош, но, как вы говорите, я не могу этого знать. Я также не говорю о Eclipse IDE vs QtCreator, там Eclipse имеет больше опыта, QtCreator 1.0.0 был выпущен год назад. – rubenvb

+1

http://www.ibm.com/developerworks/rational/library/nov05/cernosek/index.html – drstupid

0

Примечание: Я разрабатываю на обоих, я делюсь своим опытом на Java blog, Qt blog и Forum Nokia blog. Я также a Forum Nokia Champion.

Простой ответ Eclipse RCP.

I blogged about cross-platform desktop frameworks sometime ago here, включая Eclipse RCP vs Qt Creator и другие рамки.

Eclipse RCP предназначен не только для сложных приложений. Разработка с Eclipse RCP очень проста в запуске. Получите good book for Eclipse RCP, I recommend this one. И у вас практически нет барьеров на платформе. Это хорошо для долгосрочного развития. В моем личном опыте удобство обслуживания приложений Eclipse RCP (и хорошо разработанных приложений Java в этом отношении) намного лучше, чем приложение Qt.

«Расширение» для Eclipse RCP, которое я предлагаю, это EMF. Хотя EMF очень сложный, самый простой путь - использовать его для разработки метамоделей и генерации Java-классов. Вы также сможете легко редактировать свои объекты в интерфейсе RCP (в мире веб-приложений, часть «CRUD»). Вот good practical book on EMF.

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

Отметьте, что у меня есть ничего плохо сказать о Qt. Qt является отличной картой, с Qt Quick и QML и мобильной поддержкой. И это лучше всего использовать, если вы находитесь в этих целях. Если вы действительно не нуждаетесь в Qt, Eclipse RCP должен сделать вашу жизнь проще.