【发布时间】:2020-01-10 10:51:38
【问题描述】:
我的项目中有多个对象类,我需要将一个对象转换为另一个对象。
我尝试创建一个通用工具并开始转换它们,代码开始增长并且无法在单个文件中进行管理。
然后我开始创建类似于此的个人transformer 类,
/** This transforms [Square] to [Rectangle] **/
object SquareToRectangleTransformer {
fun transform(square: Square): Rectangle {
checkNotNull(square.side) { missing ("side") }
val length = square.side
val breadth = square.side
return Rectangle(length, breadth
}
}
现在我的项目有多个类似于上述的转换器类,现在我发现这种方法是一种反模式,因为它会产生类爆炸问题。
我搜索了其他替代方案,例如插件或依赖库,它们可以用更少的代码和源代码为我完成这项工作this answer interesting。
Kotlin 中是否有任何类似的库可以为我完成这项工作?
【问题讨论】:
标签: kotlin design-patterns object-object-mapping