Ho visto alcuni post che hanno forti motivi per evitare l'uso di protected:
Perché i campi privati non sono sufficientemente protetti?
Perché il codice Clean suggerisce di evitare le variabili protette?
E ci sono altri post che suggeriscono che non abbiamo bisogno di ereditarietà:
Perché dovrei preferire la composizione all'ereditarietà?
E alcuni altri post hanno suggerito che l'ereditarietà può avere alternative:
Si tratta di un uso improprio di "composizione sull'ereditarietà"?
Devo forzare "la composizione sull'ereditarietà "Regola ai membri della classe?
Quindi ho un'idea piuttosto "moderna": se il campo "protetto" è così dannoso, i linguaggi OOP dovrebbero eliminare la parola chiave "protetta" per costringere i programmatori a scrivere codici puliti e di alta qualità? Se la risposta è "NO!" , qual è la ragione per consentire i campi "protetti"? Ad esempio: quando abbiamo effettivamente bisogno di "protezione"?