文档章节

java成长之路

邓小峰
 邓小峰
发布于 2012/09/05 16:54
字数 833
阅读 286
收藏 18

第一步:
你首先得清楚jdk里面的大部分类,最好都读过源代码
java.util
java.util.logging
java.util.regex
java.util.concurrent

java.sql
java.lang
java.lang.ref
java.lang.reflect
java.lang.management
java.math
java.nio
java.text
java.rmi  ----基本没什么用
java.security
JSP  了解基本语法,最重要的是了解怎么被编译成servlet
SErvlet 了解起规范,了解怎么加载,生命周期什么的
对其中大部分的类都比较熟悉,知道有什么方法,知道每个方法的大致作用和实现原理(要读jdk源码那么恭喜你),你基本功已经过了

第二步:
理解字节码、虚拟机、classload机制、Class和Package类,由此派生tomcat和resin的工作原理,能大致弄清楚,恭喜你,你知道不少了,java的原理,你基本明白了。其中你能把tomcat源代码读一遍就最棒了,classload、servlet、jsp都在这个tomcat里面给包进去了,过程中,你自然理解什么是servlet了,为了搞清楚,你必然要去读servlet规范和jsp规范了,要去学习编译原理了,要去了解怎么把字节码load进去vm中去,自然要了解sockt、线程、线程间通信这些知识,如果到了这层,恭喜你,你对java已经有比较深入的理解。

第三步:
理解socket、线程、编解码、tcp协议、尤其是http,对协议比较深入的理解过,那么你应用的难关已经过了;这时候主要是用,用socke写个聊天程序,写个udp程序,写个tcp程序,做个长连接例子,做一个异步TCP/IO,操作一下文件,自己写个小的http服务器,在tcp和http协议上,自己定义和包装一个应用协议,都是很好的锻炼。

第四步:
你应该了解存储,DB的原理,你知道一个DBMS的大致实现原理吗?你知道一个NOSQL的大致原理吗?如果这个理解了,你对存储和数据组织结构已经比较了解,那么什么sql turning已经难不倒你了;nosql你也不会只停留在一个名字上了,这个过程的最好方法是就把一个开源的nosql和开源的小型dbms彻底把代码读一遍

第五步:
实践!实践!再实践!把你学的,理解的全部用上去
其中你会学到流程、项目管理、重构、敏捷、沟通、汇报、任务分解等等知识;怎么跟QA打交道,怎么测试等等
其中你会学会linux基本操作,能略懂c++debug更好,shell等

第六步:

如果你想了解外面的java动态,深入的读一下潮流的框架,未必不可,spring、struct、ibatic都可以去读读,有了前面的基础,这时候你是很容易读懂的了。xmlparser、httpparser你都可以去读读,了解怎么分析语法树;ant、lucence、jutil、webservice、soa什么的你都可以去了解扩宽了,因为他们都是利用你上面的基础知识来运用了,各种各样的思想在实践中锻炼和总结

第七步:
总结提升,从大量的源代码的阅读和实践中,抽象出你的理解,用模型来总结,那么GOF的DESING PATTEN你无师自通了

© 著作权归作者所有

共有 人打赏支持
邓小峰
粉丝 26
博文 38
码字总数 17272
作品 0
广州
高级程序员
私信 提问
所有java开发人员警惕!!!

最近,在开源中国有这么一帮人,各种小号,发表一些标题文 比如:java成神之路、高级java成长...、架构师怎么....、类似的文章等等 文章前面一堆不知道哪里弄来的技术文,或者IT男的故事文,...

君千殇520
2017/07/04
9.4K
45
《成神之路-基础篇》JVM——JVM参数及调优(已完结)

Java内存模型,Java内存管理,Java堆和栈,垃圾回收 本文是[《成神之路系列文章》][1]的第一篇,主要是关于JVM的一些介绍。 持续更新中 JVM参数及调优 JVM实用参数系列 成为Java GC专家(5)...

2018/05/05
0
0
《成神之路-基础篇》JVM——JVM内存结构(已完结)

Java内存模型,Java内存管理,Java堆和栈,垃圾回收 本文是《成神之路系列文章》的第一篇,主要是关于JVM的一些介绍。 持续更新中 参考文章: Java虚拟机的内存组成以及堆内存介绍 Java堆和栈...

2018/05/05
0
0
滴滴裁员2000,赔偿方案已出!程序员:我很开心!

上周,滴滴CEO程维宣布:正式做好过冬准备!整体裁员比例占到全员的15%,涉及2000人左右。 据了解20日补偿方案如下:补偿一般为N+1个月,如果本周能确认,再额外给一个月补偿——有滴滴员工证...

程序员小灰
02/28
0
0
Java 成神之路交流群!期待你的加入!

《Java 成神之路》 专注 Java 相关技术,包括 Java Core,Spring Cloud 全家桶,Spring boot,SSM,微服务、数据库、缓存、JVM、Java 并发、分布式。 现在提供两种交流的方式:微信群 和 QQ...

chenssy
2018/09/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java单例模式学习记录

在项目开发中经常能遇见的设计模式就是单例模式了,而实现的方式最常见的有两种:饿汉和饱汉(懒汉)。由于日常接触较多而研究的不够深入,导致面试的时候被询问到后有点没底,这里记录一下学习...

JerryLin123
昨天
2
0
VSCODE 无法调试

VSCODE 无法调试 可以运行 可能的原因: GCC 的参数忘了加 -g

shzwork
昨天
4
0
理解去中心化 稳定币 DAI

随着摩根大通推出JPM Coin 稳定币,可以预见稳定币将成为区块链落地的一大助推器。 坦白来讲,对于一个程序员的我来讲(不懂一点专业经济和金融),理解DAI的机制,真的有一点复杂。耐心看完...

Tiny熊
昨天
4
0
5.线程实现

用于线程实现的Python模块 Python线程有时称为轻量级进程,因为线程比进程占用的内存少得多。 线程允许一次执行多个任务。 在Python中,以下两个模块在一个程序中实现线程 - _thread 模块 th...

Eappo_Geng
昨天
4
0
ServiceLoader

创建一个接口文件在resources资源目录下创建META-INF/services文件夹在services文件夹中创建文件,以接口全名命名创建接口实现类 内容me.zzp.ar.d.PostgreSQLDialectme.zzp.ar.d.Hype...

Cobbage
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部