当第一次接近项目时,最好退一步思考一切,或者只是潜入并在以后开始编码和打磨?从本质上讲,您是先设计还是尝试快速原型?
我被这两种方法都烧了,有时候我会尝试思考一切,但是当我真正深入了解细节时,我会遇到一些我没有考虑过的问题,有时当我第一次编码时,我会以需要的代码结束重做以适应更好的整体设计.很多我的问题源于经验不足,但欢迎任何建议.
逐步地和迭代地去.
设计一下,实现一下.
从设计开始,您可能会遇到隧道效应,在实际执行某些操作之前,您无法获得任何真实的反馈.
从没有设计开始,你可以做出你会后悔的决定.
理想的情况是能够实现系统的非常骨架的端到端版本,可以对其进行测试和演示.
首先设计总是更安全,但这并不意味着原型设计不起作用.原型设计的真正问题是抵制保留已编写代码的冲动,而不是在设计时将其丢弃.
没有银弹.看起来设计首先是首选的方法.但是,您无法预测实施设计时可能出现的所有复杂情况.其中一些可能会显示停止者.另外,如果你是为客户写作,最好能够展示一些东西,以确保你在同一页面上.
在我的工作场所,我们同时做两件事 - 我们做一个快速原型,只是为了获得反馈并了解任何潜在的问题.然后我们进行正式设计和正式实施.在大多数情况下,我们能够从原型设计阶段挽救大量代码.我喜欢这种方法,因为我们通常最终得到干净,可维护的代码.