Che cosa è una pratica migliore: costringere l'utente ad estendere la classe astratta o a creare una classe con la configurazione? Per esempio. pseudocodice:
ClassA{
this.name
this.weight
this.height
this.width
constr(config){
this.name = config.name
this.weight = weight
this.height = height
this.width = width
}
}
o
abstract ClassA{
this.name
this.weight
this.height
this.width
}
ClassB extends ClassA{
this.name = 'Item'
this.weight = 12
this.height = 11
this.width = 14
}
Fino ad ora usavo la configurazione perché la maggior parte delle librerie utilizza questo metodo, ma cosa c'è di sbagliato nel secondo metodo? Recentemente ho scoperto che il metodo con estensione sta producendo codice più chiaro ma forse mi manca qualcosa?