Mi sono imbattuto sempre più in questo problema: non sono soddisfatto dell'API corrente e finisco per creare una mia classe che faccia ciò che desidero abbia fatto l'API; tuttavia, non estendo la "super classe" in quanto non la sento pienamente adatta. Non riesco a immaginare che questa sia una buona pratica, quindi dovrei semplicemente estendere la 'super classe' o dovrei nominare la classe leggermente diversa da quella che ritengo dovrebbe essere la classe originale?
Ad esempio , in Java finisci per scrivere dieci righe di codice solo per leggere un file in una lista, ogni voce è uno dei file.
Quindi di nuovo, in casi come questo, se la classe dovesse essere rinominata in qualcosa di simile, o dovrebbe andare avanti e semplicemente estendere la classe includi il comportamento che volevi? Sembra quasi sbagliato per me estendere le classi API, ma allo stesso tempo, non facendolo, stai sconfiggendo il punto di ereditarietà in OOP.