写点什么

将程序记在脑子里

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

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

关注

评论

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

云电脑的性价比高么

青椒云云电脑

云电脑

腾讯云的相关DDoS攻击问题概览

网络安全服务

腾讯云 服务器 DDoS 腾讯云服务器 DDoS 攻击

利用 Vector 将 Kafka 中的日志数据高效写入 GreptimeDB

Greptime 格睿科技

kafka 时序数据库 vector

淘宝商品类目API的获取与应用探索

科普小能手

API 接口 API 测试 淘宝API接口 淘宝数据采集 淘宝评论API

CQ社区版 v2024.10 | 支持k8s、helm部署!

BinTools图尔兹

k8s Helm 数据安全 数据库管理 CloudQuery

掌握数据,赢得市场 —— 淘宝商品详情API让电商运营更精准

技术冰糖葫芦

API 接口 API 测试 API 协议 API 优先

Java EasyExcel 导出报内存溢出如何解决

不在线第一只蜗牛

Java 内存

阿里巴巴商品搜索API返回值中的关键信息点

技术冰糖葫芦

API 接口 API 测试 API 协议 API 优先

【活动预告】Apache TsFile 干货总结在 COSCON'24 等你~!

Apache IoTDB

资源成本降低60%,揭秘Serverless的省钱秘籍

华为云开发者联盟

容器 运维 #Serverless CCE

到底什么学历可以胜任程序员?

秃头小帅oi

鸿蒙生态崛起,开发者如何抓住这波“红利”?

最新动态

2024年中国IT用户满意度调研结果公布

极客天地

Laravel后台极速开发框架 - 集成日历组件

YangGe

laravel

袋鼠云产品功能更新报告12期|让数据资产管理更高效

袋鼠云数栈

语音识别模型

霍格沃兹测试开发学社

Vector 增加 GreptimeDB 日志写入支持,连接数十种数据源

Greptime 格睿科技

数据库 vector 集成

倒计时1天 | 袋鼠云秋季发布会明日10:00开幕,我们云上见!

袋鼠云数栈

汇聚全球智慧·共绘软件蓝图,2025北京软博会

AIOTE智博会

软博会 世亚软博会 北京软博会

深度解读GaussDB逻辑解码技术原理

不在线第一只蜗牛

数据库 oracle

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