git-hyw / mini-spring

mini-spring是简化版的spring,在尽可能保留spring主要功能的前提下,代码简单明了,是学习spring源码的参考项目

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mini-spring

关于

mini-spring是简化版的spring。写作该项目的目的有二,一是加深本人对spring源码的理解;二是引导小伙伴更好地阅读spring源码。

对于想要阅读spring源码来提升内功的小伙伴来说,直接阅读spring源码不是一个很好的选择。spring是一部设计精良的机器,从外部来看,它优雅、强大又简单易用;从内部来看,它包含众多的部件,细节繁多。如果直接阅读spring源码,很容易陷入到繁多的代码细节之中,理不清代码层次,打击读源码的信心。如果在阅读之前,先了解spring的设计**、模块设计和代码层次等,然后带着这些知识再去阅读spring源码,将事半功倍。

本项目既然是简化版的spring,不追求功能完备,只追求尽可能保留spring的主要功能的前提下,代码简单明了。本项目结合本人阅读spring源码的经验,一步步实现带IOC和AOP功能的迷你型spring,部分实现逻辑会适当简化方便理解。

如何使用

每个功能点对应一个分支,切换到功能点对应的分支,了解新增的功能,改动点在changelog.md文件中描述。

参考

About

mini-spring是简化版的spring,在尽可能保留spring主要功能的前提下,代码简单明了,是学习spring源码的参考项目

License:Apache License 2.0


Languages

Language:Java 100.0%