关于源码
学习了:http://www.newsmth.net/bbscon.php?bid=756&id=415935
看过一点源代码。 1、会验证一些设计方面的观点,诸如面向接口编程、低耦合、高内聚、模块化、KISS之类的。 2、工具类方面,可以扩充知识点、加深理解吧,比如集合、字符串、properties、类的实例化、classloader等等,可以弥补自己之前考虑不周的地方。 3、具体到某些spring模块,可以学习spring是如何整合、如何实现的。 比如spring mvc,你可以了解servlet请求到c的映射、参数(数据)绑定与校验、v的解析、v的渲染等各种不同的策略和细节。既可以学习spring mvc是如何整合各种不同的第三方方案的,也可以学习spring mvc自己是如何实现的。 与spring mvc类似的模块,比如orm、数据库事务处理等,其实也可以加深这方面的理解。 4、早期的spring侧重于整合第三方库,但是在spring boot之后,似乎spring boot“重新定义”了如何使用spring,以及如何快速开发、部署java程序。学习源码,可以了解spring boot是如何使用spring的,以及spring boot是如何快速开发的。 5、spring整合了很多第三方库,如果有精力,你可以逐个学习这些第三方库,毕竟,spring能看上的,差不到哪里去。 6、最基础的,可以了解如何实现一个ioc、aop框架。