当初搜java自学需要多久的时候,网上说法乱糟糟的,有人说两个月足够上岗,还有人说至少一年打底,我抱着侥幸的心思就一头扎进去了,完全没掂量自己每天能拿出来的时间。

白天要上班,下班到家吃完饭收拾完,能坐下来看书敲代码的时间一般也就两个小时左右,偶尔加班,当天的学习计划直接作废。最开始那半个月劲头很足,对着基础语法视频跟着敲,变量、循环、判断这些看着都还好,敲示例代码的时候也能跑通,那时候还天真觉得,进度应该会比预想的快不少。

卡在面向对象那块很久。

视频里讲类和对象、继承多态,跟着敲例子能运行,换个题目自己动手写就卡住,盯着编辑器发呆,不知道该怎么拆分功能。反复倒回去重看视频,笔记记了满满一页,合上笔记脑子又是糊的,有时候一个晚上耗在一小段代码上,改来改去全是报错,到最后也没理清楚逻辑,关掉电脑的时候心里闷得慌。那段时间进度直接慢下来,两三天才能啃完一小节内容,之前预想的节奏全打乱了。

后面接触集合、异常这些内容,稍微顺了一点,但也只是看得懂别人写好的代码,自己从头搭建东西还是费劲。跟着教程搭简单的项目,复制一部分代码,一点点改参数,调依赖,中间碰到包导入失败、版本不匹配的问题,网上翻帖子试各种办法,有的问题折腾一两个小时才能解决。很多知识点不是学一遍就能稳住,隔个两三天不碰,再回头看,好多写法又生疏了,得重新翻之前写过的demo。

一起在网上打卡学习的那个人,进度比我快得多。他不用上班,白天整块时间都能用来学,差不多两个多月就摸到框架部分,能独立写点小demo。偶尔聊起来,他还劝我加大投入时长,说每天学够四五个小时才叫有效学习,我那时候有点焦虑,甚至想过压缩睡觉时间多敲一会,试了两天,晚上脑子昏沉沉的,敲代码错一堆,第二天上班状态也差,索性就放弃硬挤时间的想法了。

学到框架的时候,又是另一重门槛。Spring那些概念堆在一起,一开始根本摸不透各个组件之间怎么配合,照着教程一步步搭建,项目能启动起来,但问我每一行配置到底起什么作用,大半都说不清楚。我没有急着往更深的内容钻,就反复拆那个简单的demo,改一点东西看运行结果有什么变化,慢慢才摸到一点感觉。

算下来前前后后,断断续续耗了快半年。不是每天稳定学习的半年,中间有不少天完全没碰,到现在的状态,也就勉强可以独立写简单接口,复杂一点的业务逻辑还是要查资料、翻之前存的示例代码。

这只是我自己的情况,换个人节奏肯定不一样。

现在打开收藏夹,还能看见当初存的那些时间表,早就不去对照着看了。