写点什么

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

  • 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:18845

评论

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

为什么开发者这么看重SQL?看完这些应用场景你就明白了

雨果

sql 数据库管理工具 SQL开发工具

架构实战营4.1 数据库存储架构随堂练习

西山薄凉

「架构实战营」

如何用「标准差」度量研发波动

feijieppm

项目管理 研发效能 技术管理 文化 & 方法 效能度量

H5直播技术起航

京东科技开发者

音视频 编码 H5 flv 企业号 1 月 PK 榜

钉钉 IM 基于 RocketMQ 5.0 的云原生应用实践

阿里巴巴中间件

阿里云 RocketMQ 云原生

KaiwuDB 1.0 - 时序数据库系列产品正式发布

KaiwuDB

数据库

MASA Stack 1.0发布会正式官宣

MASA技术团队

MASA MASA Stack

TiDB 底层存储结构 LSM 树原理介绍

京东科技开发者

技术 算法 LSM树 TiDB 企业号 1 月 PK 榜

SeekBar(拖动条)

芯动大师

android SeekBar 拖动条

马斯克收购推特后,亲自与员工探讨了……

博文视点Broadview

JDK结构介绍

Steven

Java高手速成 | 新增类Record的工作实例

TiAmo

新特性 Java’

mouseover 和 mouseenter 的区别

ModStart

面试题:为什么不建议在MySQL中使用UTF-8?

风铃架构日知录

Java MySQL 程序员 后端 IT

DiT:Transformers 与扩散模型强强联手

Zilliz

AI 算法模型

LogicFlow自定义业务节点

小鑫同学

前端 vite Vue 3

APISIX+Dubbo+Nacos 最佳实践

阿里巴巴中间件

阿里云 云原生 dubbo nacos APISIX

DevSecOps 与软件开发安全

飞算JavaAI开发助手

ClassIn:如何打造更稳定的Zabbix监控系统

OceanBase 数据库

oceanbase 数据库·

高并发中的atomic

Steven

2023-01-10:智能机器人要坐专用电梯把货物送到指定地点, 整栋楼只有一部电梯,并且由于容量限制智能机器人只能放下一件货物, 给定K个货物,每个货物都有所在楼层(from)和目的楼层(to),

福大大架构师每日一题

算法 rust Solidity 福大大

神经网络基础部件-损失函数详解

嵌入式视觉

激活函数 Relu sigmoid tanh swish激活函数

《PyTorch 深度学习实战》学习笔记 --NumPy(上)

IT蜗壳-Tango

PHP 中命令行调用 escapeshellarg 函数中文问题

ModStart

先行试点,创新改造:中信期货关键业务系统自主可控的实践之路

OceanBase 数据库

Flink 批作业的运行时自适应执行管控

Apache Flink

大数据 flink 实时计算

走进AI图像生成核心技术 - Diffusion

Baihai IDP

人工智能 AI AIGC Diffusion 扩散模型

Dubbo-kubernetes 基于 Informer 服务发现优化之路

阿里巴巴中间件

阿里云 Kubernetes 云原生 dubbo

龙湖千丁基于 ACK@Edge 的云原生智慧停车系统架构实践

阿里巴巴中间件

阿里云 云原生

阿里云计算巢 x GBase GCDW:自动化部署云原生数据仓库

云布道师

阿里云

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