写点什么

专栏:代码之丑——开篇

  • 2010-11-16
  • 本文字数:688 字

    阅读完需:约 2 分钟

我是一个程序员,也是一个咨询师。

成为咨询师之后,我有机会在不同的项目中穿梭。同客户合作的过程中,我经常干的一件事是:code diff,也就是用源码管理工具的 diff 功能把当天全部修改拿出来,从编码的角度来分析代码写得怎么样。

因为这个工作,我看到了许多不同人编写的代码,我的编码底线不断受到挑战。许多东西,我以为是常识,但实际上不为许多人所知。比如,下面这段代码,你会做何感想?

复制代码
if(db.Next()) {
return true;
} else {
return false;
}

有的人会想,怎么写得这么笨啊!但是,请放心,绝对会有人这么想:挺好的,实现功能了。这并非我臆造出的代码,而是源自一个真实的 codebase。

这些代码的存在,给了我很多机会与人分享一些编码的心得。其间,有人建议,为什么不能把你说的这些内容写下来,与更多人分享。于是,有了这个即将看到的系列:《代码之丑》,以此向《代码之美》致敬。

最后要说的是,上面那段代码可以写成这样:

复制代码
return db.Next();

作者简介:

郑晔,ThoughtWorks 公司咨询师,拥有多年企业级软件开发经验,热衷于探索各种程序设计语言在真实软件开发中所能发挥的威力,致力于探寻合理的软件开发方式,加入 ThoughtWorks 公司后,投入到敏捷开发方法的实践之中,为其他公司提供敏捷开发方法方面的咨询服务。他的 blog 是梦想风暴

查看原文:代码之丑(零)

【编者按】:这是 InfoQ 中文站新推出的专栏栏目。专栏旨在邀请国内一线的技术领域专家,定期撰写发表连载专栏,从深度和质量上为国内的技术从业者提供专业性、持续性的知识分享。这个《代码之丑》专栏计划推出系列共十篇,敬请期待后续精彩内容。也欢迎向 InfoQ 中文站推荐专栏作者及内容

2010-11-16 03:0010804
用户头像

发布了 22 篇内容, 共 14.4 次阅读, 收获喜欢 49 次。

关注

评论

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

如何在Windows上将iOS应用上传到App Store

京东云正式加入openGauss社区,共筑数据库科技服务供应链

daydayup

PoseiSwap:首个基于模块化设施构建的订单簿 DEX

股市老人

拜托,别在agent中依赖fastjson了

夏奇

Java Agent 类加载 架构设计 Fastjson

PoseiSwap:首个基于模块化设施构建的订单簿 DEX

BlockChain先知

开放原子开源基金会理事长孙文龙一行赴浪潮考察交流

开放原子开源基金会

开源

面向金融科技方向选手!一级学会背书,AI选股与可视分析大赛来啦

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

覆巢之下(1)

于哲

文心一言 VS 讯飞星火 VS chatgpt (69)-- 算法导论6.5 8题

福大大架构师每日一题

福大大架构师每日一题

RocketMQ 在业务消息场景的优势详解

阿里巴巴云原生

阿里云 RocketMQ 云原生

【我与openGauss的故事系列】奇思妙想——通过Go语言自制安装openGauss二进制程序(二)

daydayup

2023模式识别课程师资培训会重磅招募

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

openGauss 3.1.0 版本gs_stack功能解密

daydayup

openGauss企业级开源数据库荣获2022年度中国计算机学会(CCF)科技进步奖特等奖

daydayup

敏捷产品路线图管理实例,产品路线图工具

顿顿顿

Scrum 敏捷开发管理 产品路线图工具

TE智库 |《中国CLM(合同全周期管理)市场产业全景研究报告》发布,看合同管理赋能企业战略落地

TE智库

文心大模型企业应用私享会·上海站:共话大模型前沿技术与产业应用创新

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

Ansible自动化部署安装openGauss 3.1.0 企业版

daydayup

openGauss-graph 0.1.0版本正式发布

daydayup

大模型真的会“好事多模”吗?

脑极体

大模型

开放原子开源基金会TOC(技术监督委员会)第七十七次全体会议

开放原子开源基金会

统一观测|借助 Prometheus 监控 ClickHouse 数据库

阿里巴巴云原生

阿里云 云原生 Prometheus Clickhouse

Last Week in Milvus

Zilliz

非结构化数据 开源社区 Milvus Zilliz

【我与openGauss的故事系列】奇思妙想——通过Go语言自制安装openGauss二进制程序(一)

daydayup

DBMind索引推荐功能在民生银行的生产实践

daydayup

openGauss的高效数据压缩算法

daydayup

开放原子开源基金会理事长孙文龙一行赴山东大学考察交流

开放原子开源基金会

开源 开放原子开源基金会

Sprint Boot学习路线3

小万哥

Java spring 后端 springboot SpringCloud

专栏:代码之丑——开篇_Java_郑晔_InfoQ精选文章