两年前,我跟一个朋友说,你该把 Java 后端的核心基础 Spring 趟实了。两年过去了,这个朋友说,他依然在趟这个基础。这给了我一个很大的问号,这是这基础不对,还是说这种方式有什么问题,为什么他就不能在两年的时间里迭代式成长呢?他也一直很想学习一些东西啊,也一直在学习 Spring 这种基础啊,为什么感觉就是永远都学不会或者学不完这个基础呢?
其实很多时候,我们并不是 "学不会",也不是 "学不完",只是我们没有意识到我们在不同的阶段会遇到不同的槛。从对于他的分析中,我对他说了这么三个阶段,也有三个槛,就是没有对于这三个阶段的准确认识,他一直以为他处于基础踏实阶段,但是却经常在业务服务阶段和协同合作阶段来回切换,这对于他的工作效率有非常大的阻碍作用。他在最近两年的时间里,就在 "学不会" Spring 的死循环里跑不出来,这个认知阻碍了他的成长,就是下面这三个。
基础踏实阶段
认认真真把基础知识学习好,为期大概 3-6 个月,把平时使用到的能产生 80% 效用的 20% 关键知识点踏踏实实认识学习清楚,按照某种学习脉络,把基础知识学习踏实。这里要认真认识到,我们学习的肯定是那 20% 最关键的部分,而且要以脉络学习,为大树添枝加叶,而不是为篝火捡树枝。
业务服务阶段
这个阶段,可以认为基础踏实阶段已经把 20% 学习得比较好了,可以暂时放在旁边一小段时间了,至少在思考的时候要放下。这个阶段思维模式要有一阵转变,对于业务中使用到的任何技术,都应该是不惑的程度,不要经常性地钻入到基础踏实阶段的牛角尖里边,认真思考关于业务需求、业务流程、模型、安全、部署 等方面的事情。
协同合作阶段
协同合作阶段,主要是关注合作伙伴的状态是否满足预期,关注对于团队成员的公共贡献,关注自己对于整个项目的整体的贡献。需要自己实现的业务逻辑那就自己实现,需要帮助被人设计的就帮助别人设计。这个阶段可以认为 80% 的业务需求对于你来说都没有什么大的难度了,驾轻就熟适当,任何需求在你眼中都是在一瞬间就能描述出流程、逻辑、部署事宜,不需要太多关注。
不同的阶段,我们有不同的思维模式,也有不同的努力点,别让这些槛阻碍着你的迭代式成长。基础踏实阶段关注基础,业务服务阶段关注实现路径,协同合作阶段关注伙伴。可以不断迭代踏实更加深的基础,但不要在同一时间来回切换,影响效率,原地踏步,阻碍自己的迭代式成长。
以上,尝试下短文