В: Почему вы должны рассматривать API как «уровень»?
Для аргумента давайте определим «уровни» как:
Механизм структурирования дляэлементы, составляющие программное решение
Если вы подумаете об этом, не будет ли ваш API-интерфейс разрезать по по всем трем уровням (или, по крайней мере, по всем уровням, которые выс вашим API)?