在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

专栏:代码之丑——开篇

  • 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:0011086
用户头像

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

关注

评论

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

即时通讯技术文集(第19期):IM架构设计基础知识合集 [共13篇]

JackJiang

网络编程 即时通讯 IM

必备利器:可靠的 REST API 开发工具

Apifox

程序员 开发工具 Apifox API REST API

828 B2B企业节:ROMA Connect探究数字化转型之道

云计算 软件开发 华为云

安全大文件传输对行业重要性

镭速

大文件传输 传输大文件 安全大文件传输

OpenAI 函数调用教程

3D建模设计

openai ChatGPT

2023百度云智大会:百度网盘全面拥抱大模型,面向企业升级四大解决方案

极客天地

大数据平台数据安全保护系统哪家好?咨询电话多少?

行云管家

大数据 数据安全 大数据平台 大数据安全

企业大数据传输的四类方式及镭速解决方案

镭速

大数据传输

人工智能的优势:使用 GPT 和扩散模型生成图像

3D建模设计

人工智能 生成式AI

Python 套接字编程完整指南

3D建模设计

Python

Linux 可执行文件瘦身指令 strip 使用示例

互联网工科生

Linux 资源

木鱼一敲烦恼丢掉,一个恢复内心平静的赛博空间

荣耀开发者服务平台

小程序 前端 安卓 组件 服务卡片

通过一流的NFT开发提升您的数字形象

区块链软件开发推广运营

数字藏品开发 dapp开发 区块链开发 链游开发 NFT开发

小灯塔系列-中小企业数字化转型系列研究——司库管理测评报告

向量智库

three.js 纹理

3D建模设计

three.js 纹理处理

PanGu-Coder2:从排序中学习,激发大模型潜力

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号9月PK榜

中东、新加坡资本来华“淘宝”,AI、新能源成追逐赛道

TE智库

新能源 能源经济

使用 WebGL 为 HTML5 游戏创建逼真的地形

3D建模设计

WebGL 地形

选择正确的框架:探索 Spring Cloud 和 Dubbo

Liam

程序员 微服务 Spring Cloud dubbo 后端

你折腾一天都装不上的插件,函数计算部署 Stable Diffusion 都内置了

Serverless Devs

Serverless 模型

软件测试/测试开发丨跨平台 api 对接 学习笔记

测试人

Python 软件测试 jenkins API 测试开发

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