202110心得


1
2
3
while(2021年5月25日往后的10天) {
读书 > 笔记[typora] > 发表心得[hexo] > 准备好第二天想看的[typora]
}

day 1

把书翻了出来,半天没找到,原来是垫显示器打游戏去了。。。。。。
然后简单看了下前沿,找了下感觉,似乎闻到了知识的香气,就说1点了要睡觉了!

day 2

依赖倒置原理、依赖反转模式、依赖注入。。。

day 3

IoC容器的实现组成:资源Resource(好比水)、容器BeanFactory(好比提桶跑路)、容器ApplicationContext(好比提保温桶跑路)

day 4

BeanDefinition资源的定位(好比找水)、读取(好比挖水)和注册(好比吧水装进桶)过程是分开进行的。

day 5

找水:FileSystemXmlApplicationContext的构造函数调用refresh -> AbstractRefreshableApplicationContext对容器进行初始化
初始化包括销毁和创建过程,并按照集合(是、否)、类型(classpath、url..)的维度进行了处理。

day 6

打水:简单看了下打水过程,主要是围绕BeanDefinition的解析

day 7

打水:感觉看着很枯燥,然后就想要换一种方式,遂看了看知乎怎么看技术类书籍,说要带着问题去找答案,可是问题很多感觉没有头绪呢?
遂又想到是否要通过画图的方式帮助梳理知识?就去了在线画图网站。咦?结果发现这个网站上有别人梳理过的图额,就直接打开看了。
遂又想到是否可以通过这些图直接看看源码?结果一试,这种对着流程看源码的方式感觉还行,至少直接通过看书理解得更轻松更有层次了,8错8错。

day 8

打水:照着图跟到看了一下便IoC打水的过程,混了个脸熟

day 9

照着书上的模板方法getResourceByPath调用关系图,用IDEA在工程里往上游走找到refresh()。发现还能这样玩,怪不得人与人之间的差距比人与狗的差距还大!
记几个几天看到的idea-mac快捷键:

  • 类层次结构:control + h 可用于查看所有父类
  • 方法层级结构:control + option + h 可用于查看指定方法调用和被调用关系
    (PS:这里有一个坑,就是如果idea没加载到源码jar包就不会被以上结构搜索统计到。。。解决方法是点那个Download下载源码jar包!)

day 10

十天已到,完结喜悦
回看这十天,从最初的书都找不到,到最后的小有所获,还是挺意外的。
看来,坚持还是有意义的,至少给了所谓的希望。

咳咳。。。矫情了。。

那么,十天不长也不短,挺合适的,所以打算下一个计划也订个十天左右。
首先还是来个小目标吧?不然挺没劲的?

下个计划:实现一个自己的IoC容器?
首先要把书上IoC的内容看光吧,也不细看,否则强行细看效果也不好,一共剩56页,至少要看5、6天了:

  • 第一天通读一遍可以找找关键字:KeyWords
  • 第二天看书找问题:Problem
  • 第三天继续看书找问题:Problem
  • 第四天尝试通过网页搜索答案:Answer
  • 第五天尝试在在书里面找答案:Answer
  • 第六天尝试解决剩余疑难问题:Answer

然后还是要有个方案哦,无脑瞎写容易走远哦。。

  • 第七天设计自己的实现方案:Plan
  • 第八天完善自己的实现方案:Plan
  • 第九天尝试添加必要图如类图:Plan

搭个架子的时间还是给充分

  • 第十天开始搭一个项目架子:Code

单侧搞起走

  • 第十一天开始写测试案例:Code

剩下的其实就很简单了。。

  • 第十二天开始写代码咯:Code

回顾哈

  • 第十三天基本结束了,小结:Done