Разница между 3-уровневой и n-уровневой архитектурой
Мой профессор сказал, что добавление нескольких слоев в BLL сделает трехуровневую архитектуру n-уровневой.
Но, насколько я понимаю (я могу ошибаться), уровень - это физическое разделение, а уровень - это логическое разделение, поэтому добавление нескольких уровней по-прежнему сделает его трехуровневым приложением, не так ли?
2 ответа
Вы абсолютно правы, когда говорите
уровень - это физическое разделение, а уровень - это логическое разделение, поэтому добавление большего количества слоев делает его n-уровневым решением, а не n-уровневым решением. Добавление такого большого количества слоев может увеличить сложность вашего решения, поэтому постарайтесь также избежать многоуровневых решений. Обычно приложение делит свои слои на две широкие категории.
1- Горизонтальные слои: эти слои используются для обеспечения функциональности всего приложения, и их можно повторно использовать в различных решениях. Пример слоев:
a- Logging Layer
b- Security Layer
2- Вертикальные уровни: это уровни, которые фактически логически создают ваше приложение, например, пользовательский интерфейс, бизнес-логика, доступ к данным, и теоретически эти уровни также могут использоваться в аналогичных приложениях с некоторыми изменениями. Горизонтальные слои используются поперек вертикальными слоями.
Даже если уровень обычно используется для отражения физического разделения, а уровень - для логического разделения, понятия уровня и уровня часто используются взаимозаменяемо.
Хотя многоуровневая архитектура (Википедия) не является авторитетным источником, она довольно хорошо читается.