Was in dem Zusammenhang fehlt, (meiner Meinung nach) ist das Konzept der friendklassen wie in C++
Dann muss man nicht unbedingt alles public machen was von einer unterstützenden Klasse benötigt wird.
Kleinere Unitfiles, bessere Wartbarkeit
Mit dem strict protected bin ich aber schon mal ein gutes Stück weiter beim ordentlichen Anwendungsdesign.
Verwenden meiner Meinung nach eh zu wenige Leute den
strict
Modifier (bin ich auch erst drüber gestoßen, nachdem ich schon Jahrelang mit Delphi gearbeitet habe). Habe mir angewöhnt immer
strict private
und
strict protected
zu verwenden, wenn ich die Felder/Methoden tatsächlich nur intern verwende. Mann nimmt ja auch unter z.B. Java nicht standardmäßig überall die
package
-Privacy.