开发者

Can I use Eclipse as a framework for a new cross-platform GUI?

I w开发者_如何学编程ant to develop a new powerful GUI for an existing C++ application. I planned to do it as a standalone project in C++/QT, and it would communicate client-server with the existing application.

Recently I've been told that there is another possibility, to create such GUI using Eclipse. I mean that Eclipse can serve not only as an IDE, but also as some kind of framework for new applications.

Is it so?

Is it a good idea to use Eclipse in this way? What to consider?

Can such development be C++ based, or only Java based?


Yes, absolutely, the Eclipse "Rich Client Platform" is an application framework comparable to Qt, in some ways, and superior in other ways. RCP's frameworks are generally more sophisticated and more powerful than anything in Qt. Yes, I realize I'm inviting flames, because people do have religious wars over this. I don't care, I'm entitled to my opinion.

You could include C++ code in your application using the JNI API, but in general, the bulk of the development would be in Java. Ultimately, the deciding factor may just be the resources and skills you have available -- does your team know Java, or not.


As others have said, Eclipse is a platform, not just an IDE, but development using it is definitely in Java. Here's some reference material in case you decide to pursue this approach:

  • http://wiki.eclipse.org/index.php/Rich_Client_Platform
  • http://www.vogella.de/articles/EclipseRCP/article.html


Eclipse is built with its own GUI framework - SWT. It is Java-based but apparently there is a way to use it from native C++.


Eclipse is indeed a platform, with the cross-platform UI toolkit SWT and the OSGi plug-in system at its heart. Look at Android: a lot of the operating system is coded in C++, with hooks for normal UI development with Java. This is kind of what you need to do. Be aware that JNI is a pain and is certainly not easy to use, but I'd advise Java for everything except for code that needs to be accelerated, which you would do in C++. Java is fast enough for most tasks.


You can certainly do that. You might also consider Netbeans or Qt's own IDE as well.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜