Java 传统行业转向互联网开发

   工作两年来,一值从事 mis方面的开发,基本上做出来的系统不会考虑太多的细节问题,比如说 数据优化,缓存等等一些 并发访问量很大的时候需要考虑的问题。现在公司基本上做的都是些 政府的办公系统,工厂里边的erp系统。而本人对互联网行业比较感兴趣,所以有意向转互联网。如此,在网上搜索了下相关的建议。整理以供相同需要的亲们查看。

   1.Java Core,就是Java基础、jdk的类库,很多童鞋都会说,jdk我懂,但是懂还不足够,知其然还要知其所以然,jdk的源代码写的非常好,要经常查看,对使用频繁的类,比如String,集合类等数据结构要知道它们的实现,不同的集合类有什么区别,然后才能知道在一个具体的场合下使用哪个集合类更适合、更高效,这些内容直接看源代码就OK了

2.多线程并发编程,现在并发几乎是写服务端程序必须的技术,那对Java中的多线程就要有足够的熟悉,包括对象锁机制、synchronized关键字,concurrent包都要非常熟悉,这部分推荐你看看《Java并发编程实践》这本书,讲解的很详细

3.I/O,Socket编程,首先要熟悉java中socket编程,以及I/O包,再深入下去就是Java NIO,再深入下去是操作系统底层的socket实现,了解windows和linux中是怎么实现socket的

4.JVM的一些知识,不需要熟悉,但是需要了解,这是Java的本质,可以说是Java的母体, 眼界会更宽阔,比如Java内存模型(会对理解Java锁、多线程有帮助)、字节码、JVM的模型、各种垃圾收集器以及选择、JVM的执行参数(优化JVM)等等,这些只是在<深入Java虚拟机>这本书中都有详尽的解释,或者去oracle网站上查看具体版本的JVM规范.

5.一些常用的设计模式,比如单例、模板方法、代理、适配器等等

6.常用数据库(Oracle、Mysql等)、SQL语句

7.JavaWeb开发的框架,比如ibatis、spring、struts等框架,同样他们的原理才是最重要的,一定搞清楚

8.其他一些开源框架和包,netty网络框架,apache common的N多包等等

暂时想到的就这么多吧,1-4条是Java基础,全部的这些知识没有一定的时间积累是很难搞懂的,但是了解了之后会对Java有个彻底的了解,5和6是需要学习的额外技术,7-8是都是基于1-4条的,正所谓万变不离其宗,前4条就是Java的灵魂所在,希望能对你有所帮助

你可能感兴趣的:(Java 传统行业转向互联网开发)