代码的第一印象(续):推荐几本经典书籍

简介:         要想写出优美的、高质量的代码,确实不是一件容易的事情。我们都以为在学校里面学的东西已经够多了,但真正拿一个项目给你做,你就会发现自己懂的知识真是“捉襟见肘”。

        要想写出优美的、高质量的代码,确实不是一件容易的事情。我们都以为在学校里面学的东西已经够多了,但真正拿一个项目给你做,你就会发现自己懂的知识真是“捉襟见肘”。

        要想将代码写好,除了实际参与项目之外,我们还可以阅读一些经典的书籍。不是那些说空话、理论性很强的书,而是一些具有实践指导意义、可操作性较强的书。

        在工作之余,我也会阅读一些与工作相关的专业书籍。以下几本书是我正在学习的、并且认为可以推荐给大家阅读的。

        经典书籍一:《高质量程序设计指南(C++/C语言)

        本书已经出了第3版,作者林锐、韩永泉。对于作者的简介,我就不多说了,大家可以去查。推荐大家阅读一下林锐写的文章《大学十年》(http://www.blogjava.net/faintbear/archive/2005/09/09/12515.html)

        本书第3版一共有17,我认为比较有用的是第1章、第10章、第11章、第16章。

         在第1章中,作者就企业中软件开发的实践经验讲解了软件质量、软件开发过程和方法,并表达了对软件开发的一点思考。

         就我个人的经验,在企业里面,软件开发的一般流程是:软件需求评审→软件详细设计→软件单元测试、集成测试方案设计→软件编码→软件测试→软件同行评审→软件版本构建→软件发布→软件运营维护

        在第10章中,作者讲到了文件结构和程序版式。特别是程序版式的相关内容,值得大家认真阅读。做到了版式工整,就能够给别人一个好的第一印象,有利于开发工作的顺利进行。

        在第11章中,作者提到了程序的命名规则,其目的就是要让函数或变量具有自说明性,而不要让读者去猜或花很多时间去研读,从而提高开发的效率。

        在第16章中,作者讲述了内存管理,这在企业里面项目开发过程中经常遇到。在该章的第2节中,作者提及了常见的内存错误及其对策,值得每一个开发人员认真阅读并借鉴执行。

        有关代码的内存管理问题,我个人就有经验教训,在此与大家共勉。在某版本的开发自测过程中,程序每次执行到同一个地方便死掉了,电脑还发出“嘟嘟”的声音。我和开发经理查了一下午,终于将原因找到,原来是执行字符串拷贝的时候,要拷贝的内容长度大于定义的数组长度,而我又没有对字符串长度加以限制,最终导致了程序崩溃的后果。

        对于该书,我已经看完一遍,觉得收获挺多的。我会反复阅读,直至将其中的精华全部吸收,也推荐给大家阅读。

         经典书籍二:《代码大全》

         想必大家都听说过这本书,其英文名是《Code Complete: A Practical Handbook of Software Construction》。在公司里面,经常会有“代码大全”的培训。

 

         经典书籍三:《代码整洁之道》

         该书被评为“开发人员看的11本较具影响力书籍”之一,其英文名是《Clean Code: A Handbook of Agile Software Craftsmanship》。看书名就知道,本书就是要教我们如何写出整洁的代码,给别人留下好的印象,并最终推动开发工作的顺利进行。

 

         对于《代码大全》和《代码整洁之道》,我也还在阅读之中,因此不像第一本书那样了解得比较多。等阅读完之后,再将心得拿出来与大家分享。

 

       “春江水暖鸭先知”,实践是获取真理的一个非常重要的途径。从前辈的实践经验中,我们可以学到如何将工作做好、如何少走一些弯路。为了将代码写好,我们还有很长的路要走,但“海内存知己,天涯若比邻”,你并不孤单。希望大家能够相互帮助、共同提高!
目录
相关文章
|
8月前
|
架构师 测试技术 Android开发
软件测试经典书籍推荐
软件测试经典书籍推荐
191 1
软件测试经典书籍推荐
|
7月前
|
数据库 云计算 Python
不容错过的经典!Python核心编程(第3版)教你用实例学Python!
在学完任何其他入门类的 Python 图书之后,你可能觉得已经掌握了 Python 而且还觉得学得不错,并为此感到自豪。通过完成大量练习之后,你将会对自己新掌握的 Python 编程技能拥有更多信心。 但是,你可能仍然会有这样的疑问,“现在该怎么办?我能用 Python 编写哪种类型的应用程序呢?”或许你是为了一个相当小众的工作项目而学习使用 Python,你可能会考虑“我还能用 Python 写点其他的吗?”
|
8月前
|
JavaScript 前端开发 Go
经典面试题目
经典面试题目
45 0
|
存储 设计模式 编译器
【C++从0到王者】第二十六站:一些经典的多态面试题
【C++从0到王者】第二十六站:一些经典的多态面试题
130 0
|
算法 编译器 C语言
46道嵌入式工程师相关的经典面试题
46道嵌入式工程师相关的经典面试题
247 1
|
前端开发 JavaScript 程序员
分析几道经典但依然超难做的前端面试题
分析几道经典但依然超难做的前端面试题
113 0
|
C++
来源于《高质量C/C++编程》的几道经典面试题
.str传给p的时候,p是str的临时拷贝,有自己的独立空间,当GetMemory函数内部申请了空间后,地址放在p中,str仍然是NULL。当Getmemory函数返回之后,strcpy拷贝的时候,形成了非法访问。
189 0
|
缓存 算法 JavaScript
这些经典的前端基础算法题, 你会做几道?
之前因为工作原因接触了很多有意思的算法知识,为了巩固大家的算法基础和编程能力,笔者总结了8道算法题, 供大家学习参考. 接下来我们来看看题目.
153 0
外行朋友值得一读的5本经典数学书
有很多人让我给外行朋友推荐一些优秀的数学书,他们之中有些是没在大学学过高等课程的,只对学习数学感兴趣的朋友,还有些对历史人物比对数学成果更感兴趣。具有讽刺意味的是,当你是滑铁卢大学数学专业的学生之后,你到第四年才有机会上一门讲述数学历史的课程,会向你解释一些隐藏在数学之后的心态和哲学,而非只是定理和证明。
273 0
外行朋友值得一读的5本经典数学书
|
存储 编译器 C++
重拾C++经典笔试30题(11-20)
重拾C++经典笔试30题(11-20)
178 0