梦断代码04
作者不是简单罗列Chandler开发中的问题,他还是提出了许多开发过程中的一些方法和注意事项。作者很看重方法的选择,对于不通的情况,应该采用不同的方法,他说“决定采用何种工具和方法有可能成就或毁掉项目”。
首先是如何设计项目的目标。这个和项目的信仰很矛盾,理想是做一个很出色很优秀的软件,但是很多情况下是力不从心的,项目过大很容易埋葬自己。文中有一段很有意思的对话:“你对那些刚开始做大型开源项目的人有何建议?”“别做大项目”。卡普尔在Chandler的设计过程中一直想坚持“Agenda之魂”,现实却一次次的消磨这种想法。后来他只期望做出一个“狗食版”,但是“狗食版”都是一件多么奢侈的愿望。实际上大家都希望看到自己的努力有实质性的成果,做出一个“狗食版”有利于较大目标的实现。
其次是进度管理,这在软件工程中是不可预知的。首先是进度的衡量难,不能单一的用代码数量和缺陷减少数量。在软件过程中有很多很顽固的缺陷,在当前很难快速的解决。还有就是人与人之间是很难协调的,比如新加了个成员,需要新成员培训;比如更换了项目经理等等。文中提到“特性驱动”“进度驱动”等,在实际的管理过程中两者兼有,只是侧重点不通罢了。对于是否需要用强制进度纪律来管理,作者谨慎的给出了说明:这要看情况来定。有些程序员不喜欢被强制管理,那么强制纪律最好不要用。如果进行强制进度管理,那么在评估进度的时候要符合现实,采用“自底向上”的方法评估。比如文中的CMM管理。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端