北京专业的白癜风医院 https://wapjbk.39.net/yiyuanfengcai/yyjs_bjzkbdfyy/1.一个人的常量是另一个人的变量。(甲之常量,乙之变量)
2.函数会延迟绑定(binding);数据结构会诱导绑定的发生。正确姿势:在编程后期再定义数据结构。
3.语法糖(英语:Syntacticsugar,也译为糖衣语法)会引起分号的癌症。
4.每个程序都是其他程序的一部分,因此很少能完全适用。
5.如果程序需要处理大量的数据,那么它处理数据的方式一定只局限于少数几种。
6.对称性这个概念能够降低复杂度(协同例程包括子例程);不要放过任何寻找对称性的机会。
7.编写错误的程序要比理解正确的程序简单多了。
8.如果一种语言的程序需要人们去注意一些不相关的东西,那么这是一门低级语言。(lowlevel)
9.在同一个数据结构上运行个函数要比在十种数据结构上运行10个函数要好。
10.尽早形成习惯:以相同的方式执行相同的过程。积累习惯用语。标准化。莎士比亚与你之间的唯一区别在于习惯用语的多少,而不是词汇量。
11.如果你的程序有10个参数,那你可能是漏了一些。
12.递归是计算的源头,因为它用更长的执行时间换来了描述的精简。
13.如果两个人编写的程序完全相同,则每个人写的都应该拆解成microcode,这样以后肯定就不会完全相同了。
14.从长远来看,每个程序都会变得越来越繁复冗余,最终成为一堆没用的碎片。
15.所有东西都应该自顶向下构建,除了第一次。
16.每个程序都至少有两个目的:一个是写这个程序的原因,另一个不是。
17.如果在你解释自己写的程序时,有听众点头了,那他一定是睡着了,请务必把他叫醒。
18.没有循环和结构化变量的程序根本不值得一写。
19.如果一门编程语言不能影响你对编程的整体认知,那它甚至不值得一学。
20.只要有模块化的地方,就可能会有误会发生:隐藏起一部分信息就意味着需要注意检查沟通的过程。
21.优化会阻碍软件的进化。
22.一个好的系统必须拥有强大的命令语言。
23.要了解程序,你必须同时成为机器和程序。
24.如果我们从小就开始编写程序,那么也许长大以后我们自然而然地就能够阅读它们了。
25.一个人只能在头脑中显示复杂的信息。就像对于视觉来说,移动,流动或视角的改变要远比静止的图片重要,无论图片有多么精美。
26.在我们想要在程序中表达的东西里,永远都会有一些是所有已知语言都无法很好的表达的。
27.一旦你真正了解了编程的精髓,就请其他人来编写它。
28.在计算机行业,很难找到正确的时间单位来衡量进度。某些大教堂花了一个世纪才完成。你能想象一个需要花费这么长时间的程序会有多么大的体量吗?
29.如果要给一个系统的门面翻新,需要在控制图中添加一个能构成循环的边,而不仅仅是新增一个节点。
30.在编程的过程中,我们所做的一切都是某种更通用情形的特例——而且通常我们很快就能体会到这一点。
31.简洁并不会先于复杂性发生,而是在复杂性之后。
32.程序员不应以其才智和逻辑来衡量,而应以案例分析的完整性来衡量。
33.第十一条诫命是“汝可计算”或“汝不可计算”——具体是哪个我忘了。(Theeleventh