程序员修炼之道:从小工到专家第七章读书笔记
需求之坑
完美,不是在没有什么需要增加,而是在没有什么需要去掉时达到的。这句话的一种解读时,不要搜集需求,需求太多,容易让我们抓不住重点,更应该深挖需求,围绕核心功能不断打磨。挖掘需求,需要我们与用户一同工作,像用户一样思考。制定需求文档。看待用例的一种方式是强调其目标驱动的本质,它强调的是要重视需要做成什么以及需要什么条件。需求文档最好配一些UML用例图。需求的制定不能太具体,要保持一定的抽象。需求不是架构,不是设计,需求只是需要。这个有点类似于开发中的面向接口而不是面向具体实现编程。
解开不可能解开的谜题
面对看似不可能解决的问题,一定要转换思路,不要受任何先人之见影响。不要在盒子外面思考,要找到盒子。有时你会发现,自己在处理的问题比你以为的要难得多,总会感觉一定有更容易的方法。这时你可以退回一步,问问自己:有更容易的方法吗?
等你准备好
倾听反复出现的疑虑。当你遇到一个反复让你疑虑的问题,需要注意它,给自己时间去理解,之后它可能就会变成某种更坚实的东西。对于某些东西,我们可能不愿意轻易做出承诺,总希望再等等,更多意见的提出。但这很可能是一种拖延,怎么区分是有效的等待还是拖延的接口呢?我们应该快速地构建原型,并进行推延,可能很快我们就找到了更好的解决方案。
规范陷阱
编写规范是一项重要的职责,但问题是很多人可能会陷在这里,不断地增加规范项。对待开发文档也一样,不要编写过于详细的规范。因为很可能开发者在思考某个问题时会想到两种不同方案,经过简单对比,选择一个更优的那个。但面对严格的规范文档,一步步思考,这更可能束缚开发者的发挥。
圆圈与箭头
设计文档里的圆圈和箭头用来解释他们指代的作用,但这还有可能是推翻我们原先设定的证据。感觉这个是承接上一节的内容,不要被以前的假设和设计所限制,留有一定的弹性空间。我们相信,盲目地采用任何技术,而不把他们放进你的开发实践和能力的语境中,这样的处理日后可能会让你后悔。不要迷信工具以及各种方法学,注重实效的程序员会批判地看待他们,并从中提取精华,融合成每个月都在变得更好的一套工作习惯。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南