老冒妙语录(四)
J 单靠记忆只能触及知识之表,单靠练习只能深入知识之里,唯有培养方能渗透知识之根。
J 学会适度地容忍无知。
J 不仅需要强调钻劲和深度的“钉子精神”,还需要强调磨功和广度的“刨子精神”。
J 编程语言的语法、语义等都是从编程范式的树根衍生而出的枝叶,把握了这种脉络和节奏,代码才会如音乐舞蹈般韵律有致。
J 每种范式擅长的问题领域不尽相同,只有博闻广识,方可扬长避短,程序才会如行云流水般流畅自然。
J 程序员更习惯机器风格的过程式思维和现实风格的OOP思维,不容易接纳数学风格的函数式思维。
J 评价代码的复杂度,长短只是一个因素。程序员不是打字员,花在思考上的时间和精力远远超过花在键盘上。
J 算法=逻辑+控制。其中逻辑是算法的核心,控制主要用于改进算法的效率。
J 设计模式好比组合套路,能在一些特定场合下克敌制胜;编程范式则好比武功门派,博大精深且自成体系。
J 一种编程范式之所以能独树一帜,关键在于它突破了原有的编程方式的某些限制,带来革命性的新思维和新方法,进一步解放了程序员的劳动力。
J 因其长而容己,因其短而容他,此万物之理也。
J 语言为形,范式为神。若能以神导形、以形传神,则看似平白无趣的程序也能写出诗画般的意境。
J 厨师只须提供一种服务:把纸上菜变成盘中菜,至于蒸、煮、炒、炖等具体做法纯属实现细节。
J 可以这么理解(闭包):所谓包,指函数与其周围的环境变量捆绑打包;所谓闭,指这些变量是封闭的,只能为该函数所专用。
J 合理地使用闭包能使代码更加简洁清晰,散发出函数式特有的优雅气质。
J 换盘子有两种方式:一种是服务员主动换,一种是客人要求换。前者是轮询,后者是通知。
J 如果把待加工的菜看作数据,技法看作算法,将数据与算法分离,以算法为中心,那是什么范式?
欢迎转载,转载时请注明:
本文出自电子工业出版社博文视点(武汉)新书《冒号课堂——编程范式与OOP思想》。