代码之丑 代码整洁之道
我们知道,写代码要具有正确性和可维护性,能把代码写对,是每个程序员的必备技能,但能够把代码写得具有可维护性,这才是一个程序员从业余迈向职业的第一步。
那具体要怎样编写可维护的代码呢?我建议你从“代码的坏味道”入手,为什么?
我们以往学到的知识,大多都会告诉我们应该怎样做、怎样做是好的,但应用这些内容,需要我们对整洁代码有着深厚的理解,而每个人对同一件事的领悟程度是不同的。比如说,我们都知道“命名是要有意义的”,但什么样的命名才算是有意义的呢?有的人只理解到不用 xyz 命名,虽然他起出了自认为“有意义”的名字,但这些名字依然很难懂。
虽然知道正面的代码是什么样子,却不知道反面的代码是什么样子,这会导致很多问题重重的代码就堂而皇之地留在了眼皮底下,为未来的开发埋下了无数的隐患。
因此,坏味道是写出好代码的起点。有对代码坏味道的嗅觉,能够识别出坏味道,接下来,你才有机会去“重构(Refactoring)”,把代码一点点打磨成一个整洁的代码(Clean Code)。
模块设置
分为2个模块。
1. 13类典型的坏味道。在这个模块中,我会直接用我们工作中的真实代码作为案例,带你发现潜藏在你的编程中的那些坏味道。同时,帮你深入剖析这些坏味道产生的原因,以及解决这些坏味道的常见重构手法。
代码之丑 代码整洁之道相关推荐
- 代码整洁之道 读后感
代码整洁之道 读后感 The Clean Coder -- A code of Conduct for Professional Programmers 读后感 看完这本书的感受是,这本书和标题的 & ...
- 重读【代码整洁之道】
一.前言 [代码整洁之道]很经典,但也有些过时,翻译上也有些啰嗦,但总体上是好书.通过对本书核心内容的摘抄,结合自己的经验,整理了一些精简的点,这样你就省的去啃那本400多页的书了. 软件质量 = 架 ...
- 《代码整洁之道》(Clean Code)- 读书笔记
一.关于Bob大叔的Clean Code <代码整洁之道>主要讲述了一系列行之有效的整洁代码操作实践.软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关.这一点,无论是敏捷开发流派 ...
- 代码整洁之道(一)最佳实践小结
摘要: Any fool can write code that a computer can understand. Good programmers write code that humans ...
- 2015年第11本:代码整洁之道Clean Code
前一段时间一直在看英文小说,在读到<Before I fall>这本书时,读了40%多实在看不下去了,受不了美国人啰啰嗦嗦的写作风格,还是读IT专业书吧. 从5月9日开始看<代码整洁 ...
- 《代码整洁之道:程序员的职业素养》一一1.5 参考文献
本节书摘来自异步社区出版社<代码整洁之道:程序员的职业素养>一书中的第1章,第1.5节,作者:[美]Robert C. Martin(罗伯特 C. 马丁),更多章节内容可以访问云栖社区&q ...
- 【整洁之道】如何写出更整洁的代码(上)
如何写出更整洁的代码 代码整洁之道不是银弹,不会立竿见影的带来收益. 没有任何犀利的武功招式,只有一些我个人异常推崇的代码整洁之道的内功心法.它不会直接有效的提高你写代码的能力与速度,但是对于程序员的 ...
- 3.注释(代码的整洁之道)
3.注释(代码的整洁之道) 目录 注释不能美化糟糕的代码 用代码来阐述 好注释 坏注释 注:代码的整洁之道PDF: https://pan.baidu.com/s/16PLDWPiusGjcUfW_j ...
- 2.函数(代码的整洁之道)
2.函数(代码的整洁之道) 目录 短小 只做一件事 每个函数一个抽象层次 switch语句 使用描述性的名称 函数参数 无副作用 分隔指令与询问 使用异常代替返回的错误码 别重复自己 结构化编程 如何 ...
最新文章
- php 面向对象开发 类的学习 一
- 在 Windows 10 中开启移动 WLAN 热点
- angular4创建html,Angular 4 Http服务
- 银联分账与银联代付_第三方分账系统到底有哪些作用?
- 学历全靠编,融资靠忽悠?网传“包养7个女主持”的金融大佬被揭穿了
- java 资源描述文件_j2me新手必看-Java应用描述文件(JAD)编辑器
- 2017年数模国赛B题第一小题的思路过程(个人思路)
- SEO助手-免费万能SEO网站优化小助手
- 管理学之父德鲁克:目标管理的八要素和七步骤
- 普通路由器DMZ主机设置及访问方法
- 可在手机浏览器下载文件的方法
- 「运维之美」技术周刊 ( 第 2 期 )
- 当Myeclipse或者Eclipse出现launching client
- python爬虫学习14
- 【微信每日早安推送】每日天气推送
- 2020年TI杯大学生电子设计大赛 无线运动传感器节点 备赛、参赛实录(历时一个月)
- 实习,内推,校招,社招的区别和联系
- 【FME】矢量间进行空间传值、属性关联
- python中fact()是什么意思_python中fact函数是什么及如何使用?
- SDIO wifi Marvell8801/Marvell88w8801 介绍(三) ---- Marvell8801/Marvell88w8801寄存器介绍