我以前学过Java,但是很久没用了,所以也谈不上熟,我想问一下现在JAVA做PC机上的程序有优势吗
如题:
我以前学过Java,但是很久没用了,所以也谈不上熟,我想问一下现在JAVA做PC机上的程序有优势吗。我记得JAVA做PC机上的程序用J2SE,用好像SWING,SWT控件,但那时学的时候记得都是很麻烦的,不像VS那种直接往上拖的,不知道现在是什么样。因为JAVA是跨平台的,但具体跨平台的优势体现在哪,我也没体会过,因为我也没在Linux上做过东西,Windows有Windows的API,到了Linux平台就不需要换吗。还有它的运行效率,在Window上和C#比,在Linux上和QT比呢?还有它使用OpenGL做3D显示,以及做图像处理的效率如何。因为公司来了个人,以前上位机使用C#写的,控制底层硬件,都是调用厂商提供的DLL,API(用VC写的),所以在PC机上调用DLL的效率我也觉得值得怀疑。因为他觉得以后要做跨平台,因为还有一部分是远程监控,服务器端,所以用JAVA全部把他们做到一起,他自己本身也很熟JAVA。但是我还是觉得用QT比较好,至于远程监控的部分,还是用JAVA分开做,通过接口调用。我并不熟悉他远程监控部分要怎么实现,大概知道,PC机上本地一些硬件的报警信息通过3G网上传到服务器上做备份。
------解决方案--------------------做PC上的应用程序也没什么,效率的话JAVA也能JNI,SOCKET自带的API也是没问题的,跨平台基本上要重写,像delphi,c,c++写的应用程序直接复制基本就能运行,JAVA打包个JRE就巨大了。
------解决方案--------------------Qt是个不错的选择
------解决方案--------------------JAVA 的精髓在WEb 但是现在swing 早就能托拽了
------解决方案--------------------用C++吧!
------解决方案--------------------综合来说,C#需要.net的运行环境,java也好jre对于做桌面应用程序其实还是不建议去使用。虽然开发快,但是谁也无法忍受一个程序本身还没1M的程序,还得带个10到几十M的运行环境。
还是推荐C++,delphi。如果楼主对这些有难度的话。还可以选择另外的国产语言:易语言,aauto.它们都是直接编译成机器码,对于做桌面应用还是不错的。相对于易语言和aauto我个人认为aauto会要好点,语法和风格很接近我们平时写英语编程的习惯,而且开发速度也很快!
------解决方案--------------------java做服务器和安卓是比较好的,,,Swing的话,,,用的不多