Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 当我在一个小项目中使用设计模式时,这能被认为是一个“错误”吗;过度杀戮;?_Design Patterns_Project Management - Fatal编程技术网

Design patterns 当我在一个小项目中使用设计模式时,这能被认为是一个“错误”吗;过度杀戮;?

Design patterns 当我在一个小项目中使用设计模式时,这能被认为是一个“错误”吗;过度杀戮;?,design-patterns,project-management,Design Patterns,Project Management,我见过程序员以经典的过程方式编写代码太快。他们可以在几个小时内为认证系统编码。很好,整洁,最显著的是…交付速度“闪电般”快 但是,一个主要的缺陷是,每当发生更改时,我们都必须通过核心代码来修复 所以我想到了使用设计模式;但这将意味着在我们处理事情的方式上增加一件非常重要的事情:我们必须通过图表进行系统分析,这样我们才能有效地应用设计模式,如观察者和合成、装饰、工厂、单体等等……而我们的老板肯定不希望听到我们“需要额外的时间”当我们所做的一切都以程序化的方式进行时,速度会快得多(更不用说我们总是可

我见过程序员以经典的过程方式编写代码太快。他们可以在几个小时内为认证系统编码。很好,整洁,最显著的是…交付速度“闪电般”快

但是,一个主要的缺陷是,每当发生更改时,我们都必须通过核心代码来修复

所以我想到了使用设计模式;但这将意味着在我们处理事情的方式上增加一件非常重要的事情:我们必须通过图表进行系统分析,这样我们才能有效地应用设计模式,如观察者和合成、装饰、工厂、单体等等……而我们的老板肯定不希望听到我们“需要额外的时间”当我们所做的一切都以程序化的方式进行时,速度会快得多(更不用说我们总是可以修改核心)

对于一些小项目,比如说,一个酒店列表网站……或者一个产品库网站(有很多功能),做图表的“额外时间”值得吗


一个附带的问题:你的团队刚开始编程时,你有没有把事情改变成必须花一周时间进行“无聊”的图表和分析?

这真的是关于规模的问题。在较大的项目中,你可以通过做“枯燥”的分析来节省时间,而在较小的项目中,你实际上可以延长总体时间。(尽管如此,即使是最小的任务也会受益于一些前期思考/涂鸦时间)


无论如何,我要说的是,不要仅仅为了适应模式而改变你的方法。它们就像其他任何工具一样,而不是包治百病的灵丹妙药。

真正的问题在于规模。在较大的项目中,你可以通过做“枯燥”的分析来节省时间,而在较小的项目中,你实际上可以延长总体时间。(尽管如此,即使是最小的任务也会受益于一些前期思考/涂鸦时间)


无论如何,我要说的是,不要仅仅为了适应模式而改变你的方法。它们就像其他任何工具一样,而不是包治百病的灵丹妙药。你不理解“设计模式”的含义——它只是指在有人命名之前已经完成的事情。例如,排序一个数组,然后对其使用二进制搜索是一种设计模式——我过去肯定已经使用过几百次了,当我设计一个需要搜索的小应用程序时,这是我想到的第一件事。有经验的程序员在最小的项目和最大的项目上都使用这种模式。

你不理解“设计模式”的含义——它只是指在有人命名之前已经完成的事情。例如,排序一个数组,然后对其使用二进制搜索是一种设计模式——我过去肯定已经使用过几百次了,当我设计一个需要搜索的小应用程序时,这是我想到的第一件事。有经验的程序员在最小的项目和最大的项目上都使用这种模式。

我的经验是,90%的时间里,直接跳到代码上是个坏主意。即使是在小项目上,我最终也会浪费时间,因为我们没有正确地实施事情,或者没有为XYZ失败案例做好充分的计划。没有计划的编码通常是个坏主意

我并不是说您必须使用UML或编写300页的规范,但我发现在编写任何代码之前,用例和错误条件对于计划是至关重要的


当涉及到设计模式时,答案是肯定的,花时间思考它们,并绘制出它们有用的地方。。。以及它们没有用处的地方。对于一个小项目来说,一周的时间可能是多余的,但是一些计划会产生更好的代码,更易于维护,从长远来看更有用。

我的经验是,90%的时间里,直接跳到代码上来是个坏主意。即使是在小项目上,我最终也会浪费时间,因为我们没有正确地实施事情,或者没有为XYZ失败案例做好充分的计划。没有计划的编码通常是个坏主意

我并不是说您必须使用UML或编写300页的规范,但我发现在编写任何代码之前,用例和错误条件对于计划是至关重要的


当涉及到设计模式时,答案是肯定的,花时间思考它们,并绘制出它们有用的地方。。。以及它们没有用处的地方。对于一个小项目来说,一周的时间可能是多余的,但是一些计划会产生更好的代码,更易于维护,从长远来看更有用。

设计模式不是你“决定使用”的东西。如果你有足够的经验去看他们,他们自然会来。而且它们不是开销——要添加的代码量相当小。

设计模式不是您“决定使用”的东西。如果你有足够的经验去看他们,他们自然会来。而且它们不是开销——要添加的代码量相当小。

俗话说“如果你有一把锤子,那么一切都开始看起来像钉子”,这意味着如果你知道设计模式,你会不断尝试将它们嵌入,即使你可能不需要它们。请记住,在编码设计模式、单例、工厂等方面。。。就实施时间而言,它们非常轻量级,不应该对管理层提及

然而,正如您所说,分析和“图解”是非常有价值的。如果它是一个小项目,那么它将花费少量的时间,没有什么可担心的。通常,快速分析和“预先考虑”会比简单地剪切代码更早地突出任何问题。

俗话说“如果你有一把锤子,那么一切都开始像钉子一样”,这意味着如果你知道设计模式,你会不断尝试将其融入,即使你可能不需要它们。请记住,在编码设计模式、单例、工厂等方面。。。它们很轻