由于我确定标题不太明确,我会详细说明我的问题。
我目前正处于一个涉及字母识别图像处理的软件开发项目中。一种更原始的特征提取方法涉及存储预编译的数据文件并对其进行检查。现在,为了实现这一目标,在流程的某个阶段,必须从已知的图像源编译数据,并且我们已经完成了所有这些,但是数据编译的功能应该在哪里发生? / p>
我有一个名为featureExtraction
的包,其中包含一个名为VectorAnalysis
的类,它使用预编译的数据。目前VectorAnalysis
类包含在请求时生成数据的功能,但我想将所有功能提取到一个单独的包中(因为还有一些其他提取方法也需要预编译数据,因此有他们自己的数据构建方法,拥有数据生成包似乎是合乎逻辑的。)
问题在于数据生成功能通常依赖于各自提取类中的private
或protected
功能。
所以最终我的问题是:
更好的做法是在提取类中生成数据,还是应该打开对提取类的内部工作的访问权限,以便生成方法可以从外部包访问它们?
或者是否有一些我忽略的完全不同的做法?
答案 0 :(得分:0)
不完全理解你的问题,但我会尽力回答。更好的做法是将所有功能分成许多类:每个类的功能都很小。所有类都应尽可能重用,并具有适当的思想公共接口(类'公共成员,而不是Java接口,我的意思)。因此,您可以在任何包中使用低级和高级函数。