Описание тега n-tier-architecture
Многоуровневое приложение обычно имеет три уровня, которые называются уровнем представления, бизнес-уровнем и уровнем данных.
Слой презентации
Уровень представления - это уровень, отвечающий за отображение пользовательского интерфейса и "управление" этим интерфейсом с помощью бизнес-уровня.
Бизнес-уровень
Бизнес-уровень - это уровень, отвечающий за доступ к уровню данных для извлечения, изменения и удаления данных на уровень данных и из него, а также за отправку результатов на уровень представления. Этот уровень также отвечает за обработку данных, полученных и отправленных на уровень представления.
Часто этот уровень делится на два подуровня: уровень бизнес-логики (BLL) и уровни доступа к данным (DAL). Уровни бизнес-логики находятся над уровнями доступа к данным, то есть BLL использует классы и объекты DAL. DAL отвечает за доступ к данным и их пересылку в BLL.
Уровень данных
Уровень данных - это база данных или сам источник данных.
Логические уровни и физические уровни (распределенные)
Логические и физические уровни сбивают людей с толку. Во-первых, логический уровень означает, что уровни являются отдельными с точки зрения сборки или наборов классов, но по-прежнему размещаются на одном сервере. Физический уровень означает, что эти сборки или наборы классов размещаются на разных серверах с некоторым дополнительным кодом для обработки взаимодействия между уровнями. Например, удаленное взаимодействие и веб-сервисы.
Вывод
Зачем использовать многоуровневую архитектуру? Поскольку каждый уровень может быть расположен на физически разных серверах с незначительными изменениями кода, они масштабируются и справляются с большей нагрузкой на сервер. Кроме того, то, что делает каждый слой внутри, полностью скрыто для других слоев, и это позволяет изменять или обновлять один слой без перекомпиляции или модификации других слоев.