《编写可读代码的艺术》读后随笔

编写可读代码的艺术-读后总结 编写可读代码的艺术 阅读详情

这本书目前读了前 3 章,共鸣的地方还是不少的,比如:tmp 这种“不知道怎么命名时的命名”,对自己平常的工作危害是蛮大的;长名字和短名字的取舍困惑;get方法通常代表轻量级的方法,乱用会导致性能问题等等的坑,自己都掉进去过。


这里总结几点比较印象深刻的:

1. tmp 的使用应该尽可能带后缀 描述场景,并且只用在生命周期较短的时候,且“临时性是其主要因素”的时候;

2. 循环迭代器,通常用 i,j,k 等,但在大段代码里面,多个同时使用往往会降低可读性,如:


for (int i = 0; i < clubs.size(); i++)
	for (int j = 0; j < clubs[i].members.size(); j++)
		for (int k = 0; k < users.size(); k++)
这时候可以用 club_i, members_i, users_i 来避免混淆,或者简化形式:ci, mi, ui

3. 带单位的值,max_length ===> max_chars

4. 长命名和短命名:在小作用域里面,用短命名;在大作用域用常命名

5. 不要用 filter 这种有歧义的名字:究竟过滤掉,还是过滤了然后剩下的;用 min、max 来表示极限(包含边界); first 、last 来表示首尾(含); begin 、end(表示[a,b) 这种包含/排除模式的)

6. 布尔值命名:加上像is、has、can、use或should这样的词,可以把布尔值变得更明确,同时注意不要用反义的,比如:disable_xxx

7. 名字应该承载更多信息,Height(), NumNodes() 比 Size() 更好

8. get*() 这种一般是轻量级的操作,不要随便使用这种命名,比如 getCost 如果流程复杂,性能消耗大的话,应该用 ComputeCost();此外 get*() 的泛滥使用是个坏习惯,比如: GetPage(),无法描述 page 的获取方式,来自数据库? 互联网?,如果是互联网, FetchPage()、DownloadPage() 更好。

Via:

《编写可读代码的艺术》



Cadence Allegro 17.4学习记录开始01-原理图Capture CIS 17.4 Orcad的学习记录 阅读详情

相关推荐

医学图像中的小目标病灶检测难题:我的硕士研究总结与思考

医学图像中的小目标检测和分割,主要指在CT、MRI、超声等医学影像中识别和分割微小病灶或细小结构。这些小目标通常体积小、边界模糊、特征不明显,却往往是关键病灶,例如肺部小结节、脑微出血、乳腺微钙化等。

weixin_45638136的博客 2370

《编写可读代码的艺术》读书笔记(一)

The Art of Readable Code       作为程序员,日常工作的大部分时间都是花在一些“基本”的事情上,像是给变量、函数或类命名,写循环以及在函数级别解决问题。并且这其中很大的一部分就是阅读和编辑(修改)已有的代码。因此,代码是否易于理解就显得尤为重要。《编写可读代码的艺术》(The Art of Readable Code)这本书从命名,排版,注释,循环以及如何拆分长表

e5Max的专栏 3042

Python地理空间库安装指南:从gdal到geopandas的完整流程

本文详细介绍了Python地理空间库的完整安装流程,包括gdal、rasterio和geopandas等核心库的安装与配置。通过Anaconda环境管理和conda-forge频道,帮助开发者高效解决依赖问题,确保地理空间数据处理环境的稳定运行。

weixin_29091105的博客 465

《编写可读代码的艺术》

本书干货很多,许多确实可行的建议,是都是写好代码的必经之路,下面为我总结的导图和部分章节的概述。 很好的一本书,推荐给大家。 总结思维导图 第二章 本章唯一的主题是:把信息塞入名字中。这句话的含义是,读者仅通过读到名字就可以获得大量信息。 使用专业的单词————例如,不用Get,而用Fetch或者Download可能会更好,这由上下文决定。 避免空泛的名字,像...

298

Android GNSS 模块分析(三)JNI 层

Android GNSS;定位服务;GPS;NMEA协议;LocationManagerService;导航;

Yang_Mao_Shan的博客 5161

Unity 接入 Steam 平台

Unity 接入 steam sdk 的登录和应用内购买功能

MarinaTsang的博客 3907

编写可读代码的艺术 读后感

刚入IT软件行业那会儿,带我的师傅 就教授我代码命名很重要,因程序员的英语参差不齐,尽量用通俗 大众化的 词构建对命名,起码让人家移动;项目经理看到 一很生涩的变量,代码命名是非常重要的,起码让维护的系统程序的同事 读懂你写的代码,不然难免 让人家 读的难过,不得不重写你的代码,因此,代码的可读性对别人和自己都很重要。

0808xyj的专栏 1154

基于知识图谱的旅游推荐系统

这一系统整合了当今先进的数据技术:采集携程等大型平台的景点数据,通过爬虫技术源源不断地获取最新的旅游信息。此外,我们采用Neo4j图数据库来存储和处理这些数据,结合自然语言处理技术,为你提供精准的旅游建议。:通过直观的知识图谱展示,了解各个景点之间微妙的联系,无论是文化背景还是地理方位,你都能从中发现新的旅行灵感。准备毕业设计的同学,关注我们,这是一个集成了多种前沿技术的项目,为你的学术成果锦上添花。:不再浪费时间,系统根据你的偏好和历史评分,利用协同过滤技术推荐适合的旅游目的地。

qalangtao的博客-qalangtao.com 774

《编写可读代码的艺术》—— 读后总结

本书与代码整洁之道类似,强调的不是编程的技巧,而是代码编写的注意点。 有的开发者可能觉得自己的代码自己懂就比较好,不在乎变量和函数的命名以及缩进等等,但是这里的别人也可能是几个月后的自己! 因此,代码的可读性对于别人和自己都很重要。 本文内容   本书短小精悍,相比于《代码整洁之道》要薄的多,但是要注意的地方,基本也都讲明白了:   本书的主要内容如下:   ...

xingoo 307

Postman账号

Postman账号一、为什么要注册一个Postm账号二、如何注册Postman账号三、登录账号四、切换账号五、找回账号密码 一、为什么要注册一个Postm账号 注册Postman账号是免费的。当注册并登录一个Postman账号后,用户可以获得一下权限。 (1)同步和备份历史、集合、环境和预置头。 (2)可以轻松处理来自不同机器的多个Postman实例‘ (3)创建集合链接发送给其他开发人员。 当然,不注册也可以使用Postman。 二、如何注册Postman账号 (1)下载、安装Postman应用程序。 (

精益求精,永无止境,永远在路上! 6777

6、基于深度强化学习的无人机路径规划

本文介绍了一种结合人工势场法的改进DQN深度强化学习算法在无人机路径规划中的应用。通过设计合理的网络结构、状态空间、动作空间和融合引力-斥力机制的奖励函数,实现了无人机在复杂环境中的自主避障与目标导向飞行。采用轻量级神经网络提升实时性,并在Gazebo仿真环境中进行训练与测试,结果表明该算法具有快速收敛、高成功率和良好适应性。实验评估指标包括损失函数、最大Q值和任务成功率,验证了方法的有效性。文章还探讨了其在物流配送、农业植保和环境监测等领域的应用前景,并展望了多无人机协同与复杂环境适应性等未来研究方向。

html8的博客 242

《编写可读代码的艺术》读书笔记

前言 1. 代码应当易于理解 第一部分 表面层次的改进 2. 把信息装到名字里 3. 不会误解的名字 4. 审美 5. 该写什么样的注释 6. 写出言简意赅的注释 第二部分 简化循环和逻辑 7. 把控制流变得易读 8. 拆分超长的表达式 9. 变量与可读性 第三部分 重新组织代码 10. 抽取不相关的子问题 11. 一次只做一件事 12. 把想法变成代码 13. 少写代码 第四部分 精选话题 14. 测试与可读性

weixin_44588584的博客 573

Cesium 相机操作

Cesium 提供了三种方式对相机的位置进行摆放。

虎康的博客 2590

《编写可读代码的艺术》读后总结

代码应当易于理解代码的写法应当使他人理解它所需的时间最小化 把信息装进名字中清晰和精确比装可爱好 使用专业的词 使用具体的名字来更细致地描述事物 给变量名带上重要的细节 为作用域大的名字采用更长的名字 有目的地使用大小写,下划线等 要多问自己几遍:“这个名字会被别人解读成其他的含义吗?” 要仔细审视这个名字,不会被误解的名字是最好的名字 命名极限最清楚的方式是在要限制的东西前加上max_或者min_

yinhaixiang的专栏 2030

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

《编写可读代码的艺术》总结

《编写可读代码的艺术》 ( The Art of Readable Code) 可以大概总结如下: 1. 把信息装进名字里,给变量起个好名字 2. 审美,把代码分成段落,对齐 3. 应当取个好名字,而不是用注释去粉饰它 4. 用注释记录你的思想,比如当时为什么要这样写,记录开发过程中有哪些思考 5. 将自己代码中的不足和瑕疵记录下来,方便今后别人的维护,不要顾忌别人的看法! 6. 注...

yhcad博客 679

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

《编写可读代码的艺术》读书笔记(三)

这一部分我们将在函数级别对代码做一些改动以改善代码的可读性。 第10章 抽取不相关的子问题 本章的建议是“积极地发现并抽取出不相关的子问题”。 1、提炼纯工具代码并放置到项目中一个公共的地方。 2、创建大量通用的代码。“自顶向下”与“自底向上”的结合。 3、简化(包装)已有的接口。 第11章 一次只做一件事       本章的关键思想是“应该把代码组织得一次只做一件事”。

e5Max的专栏 1687

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

读书笔记---《编写可读代码的艺术》

前言 我们曾经在非常成功的软件公司中和出色的工程师一起工作,然而我们所遇到的代码仍有很大的改进空间。实际上,我们曾见到一些很难看的代码,你可能也见过。但是当我们看到写得很漂亮的代码时,会很受启发。好代码会很明确告诉你它在做什么。使用它会很有趣,并且会鼓励你把自己的代码写得更好。本书旨在帮助你把代码写得更好。 每一章都会深入编程的某个方面来讨论如何使代码更容易理解。本书分成四部分:表面层次上的改进...

逸竹 1126

编写可读代码的艺术学习总结(超赞!!!)

我是技术搬运工,好东西当然要和大家分享啦.原文地址第 1 章 可读性的重要性编程有很大一部分时间是在阅读代码,不仅要阅读自己的代码,而且要阅读别人的代码。因此,可读性良好的代码能够大大提高编程效率。可读性良好的代码往往会让代码架构更好,因为程序员更愿意去修改这部分代码,而且也更容易修改。只有在核心领域为了效率才可以放弃可读性,否则可读性是第一位。第 2 章 用名字表达代码含义一些比较有表达力的单词...

FanceFu的博客 2697

编写可读代码

《 编写可读代码的艺术 》这本书我想程序猿都很熟悉吧。平时不怎么读书的我也是心血来潮将这本书通读了一遍,果然是大师写的书啊,让我感受颇深!http://www.tuicool.com/articles/jimYJfZ下面是我从这本“神书”中摘抄的一些精华,千万不要错过: 把信息塞进名字中 有比食人花更好的名字吗? 避免空泛的名字,像tmp和retval,除非使用它们有特殊的理由。

chengqianduan的博客 565

编写可读代码的艺术读书整理

好代码的各种衡量 之前看过一些**编码规范,作者一般上来都是这样子的,先说明自己来自某大厂,职位什么的,然后下面就开始逐条规定,对于什么样的情况,我该怎么写代码。其实,这过程中是有些内容被忽视掉了的,那就是什么是好代码?在整理编码规范前,我觉得有必要去想想这个问题的。 运行效率高的?比如:a/2写成a<<1这种,...

weixin_33824363的博客 252

代码那些事之命名

摘自:代码那些事之命名​——《可读代码的艺术》读后感

金庆的专栏 1157

【编写可读代码的艺术】读书小记 一 : 从书写代码改进

目录 1. 代码应该易于阅读和理解。 2.命名时提供额外的信息 3.使用不会被误解的名字 4.审美 5.该写什么样的注释 6.写出言简意赅的注释 最近花了几天的时间在工作闲暇之余通读完了《编写可读代码的艺术》这本书,在此做一些提炼归纳总结,以便于自己学习记忆。感觉良好得书写代码习惯和思维方式对我这种初级程序员来说尤其重要呀(????) 想起之前一年的项目,由于自己的经验问题,在一开始写功...

qq_33776188的博客 461

编写可读代码的艺术

(一)修改外表 被修改过的代码都像华哥那样帅 把信息装到名字里 选择专业的词getPage()可以具现为downloadPage()。 避免泛指的名字比如:tem,abc循环迭代器都喜欢使用:i、j、it做索引。但是有些复杂的情况下,最好使用更精确的名字。 用具体的名字代替抽象的名字比如:ServiceCanStart() 与 CanListenOnPort()检测服务端口是否可以开始监听,明显

MyHerux的博客 649

代码那些事之命名​——《可读代码的艺术》读后感

一张图引发的思考图1 食人植物试想一下对于图中植物我们如果正儿八经地说这是Corpse Flower(尸花),可能很难就一下子明白这是什么并关联相关意境,而食人植物一下子传递一些惊悚的场景,让大家很警觉。因此命名就是传递信息和意境,好的命名就是要尽可能容易地传递准确的信息。同时命名需要考虑上下文,如果是做植物研究的,可能需要说学名是什么,并且是哪个科哪个目。如果仅仅是参观介绍...

weixin_34383618的博客 350
下一篇: c 语言接口设计与实现读书笔记与习题 解答 (一)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值