Hello people!I was thinking about interface graphics for my ground station.Begin I was thinking in Java and use JNI, but reading some embbeded system, I changed ideia.So, now Im thinking visual basic or C/C++.Whats yours opinion about?Tnks!!
You need to be a member of diydrones to add comments!
What is your purpose and market? Of course the advantage to Java is fastest portability between platforms. It comes at the cost of being ugly as sin.
You've got your Windows users, your Mac users, your Linux users, and all platforms have passionate fans. But I have never seen a Java program look 1/10 as pretty as the native windowing systems on any of those platforms (even ones I'm not a fan of).
If you want to have a fanatical base of users for your ground station, my recommendation would be to write it in C, and make sure all window handling / drawing, any (non ANSI) file I/O, etc. goes through a set of procedures in as few source files (goal=1) as possible. Then your platform fans can adapt your code to their own platform, and hopefully not change drawing and other platform specific code any more than they absolutely have to. When you update your ground station code, that can be merged in to secondary platforms without changing the drawing code specific to the other platforms.
Replies
You've got your Windows users, your Mac users, your Linux users, and all platforms have passionate fans. But I have never seen a Java program look 1/10 as pretty as the native windowing systems on any of those platforms (even ones I'm not a fan of).
If you want to have a fanatical base of users for your ground station, my recommendation would be to write it in C, and make sure all window handling / drawing, any (non ANSI) file I/O, etc. goes through a set of procedures in as few source files (goal=1) as possible. Then your platform fans can adapt your code to their own platform, and hopefully not change drawing and other platform specific code any more than they absolutely have to. When you update your ground station code, that can be merged in to secondary platforms without changing the drawing code specific to the other platforms.