我只想知道是否可以改进处理所有磁盘访问功能的特定类的结构
我的程序的结构是我有一个名为Disk的类,它从平面文件和数据库中获取数据,你猜对了,硬盘驱动器。我有像
这样的功能LoadTextFileToStringList, WriteStringToTextFile, DeleteLineInTextFile 等
是一种“通用方法”
在同一个类中,我还有一些更具体的方法,例如GetXFromDisk,其中X可能是数据库表/查询中的特定字段。
我是否应该从专业化的方法中分离出通用方法。我应该创建另一个继承泛型方法的类。目前我的班级是静态的,因为没有必要具有班级的内部状态。
我不是在寻找我吗?
由于 托马斯
答案 0 :(得分:2)
如果你只使用静态静态函数,那么就像你说的那样,你并不是真正的OOPing。它用OO语言编写程序代码。
您应该创建代表问题域中对象的类,例如File
和TextFile
。这些类应具有DeleteLine
,WriteLIne
,Load
等操作。
此外,在您编写的任何语言中,它可能都有一个好的文件IO库。尽量在代码中使用它。如果需要,只需在库类上编写包装器以提供一些额外的功能。
答案 1 :(得分:0)
嗯,您在代码中看到的是一个Utilities类,您可以在其中捆绑所有文件方法
这可能表明一些设计问题,但恕我直言,这是可以的,因为在OOP设计中通常有实用程序类
它具有能够添加额外方法或修改现有方法的好处,因为您不会有任何派生类扩展Utility类以受到影响。
例如,java到处都有静态方法。例如。 Collection
上课
我建议让类的构造函数为private
,并且命名很明显,这是一个Utilities类。