刚入行那阵子,我特怕碰那种厚得能当防身武器的大部头。第一章死磕环境配置。第二章直接甩框架原理。翻到第三章,我盯着屏幕的颈椎都快断了。那时候脑子轴,总觉得学编程跟砌墙似的。非得把地基底下每一块砖都严丝合缝码死,才敢往上垒。结果呢?砖没立起来,人先被图纸压趴下了。这事儿大概就是这么个意思:越怕错,越动不了手。
覃国蓉这本《基于工作任务的Java Web应用教程》,开篇没整那些虚头巴脑的架构大饼。反手让你先敲个静态的宠物分类页面。没连数据库。没写后端。纯靠HTML和CSS打底。我刚翻开头几页直皱眉:就这?连个交互都没有,Java Web的魂呢?耐着性子往下扒。书里直接把活儿拆成了九个工作任务。第一章先摆静态页。第二章加JSP和EL表达式,让干巴巴的图能吐数据。接着塞进JavaBean理顺逻辑。最后才慢慢把Struts、Spring、Hibernate这些大块头请上桌。我算看明白了。作者没打算第一天就逼你写出大师级代码。反倒允许你留一堆粗糙但能跑的半成品。
我平时接需求,谁不是一上来就画微服务架构图、盘数据库表?脑子跑得太快。手却连第一行代码都敲不下去。这书的路子,其实挺反常识的。看着页面上的列表从只能看,慢慢长出增删改查的按钮。那种“哎嘿,让它活过来了”的爽感,确实比灌十杯冰美式都提神。不过话说回来,这种“先跑起来再优化”的法子,未必适合所有场景。要是接那种对性能要求极严的金融级项目,你拿个能跑的半成品去交差?老板估计能顺着网线过来找你。但在入门和练手阶段,我觉得这招真香。
以前带实习生,我总怕他们底子薄,恨不得把底层源码扒开揉碎了喂到嘴边。后来自己栽过跟头才明白。不如先让他们跑个最土的版本。代码是搭出来的,不是背出来的。第一天非得死磕Spring IoC容器怎么转圈?没那必要。你先学会怎么从库里捞数据、塞进网页就行。等你能顺手把数据跑得飞起,再翻框架底层。那些曾经像天书一样的词,自己就跳到你脑子里安家了。这事儿急不得。硬背的架构,风一吹就散。搭出来的逻辑,越改越扎实。
当然,书里这九步排得太满,读着偶尔会喘不过气。真进了公司,需求改得比翻书还快。谁有空按部就班走流程?但这书给的架子,恰恰是个好模板。作者把经典开源项目拆开,做逆向工程。顺手把那些吓人的边角料全剃了,就剩最核心的技术脉络。这么一刀切下去,能看出覃老师是真在讲台上摔过跟头。清楚新手在哪块石头前容易绊倒。可能有些老鸟会觉得太基础。但说实话,很多新手缺的正是这种“不装”的耐心。
翻到末尾,最开始那个只能看的静态页,早就长成了能处理用户登录、订单提交、后台管理的完整系统。底层技术换了一茬又一茬。代码行数也滚雪球似的翻了十几倍。但那条逻辑线始终没断。放下书,API怎么调我倒没太往心里去。脑子里全是那种“先让它跑起来,再慢慢修修补补”的劲儿。往后要是再碰到一箩筐没见过的技术词,或者看着头疼的大项目,我估计得先拍两下大腿,跟自己说:成吧,先从一行HTML开始搭。路是脚踩出来的。代码是键盘敲出来的。别慌,慢慢磨,反而省事儿。