读《代码整洁之道》有感

本周我开始阅读Robert C. Martin所著的《代码整洁之道》一书,希望能从中收获高效编写代码的诀窍,因为我自认为我的代码有时候比较糟糕,不太容易维护。一方面,是我没有养成良好的编程习惯;另一方面,我不太清楚什么才是真正整洁的代码。下面是我本周阅读的心得,与大家分享一下,希望能给志同道合的人以启迪。

糟糕的代码

本书中介绍了20世纪80年代末的一个公司倒闭的原因,起初,那家公司写出了一个很流行的杀手应用,以至于许多专业人士都前去购买,但是,就因为他们急着推出产品,而把代码写得乱七八糟,最后再也没办法管理他们的代码,用户数量也就日益减少,最后这家公司就关门大吉了。

看完了这个故事,我产生了深深的恐惧感,代码写得糟糕竟然会产生这么严重的后果,回想自己原来编程时的恶习,我就倒吸一口冷气。我记得在刚刚开始学编程时,老师曾经告诉我们初学者就要尽量给自己的代码写注释,这样写出来的代码的可读性比较高,而且在代码出bug时,可以较为方便的找到bug的所在。但是,我觉得写注释太麻烦了,所以经常省略这一环节,结果就是当代码出问题时,我就只能从头开始找bug,投入大量的时间才能真正解决问题。更严重的是,我一旦长时间没有接触自己的代码,就会遗忘自己的思路,以至于看不懂自己的代码......

想到这里,我决定以后要努力改掉这一个坏毛病,否则虽然在写代码时虽然可以节省较多的时间,但是代码一旦出了问题,我所需要的时间往往是成倍的。现在 我们毕竟还是学习为主,所以很少需要维护自己的代码,但是将来一旦走上工作岗位,维护自己的代码将会变成家常便饭,因此,写下注释有助于快速理解自己的编程思路,这会让自己成为一个高效的程序员,将更多的时间投入到开发新产品上,而不是永无止境的debug上。

当然,代码的好坏也不是仅仅由是否写了注释来进行判断,更重要的是代码的逻辑需要直截了当,尽量减少依赖关系,使之便于维护。这就需要程序员在编写程序时拥有清晰的头脑,对所需要解决的问题使用最简洁的算法进行处理。在这些方面,我还有好多东西需要学习。

童子军军规

这是书中很有意思的一个点,虽然作者只用了寥寥几笔就交代完了这一部分内容,但是我感觉还是让我有所思考的。

美国童子军有这样一条军规——让营地比你来时更加干净。

许许多多的团队在将一个项目搞砸之后,往往是想从头开始,因为一个空白的项目看上去无比干净,对于这些团队来说,他们可以用这个空白的项目做很多不同的设计。但是,即使他们利用这个从头开始的机会能够取得成功,也已经浪费了大把的时间和经历。那么,为什么这些团队在一开始时就能注重代码是否糟糕的问题,并且一边开展新的方向,一边优化原有的代码呢?这样即使的解决问题,就不会出现压垮骆驼的最后一根稻草。

对于自身而言,我将来在进行团队项目时,也要注意这些问题,取好每一个变量名,拆分有些比较长的函数,不断消除重复的代码,清理一些嵌套的if语句,甚至是采取更加合适的数据结构或者算法,不断地是我的代码变得整洁,成为易维护,可读性高的优质代码。

原文地址:https://www.cnblogs.com/rjgcqth/p/8869964.html

时间: 2024-10-26 12:59:19

读《代码整洁之道》有感的相关文章

读<反欺骗的艺术>有感

月初收到了csdn寄来的书<反欺骗的艺术 ---- 世界传奇黑客的经历分享>. 之后就把书放床头, 每天晚上看上一会.直到今天, 才看完了这本书.挺有感触的. 之所以当初选择看这本书, 完全是被作者吸引来的.凯文·米特尼克((Kevin David Mitnick,1963年-),出生于美国洛杉矶,有评论称他为"世界头号黑客".他在15岁时就破解北美空中防务指挥系统成功,在他16岁时就被逮捕,他也因此而成为了全球第一名网络少年犯.)而如今, 这位历史上最令FBI头痛的计算机

一本好看的书————《反欺骗的艺术——世界传奇黑客的经历分享》

??      參加了csdn举办的活动,我有幸得到了这本书--<反欺骗的艺术--世界传奇黑客的经历分享>.该书的作者可谓大名鼎鼎(以前臭名昭著),他叫米特尼克,号称世界头号黑客.以前有着"显赫的战功",以前是历史上最令FBI头痛的计算机顽徒之中的一个.刚刚拿到这本书的时候,觉得这是一本写黑客供方技术的书籍.细致读了几页发现书中讲了黑客技术中"人的因素".的确,眼下的技术的发展趋势,让我们越来越重视技术本身.而一个个残酷事实告诉我们,现实生活中安全问题是

《反欺骗的艺术》读后感

为了配合CSDN的读书送书活动,在收到此书后第一时间就翻阅起来,正好利用3天假期时间进行了阅读并写下这篇读后感,假期也因此变得充实起来. 书的全名为<反欺骗的艺术--世界传奇黑客的经历分享>,原书的作者是有世界第一黑客之称的米特尼克,而译者为我们所熟知的潘爱民博士,从作译者的强大阵容来看,相信这本书的质量一定上乘. 当我刚拿到书的时候,看到这本书的书名--<反欺骗的艺术>,觉得有点茫然,不知道这本书究竟是讲什么方面的内容,而当我看了序言以及里面的"故事"的时候,

《反入侵的艺术——黑客入侵背后的真实故事》书评

说是书评,但限于本人词穷,表达能力也有限,叫读后感或许更好一些. 一. 前言简介 凯文·米特尼克(Kevin David Mitnick),世界范围名声最大,影响最高的黑客,没有之一. Mitnick也许就是黑客的代名词.美国司法部仍然指责他为"美国历史上头号电脑犯罪通缉犯".他的所作所为被记录在两部好莱坞电影当中:<Takedown>和<Freedom Downtime>. 15岁时,Kevin Mitnick用打工赚的钱买了一台计算机,当他"闲逛&

我读经典(6):读《文明之光》有感

什么是文明?如果突然问大家这个问题,那么你可能会不知如何回答,感觉这是一个只可意会但不可言传的概念. 在新书<文明之光>中,吴军老师为我们带来了答案.继<浪潮之巅>和<数学之美>之后,吴军老师又出力作<文明之光>,将世界各地的主要文明为我们一一呈现和讲解.整套书现在出了第一册和第二册,加起来一共有16章.在这16章中,作者基本按照时间的顺序,从最古老的古埃及文明讲起,一直到美苏在航天方面的竞争为止,为大家展示了一幅生动有趣的历史画卷.全书文笔流畅.语言优美.

读《何谓文化》有感

一.文化到底是什么? 最近在看余秋雨先生写的<何谓文化>,虽然自己也没有什么文化,但是感觉还是从中学到了一点东西,想要记录下来,.也让我开始思考一些生活中的文化. 既然说何谓文化,那就需要对文化来做一个定义,余秋雨先生的定义是:文化,是一种包含精神价值和生活方式的生态共同体.它通过积累和引导,创建集体人格. 这个定义里面有几个关键词语,分别是精神价值.生活方式.集体人格.我们经常会听到这样一个词语,文化差异,可是这个文化差异的直接体现就是在精神价值和生活方式上.经常会听到不少跨国婚姻,因&qu

读《软件随想录》有感

今天拿到Joel的<软件随想录>,读了一个章节,章节题名--我的第一次BillG审查. 这个章节中,Joel讲述了他在微软任职"excel"Program Manager时的经历.这里说到的BillG审查,说的就是比尔盖茨会审查报告.众所周知,比尔是个程序员出身的Boss,在微软中一直扮演的就是教父级的人物.但是好像看来这个BillG审查有点事必躬亲的味道. 今天,我们已经反复地通过各种论点来支撑了,一个Boss事必躬亲必然会导致其他职业的无能.但是Bill为什么还要审核,

我读经典(4):读《打造Facebook》有感

我第一次听说Facebook,是在用了国内的人人网很久之后.从上大学到研究生毕业,我几乎每天都要上人人网,发发日志.照片,看看其他同学有什么动向等等.个人感觉人人网使用起来非常的方便,拉近了人与人之间的距离,比QQ舒服多了. 某一天,我读到了一篇文章,主题是有关人人网的.文章里面说,人人网是中国的Facebook.这时,我便对Facebook产生了兴趣,接着上网去百度了一把,才知道它是全球最大的社交网络,于2004年2月4日正式上线,其主要创始人为美国哈佛大学的辍学生马克·扎克伯格(很有意思,比

知物由学 | 基于DNN的人脸识别中的反欺骗机制

"知物由学"是网易云易盾打造的一个品牌栏目,词语出自汉·王充<论衡·实知>.人,能力有高下之分,学习才知道事物的道理,而后才有智慧,不去求问就不会知道."知物由学"希望通过一篇篇技术干货.趋势解读.人物思考和沉淀给你带来收获的同时,也希望打开你的眼界,成就不一样的你.当然,如果你有不错的认知或分享,也欢迎通过邮件([email protected])投稿. 以下是正文: 本文作者:ArturBa?maga,YND的AI专家. 想象一下,只需使用脸部即可解

第8周读书笔记-读《编程珠玑》有感

读<编程珠玑>有感 <编程珠玑>(后文简称<珠玑>)在序章中就开宗明义地提出了两个问题:一个是如何对实际问题进行抽象,找出问题的独特性质.二是一个富有意思的小题目:"如何在1MB内存内对0~10^7内若干元素组成的集合内的整数进行排序(10s内)".一开始我想到的是归并排序,但是书中提出可以利用位图的位向量,不用考虑任何排序算法,只需要遍历两次即可,忽然就有茅塞顿开之感,从这个简单的例子中就可以对一些思想窥见一斑:位图数据结构.简单的设计.时间-空间