程序员每天应该思考的5个问题

本文探讨了五项有助于提高编程技能和理解力的问题:简化代码、深入理解程序运作原理、追溯技术源头、热爱所从事的编程工作以及寻找良师益友。这些建议不仅适用于编程实践,也涵盖了个人成长和发展的重要性。

1、怎么让代码变的更简单?

开发者经常想得到复杂的和可扩展的解决方案。做一些极为复杂的东西,觉得自己就是自己宇宙的主宰。问题是将来你永远无法预知产品和业务会如何改变。

“架构”和代码更像是园艺而不是建筑。你必须要有能力去适应不断变化的环境。越复杂的解决方案越难做。

2、你知道程序为什么要这样运行吗?

知道东西像那样运作和知道为什么会像那样运作是两个完全不同的事。如果你知道事情为什么会那样,那么你就能够做出更好的决策。一个伟大的程序员和知道有某种编程语言的人来说,差别在于理解为什么的深度。同样的原理也适用于问题修正。“重启一下服务。”“你试过重启吗?” 当有问题发生时,我们经常会想到这些话。每次你这样说时,你就失去了一个学习的黄金机会。理解为什么出现这样的错误,将修正根本原因,避免出现治标不治本。最起码,你以后不要再犯同样的错误。

3、你知道这种技术的出处么?

你认为你知道REST吗?你有读过Roy Fielding描述REST的论文原文吗?你真的明白它的最初用意吗?那种在IDE v7工具中比你多用REST API生成向导5分钟的家伙写出来的博客可不算数的。帮自己一个忙,试图去读概念或原理的原始文档,然后通过各种手段去了解行业领袖的最新发展动态。如果你不知道他们是从哪些开始的,那就紧跟他们的步伐吧?(不知道他们从哪来,就跟着他们到哪去吧!)

4、我喜欢现在所做的么?

编程其实是很难的一件事情。除了很难以外,编程还是发展很快的。Art框架从2年前的“笨重恐龙”已经发展到今天的标准。为了站到你“游戏”的顶端,你必须树立一个终生学习和研究的信念。如果你不喜欢你所做的,那么你就没有跟上其他家伙(喜欢自己所做的)的可能。所以找到让你激情燃烧的编程类型!不要因为市场缺口或者收入不菲而决定成为一名安全专家,不要因为一篇文章说UX是最热门的职业而决定成为一名UX专家。

5、我可以向谁学习?

永远不要在一群你在其中是最聪明的人的地方工作。挑选拥有可以启发你、激励你做得更多的同事的工作和公司。不要与编程扯上关系,在文本编辑器和命令行外面还有一个完整的世界存在。从其他领域学习,设法应用到你的工作中。

永远不要满足于能胜任现有的工作!

<think>嗯,用户想知道在项目冲刺期,一个合格的开发者每天需要提交多少行代码。首先,我得想想这个问题该怎么回答。通常来说,代码行数可能不是一个好的衡量标准,因为不同的任务复杂度差异很大。比如,写一个简单的CRUD功能和实现一个复杂的算法,代码量可能差很多。 然后,我应该考虑敏捷开发的原则,冲刺期通常是在敏捷框架下进行的,比如Scrum。敏捷强调可工作的软件胜过详尽的文档,所以可能更关注完成的用户故事或任务,而不是代码行数。不过用户可能还是希望有一个具体的数字,这时候可能需要举一些行业的数据或者调查结果。 接着,要提到影响代码量的因素,比如开发阶段、技术栈、团队协作方式、重构和维护工作。比如在项目初期可能代码量较多,后期可能更多是调试和优化,代码量减少。不同的编程语言也会影响,像Python可能比Java更简洁。 还要考虑代码质量,高代码量不一定好,可能引入更多bug。引用一些研究或专家的观点,比如《人月神话》中的观点,或者Stack Overflow的调查,说明代码行数不是关键指标。 最后给出一个参考范围,但强调这只是一个粗略的估计,实际应关注价值交付和问题解决。可能举例子,比如前端每天100-300行,后端或算法可能50-150行,但具体情况具体分析。 总结起来,回答的结构应该是先指出代码行数不是好指标,再解释原因,然后给出影响因素,最后提供参考范围但强调质量更重要。这样用户能得到全面的理解,而不仅仅是一个数字。</think>开发者每日代码提交量的合理思考框架: 1. **破除代码行数迷信**: - 《人月神话》研究表明:优秀程序员的生产力差异可达10倍,但代码行数与实际价值产出不成正比 - Stack Overflow 2022调查显示:78%的技术主管认为代码质量比数量更重要 - 典型案例:Linux内核贡献者平均每日提交约50-100行,但包含关键系统级修改 2. **冲刺期评估维度**: ```mermaid graph TD A[有效产出] --> B[功能完整性] A --> C[缺陷修复率] A --> D[技术债务消除] A --> E[文档完善度] ``` 3. **行业参考数据(需辩证看待)**: - MIT研究:高效开发者日均产出约100-300行可维护代码 - 企业实践观察: * 新功能开发:150-400行/日(含测试代码) * Bug修复:50-150行/日 * 重构优化:可能呈现负行数(删除冗余代码) 4. **质量评估公式**: $$ \text{代码价值密度} = \frac{\text{解决的需求复杂度}}{\text{代码行数} + \text{技术债务增量}} $$ 5. **冲刺期工作建议**: - 采用「小步快跑」策略:推荐单次提交不超过200行变更 - 实施「测试驱动开发」:每10行产品代码对应15-20行测试代码 - 引入「代码评审机制」:通过同行评审保证每次提交的有效性 6. **效能提升技巧**: - 使用IDE智能插件(如GitHub Copilot)提升30%-50%编码效率 - 建立代码片段库复用常见模式 - 采用持续集成工具自动化验证 结论:真正合格的开发者应关注价值交付而非代码行数。冲刺期间,建议通过任务分解确保每日完成1-2个完整功能点,配合自动化测试和代码审查机制,在保证质量的前提下,合理代码量自然产生。
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值