2017-04-19 31 views
0

我正在实现一个通过FTP发送/接收特定格式化文本文件的应用程序。通常它需要一段信息,并使用模板构建请求文件。然后该文件被发送到FTP。一段时间后,请求文件被完成,然后被下载回来,数据被解析并存储到数据库中。滥用静态类

这是一个非常简单的工作流程,但我坚持设计阶段。我试图应用分离的关注点,以使代码更具可读性,但我始终期望使用静态类而不是实例。特别是在实现诸如文件构建器和解析器之类的组件时,看起来像这些实例对象(或者至少我没有看到)没有任何好处。

我在这里通过使用静态类缺少重点,或者这是非常合理的解决方案吗?你会如何解决这个问题?

+0

使用静态类没有任何问题。我说遵循你的直觉! –

回答

1

静态方法一般用于提取一些代码,它可以重复使用accros项目,类Math是一个很好的例子,它有很多有用的方法可以在任何地方使用。

类/接口用于定义新类型。

所以你这样下去,解析器和构建器是不是类型?

在你的情况下,它更好地使分析器和构建器成为混合对象,以便从多态性中受益,你继续这样做,为分析器创建一个接口,然后在新类中实现它,然后参考你的解析器总是通过接口,为什么?因为通过这样做,只需创建实现解析器接口并将其注入代码中的新类,就可以轻松地更改实现。