【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

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

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

评论

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

这可能是最细的HashMap详解了!

程序员阿杜

Java JVM ArrayList

模块七作业

seawolflin

架构实战营

【优化技术专题】「线程间的高性能消息框架」深入浅出Disruptor的使用和原理

洛神灬殇

Disruptor LinkedBlockingQueue ArrayBlockingQueue 9月日更

5 个网站将您的前端技能从 1 倍提升到 100 倍

云原生

学习 大前端 全栈

NDK-AAudio

Changing Lin

9月日更

Who is Mavenir?

俞凡

Mavenir

你应该知道的高效学习法

法医

9月日更

redis主从实践(一)

风翱

redis 9月日更

【网络安全】Spring框架漏洞总结(二)

网络安全学海

黑客 网络安全 信息安全 WEB安全 漏洞挖掘

号外!号外!极客时间出插件了😎

IT蜗壳-Tango

极客时间 9月日更 浏览器插件

详解css中清除浮动的四种方式,float浮动怎么用更为合理

你好bk

最佳实践 方法论 大前端 html/css 语言 & 开发

北鲲云SaaS平台让生物医学关键环节不再靠“猜”

北鲲云

【Flutter 专题】50 图解动画小插曲之 Lottie 动画

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 9月日更

狄刚谈区块链:技术上去中心化并不等于管理去中心化

CECBC

Vite + Vue3 + OpenLayers

德育处主任

大前端 地图 vite Vue3 openlayers

【墨天轮专访第四期】华为云GaussDB:发挥生态优势,培养应用型DBA

华为云数据库小助手

GaussDB 交流 华为云数据库 人物访谈

这可能是最细的ArrayList详解了!

程序员阿杜

Java ArrayList

redis--zset解析

en

redis Zset 引航计划

灯塔之上:vivo X70背后的影像进化史

脑极体

14 种编程语言书写关机脚本,真香

梦想橡皮擦

9月日更

Python代码阅读(第27篇):将变量名转换成驼峰形式

Felix

Python 编程 Code Programing 阅读代码

什么?语音合成开源代码不会跑,Follow me!

华为云开发者联盟

tensorflow 语音合成 Tacotron2 DeepMind 深度神经网络模型

RocksDB原理及应用

hanaper

深入理解rtmp(三)之手把手实现握手协议

轻口味

音视频 RTMP 9月日更

通过编程训练题来讲讲链表操作

Regan Yue

算法 链表 9月日更

将JSON中对于集合的数据,如何解析成对象集合

卢卡多多

集合 Stream<T> 9月日更

【VueRouter 源码学习】第九篇 - router-view 组件的实现

Brave

源码 vue-router 9月日更

没有Linux服务器,该如何学习Linux呢?

Simon郎

大数据 Linux java;

阿里巴巴开源数据库--OceanBase从使用聊到架构剖析

hanaper

Python——函数正确调用

在即

9月日更

人才缺口超70万,15所高校新设区块链专业

CECBC

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