“在动手编码前,先确保理解了问题本身”,书中这句忠告,是我在数据库课程设计中用返工代价换来的深刻教训。当时课程要求开发一个图书借阅管理系统,我拿到需求文档后,看到“实现图书借阅、归还功能”就立刻投入编码,花了五天完成了核心模块。可演示时才发现,我忽略了“借阅期限计算”“超期罚款统计”这些关键需求,更没考虑到“管理员权限与普通用户权限区分”的核心逻辑,导致整个系统只能实现基础功能,与课程要求相差甚远,不得不推翻重写。
书中提出的“需求澄清三步骤”让我茅塞顿开:首先用自己的话复述需求,确认与需求方(对应校园场景中的老师、小组组长)认知一致;其次列出“边界场景”,比如图书借阅中的“续借”“丢失赔偿”等特殊情况;最后通过原型或流程图可视化需求,避免模糊地带。
书中还提醒,开发过程中要“主动沟通需求变更”。校园项目中常遇到老师临时调整需求的情况,之前我会抱怨“朝令夕改”,现在则会主动询问变更的核心目的,评估对现有代码的影响,并同步调整开发计划。比如一次实训中,老师要求增加“学生成绩排名可视化”功能,我通过沟通得知是为了答辩时更直观展示,便选择了简单易实现的柱状图而非复杂的热力图,既满足需求又避免了过度开发。
核心收获:对大学生而言,编码只是实现手段,精准理解需求才是项目成功的前提。通过复述确认、边界梳理、可视化沟通,能有效减少返工,培养“以解决问题为核心”的开发思维。