在上篇博客中,我解释了自己长时间忘写博客的原因。今天我翻开了长时间没有打开的《代码大全2》,开始阅读起来,在这次阅读过程中,我发现了许多值得摘录的句子,于是我打算做一期文章摘录。
文章摘录
- 首先为人写程序,其次才是为机器。
- 子程序最佳的长度是50-150行。IBM曾经把子程序的长度限制在50行之内。
- 犯错不是罪过,从中学不到什么才是罪过。
- 在调试过程,设定时间,如果超过这个时间,就暂停或者放弃调错过程。知道何时放弃很难,但这是必须面对的问题。
- 与其它行业相比,软件开发行业的经验比书本知识的价值要小。
- 编程工作本质上是项无法监督的工作,因为没人清楚你正在干什么。
- 承认自己智力有限并通过学习来弥补,你会成为更好的程序员。
- 程序员都是大忙人,常常没有时间去考虑怎样改进自己的工作。
- 开发过程能够帮助客户更好地理解自己的需求,这是需求变更的主要来源。
- 如果你不能向一个六岁小孩解释某件事,那么你自己就没有真正理解它。 Albert Einstein。
- 如果你熟悉数据库术语的话,类与对象的关系就如同“模式(Schema)”与“实例(instance)”一样。
- 抽象可以让你用一种简化的观点来考虑复杂的概念。
- 伪代码编程过程(Pseudocode Programming Process,PPP),这种编程过程有助于减少设计和编写文档所需的工作量,同时提高这两项工作的质量。
- 不合理地初始化数据是产生编程错误的常见根源之一。
- 变量名的平均长度在10-16个字符之间。
- 一条很好的经验就是,程序主体中仅能出现的文字量就是0和1,任何其他文字量应该换成有描述性的标示。
- 测试先行的编程是过去十年中所形成的最有用的软件开发实践之一。
- 如果一个错误无法重现,这通常是一个初始化的错误,或者是一个同时间有关的问题,或者是悬空指针的问题。
- 可以在程序执行开始的时候算出一张查询表,在之后每次需要的时候使用这一表格。
- 有效编程中最重要的工作是思考,而人思考时通常不会看上去很忙。
- 以新习惯来代替老习惯,要比干脆戒掉老习惯容易。
在阅读这本书时,我感受到了书中要传达几个原则
- 永远以解决问题为导向,而不是仅仅完成任务。这一条的内容非常广泛,从最低级的写好一个功能,到给具体的需求排优先级,甚至到明确真正的需求,到调整开发节奏,一切都由实际的需求和开发能力决定,最终的目的只有一个,那就是解决真正的问题;
- 把程序员当人看,不仅仅是把其他同事当人看,也要把自己当人看。人是会出错的,团队是需要磨合的,人永远不能跟机器比运行效率,但人比机器更有创造性。
- 写代码永远优先保证其他程序员能看懂,机器不在意代码有多难懂,对它而言,写的格式再差、写的效率再低,机器都能运行——但是其他的程序员(包括过上半个月一个月的你自己)不能;
- 反复迭代和尝试,在实际情况下,人往往做不到一次就成功,即使一次就成功,那也未必是最优的,一定要多进行迭代和尝试,才能获得最优的效果。
- 保持清晰的思路,只有在清晰的思路下,才能理解问题理解代码——如果你已经无法保持清晰的思路,那么还不如先放松一下,让大脑冷静下来,然后完成更高的质量。
标签:当人,机器,代码,编程,笔记,程序员,摘录,大全 From: https://www.cnblogs.com/jiacheng-712/p/16935402.html