飞天发布时刻:2024年 Forrester 公有云平台Wave™评估报告解读 了解详情
写点什么

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

  • 2019-12-19
  • 本文字数:508 字

    阅读完需:约 2 分钟

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

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

一句话概括

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



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


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


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


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


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


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


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


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


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


2019-12-19 18:18735

评论

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

平面设计之PS(前序)

空城机

PhotoShop ps 4月日更

洞察细节深究业务—数据分析的进阶

小飞象@木木自由

数据分析 数据分析体系 理解业务 数据分析进阶

提升漏洞修复率,DevSecOps真的很有一套

华为云开发者联盟

软件 安全 DevSecOps 漏洞修复 软件漏洞

【LeetCode】搜索旋转排序数组 IIJava题解

Albert

算法 LeetCode 4月日更

让云原生应用的交付变得更简单 | KubeVela v1.0 正式发布

郭旭东

Kubernetes 云原生 OAM KubeVela

白金熊项目奖金制度玩法介绍

飞亚科技

区块链BaaS平台的搭建,底层BaaS服务平台的开发

13828808769

行业资讯 产品资讯

「开源免费」基于Vue和Quasar的前端SPA项目crudapi后台管理系统实战之用户登录(二)

crudapi

Vue Cookie crud crudapi quasar

nsqlookupd:高性能消息中间件 NSQ 解析

华为云开发者联盟

集群 消息中间件 nsq nsqlookupd

模块一课后作业

王瑞强

架构实战营

7 个非常实用的 Shell 拿来就用脚本实例!

JackTian

Linux 编程 Shell 脚本语言 运维工程师

BBK智能合约系统开发|BBK智能合约APP软件开发

系统开发

带你厘清事务一致性(上篇)

小舰

4月日更

区块链让版权与创作如影随形 应用深度逐渐加强

CECBC

产权保护

这6个浏览器插件,让你的浏览器大为不同。

彭宏豪95

chrome 浏览器 插件 chrome扩展 4月日更

Crash 游戏是公平的吗?

飞亚科技

书单|互联网企业面试案头书之运营篇

博文视点Broadview

斩获三项大奖!浪潮云精彩亮相数字化转型发展高峰论坛

云计算

小白都能学会的Java注解与反射机制

陈皮的JavaLib

Java 注解 java反射

Nginx 除了负载均衡,还能干点啥

Java小咖秀

nginx 负载均衡

openresty源码编译

上海派拉基础研发

nginx openresty

猪肉价格跌至去年最低水平 区块链养猪成热点

CECBC

农业

架构实战营模块一作业

sandy

1小时800箱,动力机器人真·搬砖16小时不续航;苹果官宣 WWDC 全球开发者大会召开时间;基于图神经网络的分级相关性匹配

京东科技开发者

人工智能 AI 开发者

对于数据,科技小白提出了灵魂三问:从哪儿来?到哪儿去?能干什么?

华为云开发者联盟

人工智能 安全 数据 数据采集 网络人工智能

人生苦短,我用Python之小游戏

Bob

开发者 Python 游戏编程 4月日更 -python

ES9的新特性:正则表达式RegExp

程序那些事

正则表达式 ecmascript 程序那些事 es9

面试笔记(二)线程池连环炮

U2647

Thread 4月日更

区块链系统的层级架构如何及在供应链中的应用

CECBC

区块链

区块链商品溯源平台搭建及防伪溯源解决方案

13828808769

商品溯源

MUSO挖矿系统开发

飞亚科技

阿里工程师谈,什么是好的代码?_文化 & 方法_淘系技术_InfoQ精选文章