java上位机开发(开篇)
Posted 嵌入式-老费
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java上位机开发(开篇)相关的知识,希望对你有一定的参考价值。
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
目前对于java语言,很多人都认为太简单。其实这是不对的,因为某种意义上来说所,java语言就像学习日语一样,入门比较容易,但是要深入掌握还是有很大困难的。比如说,要想了解jvm,所花费的时间代价不比学汇编、学编译原理、学操作系统少多少。
当然,和20年前学校开设的课程不同,目前电子商务、软件工程、大数据、人工智能的同学都是以js、java、python这些脚本语言为主,c、c++本来就比较难教,所以学校也乐得轻松。另外一方面,在实际工作就业中,像java这样的语言,在上位机开发、网站开发、大数据开发、android开发这四个领域发挥着越来越重要的角色,这也导致了很多学校以就业为导向,直接选择java作为最主要的教学语言。此外,java是公认的轮子多,框架多,使用java可以直接开发上层代码,避免很多的二次开发工作。
作为企业端来说,也只能顺应时代的发展,及时调整开发技术路线,这样才能最大程度利用市场现有的资源,挑选合适的人才满足开发的需要。java上位机虽然用的不多,这里主要是和c++ qt相比较,但是本身没有特别大的缺陷,完全可以代替qt来进行上位机的开发。
1、上位机开发需要的因素
学习一门语言最快的方法,就是用这门语言来做一个或者是几个实际的应用。当然,首先还是要看上位机开发需要学习哪些知识点。这里虽然谈到了java语言,但是换成其他语言也是一样的,比如工业自动化常用的c#语言。
从上图看出,要写好上位机,主要可以从java基础、图形界面、jni调用、数据库、网络、配置文件、定时器、日志、部署和安装这几个方向来考虑。
2、java基础
java基础,就是把借助已经掌握的其他语言来学习java。这里提到了各种各样的数据类型、条件判断语句和循环语句、类、包、导入。建议开始学的时候,没必要一开始就看的多深,可以边做边改,只有实践不断犯错误才能快速提高能力。
3、GUI图形界面
GUI可以用swing或者awt进行开发,一般来说awt好看一点。如果想偷懒,可以借助于eclipse+windowbuilder插件来完成,不过一开始的时候还是建议以手写为主。
4、jni导入动态库
这部分是很容易被忽视的。因为c、c++要比java早一点,已经存在很多的库可供选择。我们开发java的时候,完全可以复用这些第三方库,毕竟对于一些算法、硬件协议、动态库,用java写既无必要,也无可能。
5、数据库
这个一般都使用jdbc,数据库选mysql即可。
6、网络部分
网络编程是java的强项。客户要求的私有协议或者硬件协议,可以用udp、tcp完成;如果不做要求,可以直接用xmlrpc来做,没必要搞得很复杂。
7、配置文件
可以是xml的格式,也可以是json的格式,根据需求而定。
8、定时器
对于不是特别复杂的程序,建议直接用GUI+定时器的方法来解决,特别稳定健壮。当然,如果涉及到多线程,那么要做好数据保护工作。
9、log
日志是debug的力气,这方面直接参考log4j或者log4j2就好。
10、部署和安装
qt的部署特别容易,java可以参考maven工具。
注:
java里面有一些概念比较复杂,比如说反射和注解。这个对平常开发c、c++的同学来说有一点难以理解。这都没关系。主要原因还是因为java上面是虚拟机,虚拟机可以帮助语言来完成很多靠cpu硬件完成不了的事情。暂时不掌握这些复杂技能不会影响上位机开发的。
以上是关于java上位机开发(开篇)的主要内容,如果未能解决你的问题,请参考以下文章