【发布时间】:2020-02-26 12:20:38
【问题描述】:
getSummary 和 getMovementType 方法是否因为知道太多 (Context) 而违反了 SRP?这些方法用于RecyclerView.Adapter。
abstract class Movement(
val movementId: Int = 0,
val created: Date = Date(),
val createdBy: String = "",
val movementActive: String = Constants.ACTIVE,
var quantity: Double = 0.0,
var material: Material = Material()
) {
abstract fun getSummary(context: Context): String
abstract fun getMovementType(context: Context): String
}
data class Entry(
val id: Int = 0,
var observation: String = "",
var warehouse: Warehouse = Warehouse()
) : Movement() {
override fun getSummary(context: Context) =
context.getString(R.string.title_warehouse) + ": ${warehouse.name}. " +
context.getString(R.string.title_material) + ": ${material.name}. " +
context.getString(R.string.quantity) + ": $quantity. " +
context.getString(R.string.observation) + ": $observation. " +
context.getString(R.string.user) + ": $createdBy"
override fun getMovementType(context: Context) = context.getString(R.string.title_entry)
}
【问题讨论】:
-
这个问题将根据意见得到答案,这与堆栈溢出无关,您最好在另一个社区提出这个问题
标签: android kotlin single-responsibility-principle