2010-01-22 22 views
1

1. 我需要建立一个“Web服务服务器(模拟器)”,它可以生成xml文件,并将异步调用发送到客户端以进行通知。在这里,我正在编写一个代码来生成将用于测试的虚拟XML文件(FileGeneratorClass--构建器)?我可以使用哪些所有设计模式?

2. 另外,我可以在我不必从头开始写一个完整的代码来模拟另一个Web服务的服务器和其他文件格式的方式实现这一点? - 我可以利用哪种模式?

3. 对象/类是从Schema文件(对于xml文件)和WSDL(对于Web服务)生成的,如何使我的代码免于对这些文件(更新版本)的更改? - 哪种设计模式?

(请让我知道,如果我提供的信息过多或过少,如果你还需要我来编辑)

非常感谢你。

免责声明:我是一个完整的新手,为这个小项目使用模式可能是矫枉过正,但我​​想这样做,以便我学习/理解它。我认为,当我需要在一个更复杂的项目中这样做时,我会有信心和清晰。

回答

10

模式不做任何事情。你打算在写一本神秘小说时,是否应该使用介词短语。你不会开始设计说明我需要什么样的模式。模式从设计过程中出现。你说我的程序需要x和y,这与类似这样的模式类似,我应该看看这个模式是否合适。如果有,请使用它。如果不适合,不要强迫它适合。

你正在像模式一样对待模式。不要这样做。这不是他们的目的。他们不是积木。他们不是清单条目。它们正是模式暗含的世俗意义。他们是你一遍又一遍地看到的东西。很多时候你会提前感受到它们的必要性,所以你把它们包含在设计中。但他们不是起点。

+0

你是在暗示我应该编写代码,然后慢慢地对我曙光?换句话说,“是绝对需要了解在哪里使用的体验的经验”。 – 2010-01-22 22:58:53

+0

我认为正确的思考方式是在你最初的编码过程中,你什么也没做就开始编写它。一旦你开始看到重复的代码或者有太多的耦合,或者需要在其他地方重新使用等等,那么你就可以在必要时应用模式来解决其中的一些问题。模式应该在需要重构的时候应用。 – 2010-01-22 23:06:02

+0

不可以。我在说你应该设计接口和类层次结构,以及你选择的设计方法支持的其他任何东西。在深入研究设计时,我们称之为设计模式的东西将会出现。然后,而不是解释为什么你有这个功能,你只是它使用特定的模式,并继续前进。 – jmucchiello 2010-01-22 23:21:49

3

有时候除了做研究之外,没有别的办法。如果你想学习设计模式,然后开始学习设计模式。每天学习一点,当你做你的正常编码时,你会开始看到你学到了什么。就个人而言,我喜欢Wikipedia has tackled the topic(相对于一些书籍)。阅读概述,然后深入了解您认为与您正在尝试做什么有关的内容。

此外,您可能会对Enterprise Integration Patterns感兴趣,而不是设计模式,它们更多地应用于Web服务而不是算法。

+0

是的,谢谢! – 2010-03-23 22:56:35

相关问题