【问题标题】:Which design pattern to follow?遵循哪种设计模式?
【发布时间】:2017-02-07 07:41:14
【问题描述】:

我需要创建一个应用程序来读取 CSV,进行大量操作,最后将数据加载到某个目标 Oracle 云应用程序中。

  1. 会有各种源应用程序。在 main 方法中,我们将提供源应用程序名称,根据源应用程序名称,它将读取该特定源应用程序的属性文件并加载所有值,如源文件夹名称、源文件名称等。有 20 多个源应用程序,因此有 20 多个属性文件。我应该遵循哪种设计模式来实现它?

  2. 调用一系列操作来处理文件并上传到目标,例如文件读取,文件验证检查,文件操作,文件上传,文件上传状态检查等。哪种设计模式最好实现这种功能?

【问题讨论】:

标签: design-patterns


【解决方案1】:

对于您的第一个用例,听起来您根本不需要设计模式。它似乎是一个接受文件名参数的方法,然后打开该文件并读取其内容,可能返回解析值的结构。没有必要把事情弄得太复杂。

对于您的第二个用例,听起来责任链是合适的。 https://en.wikipedia.org/wiki/Chain-of-responsibility_pattern Wikipedia 可能不是了解它的最佳资源,因此我建议您进行一些研究,看看这是否满足您的需求。

最后一点,请记住,设计模式是达到目的的手段,而不是目的本身。设计模式并不总是能很好地映射到您手头的问题,所以不要让那个框出现在您的想象中。

【讨论】:

    【解决方案2】:

    对于第一个场景

    工厂

    模式应该有效,

    var properties = propertyFactory.GetProperties(applicationName)
    

    对于第二种情况,

    你可以使用

    责任链

    提到Erik的模式

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多