Очень интересные теории
Но интерфейс
объекта (подчёркиваю)
объекта , а не класса задаётся не архитектором (что бы его заразу премии решили

) и не внутреннюю структуру классов, и тем более "класс в котором все методы абстрактные" и ещё круче "просто интерфейс это как
чертеж для наследуемых классов (вот это уже конечно не к селу не к городу мягко говоря)"

, а интерфейс в начале задаётся от того ЧТО ОН (объект, класс) хочет предоставить другим классам (объектам). Интерфейс даёт (немного twina

) наверное обескуражу

... но "Он скорее говорит - "обязательно используй то, что есть, но если что то понадобилось еще - не забудь задокументировать". Дабы не запутаться и не запутать других. " Если этого не будет "наверное" из за этого стандарты и не принимаются и разработчики ("нижнего звена" постоянно попадают, причём очень лихо).