写点什么

将程序记在脑子里

  • 2007-10-22
  • 本文字数:744 字

    阅读完需:约 2 分钟

最近,在一篇名为《将程序记在脑子里》的文章中,Paul Graham 认为“代码就是你对某个问题的理解。所以,只有当你把代码牢记在脑子里,才算真正地理解问题“。不幸的是,正如每个程序员所知,说起来容易做起来难:

把程序记下来不是件容易的事儿。如果你想要捡起几个月前的一个项目,并再一次真正想清楚它是怎么一回事,那可能要花上几天的功夫。即使是你手头上的一个程序,在每天开始工作时,你可能也要花上半个小时才能真正回想起来。这里有个最好的例子。那些在经典办公环境下工作的普通程序员从来不会遇到这种情况,说得更严重一些,工作在经典办公环境下的普通程序员从来没有真正地理解他们正在解决什么样的问题。

因此,开发人员怎么做才能让程序牢记在脑中呢?Graham 给出了八点建议:

  1. 避免分心
  2. 一口气做久一点
  3. 使用简洁的编程语言
  4. 持续重构
  5. 写易读的代码
  6. 小团队工作
  7. 避免多人编辑同一代码块
  8. 从小事做起

敏捷过程和实践可以看作是将创业起步阶段公司里的自发形成的做法映射成可在大组织里推行的措施。作为种子投资公司 Y Combinator 的合伙人, Paul Graham 的大部分建议是针对刚起步的小公司提出的,因此,问题就变成了以上建议如何对应到敏捷实践?当然,大多数敏捷开发者习惯于写可读性代码,持续重构,小团队工作,以及从最小却提供真正价值的小事儿做起。而且很多敏捷开发者还不断采纳更有威力的语言,如 Ruby Erlang Haskell ,甚至 Common Lisp

但是,对于不太容易映射到敏捷实践的那些建议又怎么认识呢?(1)和(2)是紧密相连的,而且有些人会认为,共享工作空间反而容易分心。另一个常见的敏捷实践就是代码集体所有制,与(7)相矛盾。这么说来,是敏捷拥趸们做错了吗?还是这些实践之间的冲突反映了大公司和小公司工作方式有某种不可避免的差异呢?

英文原文链接: Holding a Program in Your Head

2007-10-22 07:501703
用户头像

发布了 100 篇内容, 共 25.5 次阅读, 收获喜欢 5 次。

关注

评论

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

SphereEx DBPlusEngine - 更全面、更便捷的 ShardingSphere 商业版功能全览

SphereEx

数据库

Sentieon | 每周文献-Long Read Sequencing(长读长测序)-第七期

INSVAST

基因测序 长读长测序 Long Read

Sentieon | 应用教程: 关于读段组的建议

INSVAST

代码 教程 字段 基因测序

制造执行系统(MES)在汽车行业中的应用

万界星空科技

MES系统 汽车

低成本生成式AI:引领未来内容创作新篇章

百度开发者中心

#人工智能 生成式AI 文心一言

轻量应用服务器和云服务器的区别

天翼云开发者社区

服务器 云服务器

判断LED显示屏的质量指南

Dylan

性能 质量 环境 LED显示屏

生成式AI技术原理与应用

百度开发者中心

#人工智能 生成式AI 文心一言

财务数智化十年“老兵”的六条财务共享中心建设体会

用友BIP

智能财务 财务共享

Sentieon | 每周文献-Liquid Biopsy(液体活检)-第十期

INSVAST

基因测序 液体活检 Liquid Biopsy

实现高效数据同步:40 分钟内同步500GB MySQL 数据至 Doris

NineData

MySQL 数据库 Doris 数据迁移 数据实时同步

大数据平台安全主要是指什么安全?如何保障?

行云管家

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

Sentieon | 每周文献-Clinical Trial-第十一期

INSVAST

基因测序 临床试验

生成式AI:改变生活创造未来

百度开发者中心

#人工智能 ChatGPT 生成式AI 文心一言

使用云函数实现定时签到

查拉图斯特拉说

腾讯云 签到

生成式AI掀起创意新革命

百度开发者中心

#人工智能 AI作画 生成式AI 文心一言

共享服务器的复杂性与核心原理

天翼云开发者社区

服务器

Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速

INSVAST

开源软件 基因测序 Python API

Sentieon | 每周文献-Benchmark and Method Study(基准与方法研究)-第八期

INSVAST

基因测序 基因数据分析 基准与方法研究

Sentieon | 每周文献-Multi-omics(多组学)-第九期

INSVAST

基因测序 Multi-omics 多组学

直播预告|没有 “专业” 的向量数据库,大模型就玩不转了吗?

Zilliz

非结构化数据 Milvus Zilliz AIGC 向量数据库

使用DWS集群,用户被锁定如何解锁

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 8 月 PK 榜

端云一体化云开发,助推HarmonyOS应用与元服务高效开发

最新动态

推荐系统在线峰会来了,冷启动、推荐工程、模型训练…你都能找到答案

小红书技术REDtech

推荐系统

生成式AI:游戏研发的革命者

百度开发者中心

游戏开发 #人工智能 生成式AI 文心一言

将程序记在脑子里_研发效能_Kurt Christensen_InfoQ精选文章