只会框架,没有自己的认识,这是一个初入行的常见状态。不能什么都等着别人教。
首先,要找出原因。我前几天问过一个学生:spring中最核心的东西是什么?他回答说,是AOP和DI。我告诉他,你这是背书,这实际上不是最关键的东西,AOP和DI是手段,不是最根本的。我一般会发问:这个技术的根本目的是什么?为什么要设计出这个技术来?最原始的出发点是什么?比如,为什么BeanFactory和ApplicationContext被称为spring的核心容器,它的起什么作用,为什么要这样设计?解决什么实际开发问题?显然,spring上面是MVC,下面是持久化层,MVC和spring交互Model,持久化层与spring交互POJO类。Model和POJO都要转换成Java Bean,那么怎么生产出Bean?怎么才能更好地生成Bean?在项目开发中,怎么才能满足低耦合高内聚?等等,诸如此类问题,这样才能将泛型、反射、JVM、类的设计方式、类的生命周期等等知识贯通,而不是背书,人云亦云。
其次,要拟定行动方案。这个以后再写。
最后,要进行总结,举一而返三。这个以后再写。