目前Java开发主要集中在Web、大数据、移动互联网和人工智能等领域,当然很多工具类软件也采用Java进行开发,比如Oracle很多系列产品都是使用Java开发的。
转行做Java开发从Web方向入手是比较务实的选择,原因是做Web开发更容易上手,学习起来也并不困难。如果做Web方向的开发则需要掌握如下的内容:
对Java面向对象开发过程有清晰明确的理解,从类的设计、对象的创建到方法的调用都能独立完成代码的编写。掌握封装、继承、多态以及其衍生的相关具体开发内容,理解Java的多线程概念。
会使用Mysql或Oracle数据库,做Web开发需要频繁与数据库打交道,所以要熟练至少一个数据库产品。能完成建库、建表,能使用sql语句完成数据库操作,能自己编写存储过程语句(不需要太复杂),以及能独立完成一部分数据库优化操作。
能通过JDBC完成对数据库的操作,清晰数据库操作的步骤:驱动程序加载、数据源的定义、建立连接对象(Connection)、创建容器、执行Sql语句、遍历结果集、关闭数据库资源(结果集、容器、连接)。掌握DAO模式的编写规则,能独立完成基于DAO模式的数据库开发。了解连接池在数据库开发中的作用,能在实际开发中使用数据库连接池管理连接对象。
清晰Java Web开发的核心组件,了解Web开发的三层结构以及N层结构,清晰每一层的功能划分,能独立完成每一层的功能组件开发,并完成部署。了解Web Server的组成部分,了解其在Java Web开发中所起到的作用。了解MVC框架,清晰MVC框架每一部分的功能划分,知道该使用哪种技术完成具体的开发任务。
熟悉一种开源框架的使用,比如SpringMVC,了解框架在Web开发中所起到的作用。能通过使用框架完成Web开发任务,并部署到Web Server中。
转行做Java开发如果有扎实的数学基础,也可以从事大数据或AI方面的开发工作,由于大数据开发需要一定的数学基础,所以有一定的门槛。当然在大数据开发领域使用Python开发也是一个好的选择,毕竟Python比Java更容易掌握,功能也十分强大。
如果想做Android方面的开发则需要学习的内容要稍微少一些,在掌握基础的Java语法之后就可以学习Android开发了,Android开发主要集中在Activity、Intent、Service、ContentProvider、BC以及诸如手势、外设连接、数据库操作等内容。
目前很多公司的Java程序员都可以做Android开发,所以只掌握Android开发未免有些单薄,所以还是建议系统学习一下Java Web开发。
我做过的很多项目都是使用Java完成开发的,作为问答的签约作者,我在头条上陆续写了一些关于Java、Python的文章,里面有很多验证性实验,感兴趣的朋友可以关注一下,有问题也可以跟我交流。