成为一名合格的Java工程师,需要掌握哪些基本知识

如果想要成为一名合格的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的怀抱吧
 人工智能、大数据、云计算和物联网的未来发展值得重视,均为前沿产业,有兴趣的朋友,可以查阅多智时代,在此为你推荐几篇优质好文:
1.人工智能时代,AI人才都有哪些特征?
http://www.duozhishidai.com/article-1792-1.html
2.大数据携手人工智能,高校人才培养面临新挑战
http://www.duozhishidai.com/article-7555-1.html
3.人工智能,机器学习和深度学习之间,主要有什么差异
http://www.duozhishidai.com/article-15858-1.html
4.大数据人工智能领域,如何从菜鸟晋级为大神
http://www.duozhishidai.com/article-1427-1.html
 


多智时代-人工智能大数据学习入门网站|人工智能、大数据、物联网云计算的学习交流网站

多智时代-人工智能大数据学习入门网站|人工智能、大数据、云计算、物联网的学习服务的好平台

你可能感兴趣的:(人工智能)