在过去的几个月里,我最近开始使用 Java 进行编码。我有一个 Matrix 类,它有很多方法,变得过于臃肿。我还有一个 SquareMatrix 类,它扩展了 Matrix,并减少了一些臃肿。
我发现 Matrix 类中的许多方法通常与矩阵相关。它具有所有基础知识,如 addMatrix(Matrix)、multiplyMatrix(Matrix)、multiplyMatrix(float),以及更复杂的方法,如 getGaussian(Matrix) 或 getLUDecomposition(Matrix)。
在减少班级矩阵中的行数方面,我有哪些选择?一个类变得非常大是正常的吗?我不这么认为......这是我应该尽早考虑的事情并且重构很困难吗?还是有简单的解决方案?
谢谢!
编辑:在阅读了几个回复后,我正在考虑执行以下操作:
实用程序类Matrix 包含矩阵的所有常用/基本方法
委托类(Helper/sub):
*助手类* getGaussian(..), getLUFactorization(..), ...
子类 (扩展矩阵)SquareMatrix、LowerTriMatrix、UpperTriMatrix、...
委派似乎类似于在 C++ 中定义多个带有标头的 .cpp 文件。仍然欢迎更多提示。
Edit2:另外,我更喜欢通过正确设计来重构,而不是快速修复。我希望它对未来的项目有所帮助,而不仅仅是这个。