翻开曹恒来老师这本《程序设计与应用》,别指望一上来就满屏代码砸脸。先瞅扉页后面那行字。岁月包浆都出来了,大实话。二十五年前老爷子那句“计算机的普及要从娃娃抓起”,这本小册子,就是顺着这根老线头,一寸一寸织出来的。作者脾气挺倔。现在谁还玩那些门槛高得离谱、语法绕成死结的现代语言?他偏不。就挑Free BASIC。Windows上跑得欢,Linux里也吃得开。语法呢?留着当年Quick BASIC那股子干脆利落的劲儿。乍一看,嘿,不就是换个趁手的家伙事儿?可你往后翻。咂摸两下。味儿不对。作者往里塞的,真不是代码。是一套怎么把烂摊子理顺的脑回路。
全书八章。不多。从最基础的语法起笔,一路铺到数组、函数,最后稳稳落在常用算法上。市面上那些编程入门书,干的全是编字典的活儿。今天塞变量,明天扔循环。你背得滚瓜烂熟。真碰上事儿,照样抓瞎。语法是死的。逻辑是活的。这话老套,但理儿是这么个理儿。这书不玩虚的。劲儿全使在算法设计上。它不催你赶紧敲出个能跑的程序。反倒勒令你停手。把眼前的烂摊子,掰开,揉碎,摊平了看。手里一堆数据。是挨个儿顺一遍?还是先分门别类?是套娃似的递归?还是转圈循环?作者不跟你扯空话。全拿Free BASIC给你落地。那些干巴巴的选择题,最后全变成你手指头在键盘上,实实在在的嗒嗒声。
手指头在屏幕上停了停。心里直打鼓。咱们平时碰上烂摊子,十有八九是手忙脚乱地满世界找工具。谁耐烦先捋逻辑?这书,简直就是一面照妖镜。专挑脑子里那些毛躁的缝隙照。讲数组那节,作者不堆内存地址的枯燥数据。反手一个“排队领资料”的比方。连续存储那点事儿,一下子就在脑子里扎了根。过程和函数那儿,更绝。把“封装”这词儿,直接从代码里拽出来,扔回咱们过日子的情境里。活儿太繁琐?打包成标准步骤。一次定好规矩。往后直接抄作业。说实话,刚翻到这儿,我直撇嘴。以为又是教敲代码的野路子。转念一想。这哪是写程序。分明是手把手教咱们给生活做减法。当然,你要是个能徒手搭微服务的老手,翻这本可能会觉得小儿科。正常。但对我这种写个自动化脚本都得百度半天的人。这书,就是及时雨。
书里原话写得挺实在:“全书突出算法设计思想,努力使其成为一本小读者们爱看、好读、易懂的程序设计书。”看着平常。真往心里琢磨,门槛可不低。人家直接把“易懂”,顶在“炫技”前头。写代码,压根不是背字典。是搭积木。你慢慢习惯用过程把代码拢起来。拿函数把变量隔开。练的,其实是给自己划底线。往后扯远点。管项目。排时间表。甚至处理人际关系。底层的门道,全是一个模子刻出来的。把一屁股烂账,顺着清楚的规矩捋一遍。最后总能吐出个准信儿。算法,哪是什么冷冰冰的数学题。它就是你把一团乱麻,慢慢理顺的那份耐心。
我以前也犯轴。总觉得啃编程,就是为了将来当工程师,或者去竞赛里捞个奖。书一合上。咂摸出不对味儿了。这玩意儿,根本不是什么敲门砖。是块磨脑子的粗砂纸。Free BASIC,顶多算个引子。真正攥在手心的,是那股子“遇事不抓瞎,先画流程图再上手”的稳当劲儿。它没拍胸脯保证你马上能憋出个惊艳的大软件。但会不动声色地,把你面对未知时的慌劲儿,一点点压下去。可能有人嫌这观点太慢热。正常。但在现在这个什么都求快、动不动就套AI模板的环境里。能慢下来,捋逻辑。反倒成了稀缺本事。
现在回过头瞅。咱们平时光顾着抢着给答案。早把给问题排先后顺序,扔脑后了。这书塞给普通读者的,真不是哪段能直接扒下来复用的代码。是一种肌肉记忆。把大块头麻烦,拆成小台阶。下回再被什么破事儿缠得死死的。别急着砸键盘。先琢磨琢磨。要是把它当道算法题。第一步,先把啥玩意儿扔进数组。又该拎哪个函数出来干活。逻辑要是顺了。剩下的,无非是手指头往回车键上,那么一磕。事儿,就这么办。