Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

A Java GUI for a C++ application - Is this a good design?

Yes, I was a little surprised when an interviewer mentioned that they use a Java-swing GUI for a C/C++ application. I was curious and asked him how they actually integrate these together, his answer was "through messaging". Interesting! Well, I am new to this kind of approach and am curious if companies out there really use this kind of design. If yes, then is there a big advantage to this design? It's a bit difficult for me to comprehend how this design would work well, if you have any references please share.

FYI, the product is a data-backup based application (on a Linux/Unix platform possibly). Thank you.

CV

like image 778
Chenna V Avatar asked Oct 20 '11 21:10

Chenna V


People also ask

Is Java good for making GUI?

Creating a GUI is a great way to get experience working with objects in Java because each interface component is represented by its own class. To use an interface component in Java, you create an object of that component's class.

Is Java GUI important?

GUI (Graphical User Interface) in Java is an easy-to-use visual experience builder for Java applications. It is mainly made of graphical components like buttons, labels, windows, etc. through which the user can interact with an application. GUI plays an important role to build easy interfaces for Java applications.

Is Java GUI still used?

Majority of existing GUI java codebases are Swing and likely will stay that way until the codebase rots and nobody maintains it anymore.


1 Answers

I see nothing wrong with it. It is very common to integrate different components through messaging. I do think its generally better to have a homogeneous environment (for example, all applications written in Java rather than Java and C++), however its often the case where you must integrate with legacy or 3rd-party components written in other languages, either for cost reasons or because there is no other choice.

Messaging is a common way to do this. I consider HTTP under the umbrella of "messaging", and nearly every language has an HTTP library - which makes it a good choice as a common messaging "language". When integrating a very heterogenous system there are dedicated tools/frameworks for not only integrating components, but also for integrating messaging systems (e.g. ESBs).

like image 123
SingleShot Avatar answered Oct 20 '22 08:10

SingleShot