Graph + AI 中国峰会火热报名中,点击探索图分析更多可能! 了解详情
写点什么

阿里工程师谈,什么是好的代码?

2019 年 12 月 19 日

阿里工程师谈,什么是好的代码?

导读:我们每天都与代码打交道,但当被问道什么是好的代码时,很多人可能会先愣一下,然后给出的回答要么比较空泛,要么比较散,没办法简单明了地概括出来。显然,这个问题并没有唯一的标准答案,谁都可以谈论自己的理解,今天谈谈我对于好代码的理解。


一句话概括

衡量代码质量的唯一有效标准:WTF/min —— Robert C. Martin



Bob 大叔对于好代码的理解非常有趣,对我也有很大的启发。我们编写的代码,除了用于机器执行产生我们预期的效果以外,更多的时候是给人读的,这个读代码的可能是后来的维护人员,更多时候是一段时间后的作者本人。


我敢打赌每个人都遇到过这样的情况:过几周或者几个月之后,再看到自己写的代码,感觉一团糟,不禁怀疑人生。


我们自己写的代码,一段时间后自己看尚且如此,更别提拿给别人看了。


任何一个傻瓜都能写出计算机可以理解的代码。唯有写出人类容易理解的代码,才是优秀的程序员。—— Martin Fowler


所以,谈到好代码,首先跳入自己脑子里的一个词就是:整洁。


好的代码一定是整洁的,给阅读的人一种如沐春风,赏心悦目的感觉。


整洁的代码如同优美的散文。—— Grady Booch


本文转载自淘系技术公众号。


原文链接:https://mp.weixin.qq.com/s/AjubL4vVhFa_FIlaopLVCA


2019 年 12 月 19 日 18:18235

评论

发布
暂无评论
发现更多内容

1.4如何做好架构设计

Lemon

碳中和的未来版图里,区块链如何“往上走”

CECBC区块链专委会

模块7作业

薛定谔的指南针

架构实战营

1.3面向复杂度的架构设计

Lemon

架构设计 架构设计原则

模块7作业-王者荣耀商城异地多活架构设计

En wei

架构实战营

推荐系统的UI交互与视觉展示(二十七)

数据与智能

人工智能 算法 推荐系统

Hadoop知识点总结

五分钟学大数据

hadoop 7月日更

架构设计方法论

king

实现自己的Protobuf Any

DoneSpeak

protobuf

如何做好架构设计?

king

王者荣耀商城异地多活架构设计

Vincent

架构训练营

建立区块链证据采信新规则

CECBC区块链专委会

为easyexcel设置TimeZone

DoneSpeak

Excel Apache POI

LeetCode | 13. 罗马数字转整数

DoneSpeak

LeetCode algorithm

模块7作业 王者荣耀商城异地多活架构设计

高亮

架构训练营

快手处置多个违规账号:自媒体行业需要净化和规范

石头IT视角

区块链到底是什么?解读区块链的4大核心组件

CECBC区块链专委会

Spring Security认证流程

DoneSpeak

spring security springsecurity

Spring Event初步讲解

DoneSpeak

spring

Go 并发编程-共享变量

Rayjun

Go

架构训练营模块1作业

慕溶枫

#架构实战营

Protobuf与POJO的相互转化 - 通过Json

DoneSpeak

json protobuf serialization

SpringBoot解决CORS问题

DoneSpeak

springboot

架构实战营 - 模块 7- 作业

泄矢的呼啦圈

架构实战营

送给正在迷茫的你!极其重要

欢喜学安卓

android 程序员 面试 移动开发

模块7作业

dwade

#架构实战营

架构训练营模块七作业

Geek_e0c25c

架构实战营

Protobuf与Json的相互转化

DoneSpeak

json protobuf serialization

2021 年第 26 周 ARTS 打卡

Bryan

redis 网络 ARTS 打卡计划 归并排序 epoll

我用一个例子疏通“路由器漏洞&复现”【建议收藏!!】

网络安全学海

运维 网络安全 信息安全 漏洞分析 代码复现

业务架构模块 7 作业

冬天的树

阿里工程师谈,什么是好的代码?-InfoQ