java工程师需要掌握的技术:1、corejava,可以直接看源代码;2、多线程并发编程;3、i/o,socket编程;4、jvm的一些知识;5、一些常用的设计模式;6、常用数据库oracle、mysql等;7、javaweb开发的框架。
java工程师需要掌握的技术:
1.corejava,就是java基础、jdk的类库,很多童鞋都会说,jdk我懂,但是懂还不足够,知其然还要知其所以然,jdk的源代码写的非常好,要经常查看,对使用频繁的类,比如string,集合类(list,map,set)等数据结构要知道它们的实现,不同的集合类有什么区别,然后才能知道在一个具体的场合下使用哪个集合类更适合、更高效,这些内容直接看源代码就ok了。
2.多线程并发编程,现在并发几乎是写服务端程序必须的技术,那对java中的多线程就要有足够的熟悉,包括对象锁机制、synchronized关键字,concurrent包都要非常熟悉,这部分推荐你看看《java并发编程实践》这本书,讲解的很详细。
3.i/o,socket编程,首先要熟悉java中socket编程,以及i/o包,再深入下去就是javanio,再深入下去是操作系统底层的socket实现,了解windows和linux中是怎么实现socket的。
4.jvm的一些知识,不需要熟悉,但是需要了解,这是java的本质,可以说是java的母体,了解之后眼界会更宽阔,比如java内存模型(会对理解java锁、多线程有帮助)、字节码、jvm的模型、各种垃圾收集器以及选择、jvm的执行参数(优化jvm)等等,这些知识在《深入java虚拟机》这本书中都有详尽的解释,或者去oracle网站上查看具体版本的jvm规范。学习java都需要掌握什么知识?
5.一些常用的设计模式,比如单例、模板方法、代理、适配器等等,以及在corejava和一些java框架里的具体场景的实现,这个可能需要慢慢积累,先了解有哪些使用场景,见得多了,自己就自然而然会去用。
6.常用数据库(oracle、mysql等)、sql语句以及一般的优化。
7.javaweb开发的框架,比如spring、ibatis等框架,同样他们的原理才是最重要的,至少要知道他们的大致原理。
8.其他一些有名的用的比较多的开源框架和包,netty网络框架,apachecommon的n多包,google的guava等等,也可以经常去github上找一些代码看看。暂时想到的就这么多吧,1-4条是java基础,全部的这些知识没有一定的时间积累是很难搞懂的,但是了解了之后会对java有个彻底的了解,5和6是需要学习的额外技术,7-8是都是基于1-4条的,正所谓万变不离其宗,前4条就是java的灵魂所在,希望能对你有所帮助。
9.学会使用git。如果你还在用svn的话,赶紧投入git的怀抱吧
相关学习推荐:java视频教程
百度云在海外有服务器吗如何买不要备案的云服务器信息安全等级保护测评工程师原来不是facebook!区块链终端22万元秒下“脸书”域名lianshu.com外贸企业邮箱哪个比较好阿里云购买的服务器怎么使用电脑office2007升级到2010的简单方法【图文】阿里云服务器绑定备案域名解析