一些开发人员在完成任务时直接进入IDE并以极少的设计开始编码。他们可能知道应用程序在编码时的位置。我是这些开发人员之一。我这样做是因为我觉得,如果我花费大量时间设计我的应用程序,那么与我只是坐下来编写我的想法中的想法相比,交付时间会更高。我的问题是应用程序设计如何影响项目的交付时间,它是否比编码敏捷方式有很大的优势?
答案 0 :(得分:6)
举个例子,当你想要旅行时, 如果您的目的地在您的城镇附近或在您的城镇,您可以立即开始。 如果你想去其他国家旅行,你需要先打包自己。
设计是为了准备,没有它,你不能走得太远(或走错路)。
答案 1 :(得分:2)
这不是一个黑白情况:对于某些项目来说,跳入并开始编码要好得多,对于某些人来说,最好有一个广泛的规划阶段,而对于其他项目来说,它并不是很明确。
如果项目很小而且很简单,只有一个开发人员正在处理它,如何构建它很明显,他们可以想象它的每一个方面,那么他们就可以很好地进入并开始设计。
当您有多个开发人员时,或者当项目规模庞大且足够复杂以至于开发人员无法从一开始就无法了解其工作原理时,需要进行更广泛的规划,因为它太复杂而无法全面了解你头脑中的各个方面。
答案 2 :(得分:2)
如果您自己工作,这种方法才真正有效。如果你必须在一个团队中工作,那么制定一个好的计划是很重要的,这样其他人都知道你认为最终目标是什么。这不会降低创造力,只是让您确保每个人都在同一页面上,这样可以减少混淆的机会。
答案 3 :(得分:2)
如果你正在写一些很好理解和包含的东西,你所描述的只会很好。如果它与您编写的其他软件类似,则不需要新设计,因为您可以重新使用旧设计。然而,如果它是全新的东西,那么即时设计将变得昂贵。你会发现自己重写了太多的代码,或者更糟糕的是,坚持使用一个让你慢下来的糟糕架构。同样,如果您需要可扩展的代码,则需要提前计划。如果您需要它来处理来自其他人的组件,则需要提前计划。
答案 4 :(得分:0)
只是为你的等式场景添加思路,让我在此后做一点贡献:我在一家名为YES INTERNATIONAL CORPORATION(www.yesintl.com.au)的公司工作有时候,开发商可能会有这样的事情。在此之前开发了一些东西,在这种情况下,设计已经在脑海中。例如,我在过去开发了数据库解决方案,与我竞争时相比,当我坐下来开始开发项目时,我们成为了一个非常快速交付的公司。随着时间的推移,更多的经验将使你超级完美...我希望这有助于...安迪