2014-10-15 3 views
1

Может кто-нибудь сказать мне, что разница между N-слоем и N-Tier architecture.I знает архитектура 3-слоя имеет 3 слоя: пользовательский интерфейс, бизнес-логику (BLL) и Logic Data Layer (Dll)Является ли архитектура N-уровня и N-уровня?

Но теперь, мой вопрос - это то, что N-Tier и N-Layer, и в чем разница между ними.

Также как они взаимодействуют с одним слоем в другом по отношению к C#?

ответ

2

Это не то же самое. Слой - это концепция программного обеспечения architech - как вы оформируете свой код. Tier - это концепция аппаратного архитеха - какая машина запускает часть вашего кода.

0

Слой определяет логическое разделение. Если у вас 3 слоя, это означает, что у вас есть 3 отдельные части системы, каждая из которых несет ответственность за отдельную вещь.

Уровень определяет физическое разделение между слоями. Это не означает, что это должно находиться в отдельных машинах, но это означает, что детали являются отдельными и могут быть установлены и использованы сами по себе.

0

Речь идет об абстракции.

Прочитайте wikipedia's article on multitier architecture, и он скажет вам, что действительно уровень vs level о программном обеспечении и аппаратном обеспечении. Но это не следует строго, как заглянуть в OSI 7 layer model покажет вам (это не все программное обеспечение, но все равно они называют все слои). И действительно, дело не в этом. Абстракция - это точка.

Будь то уровень или уровень, каждый уровень фокусируется на одной четкой ответственности и соединяется с соседними слоями как можно меньше и как можно проще. Удержание соединений несколько и просто (свободная муфта) позволяет заменять альтернативные реализации уровня, не нарушая других. Этот трюк работает так же, как и в программном обеспечении.

Итак, как взаимодействовать с одним слоем с другим в C#? Это действительно зависит от того, что вы делаете. Весь ваш код C# может быть логическим уровнем, координирующим взаимодействие между уровнем представления html с уровнем базы данных SQL. Или это может быть у вас много слоев в игре с дизайном model view controller. В этом случае все слои находятся на C#. Или это может быть просто три класса, которые выполняют три разные вещи. Но только если они подключены правильно. То, что делает их «уровнями» или «уровнями», состоит в том, что уровень 1 должен пройти через уровень 2, чтобы перейти на уровень 3. 1 не разговаривает с 3 и 3, не разговаривает с 1.

Но то, что действительно делает его работу абстракцией. Хороший уровень базы данных упрощает обновление и запрос базы данных, скрывая ненужные детали с логического уровня. Удаление этих деталей облегчает запись и чтение логического кода.

По этой же причине мы кладем колпаки на автомобили. Вы можете снять капот, сесть на блок цилиндров, зажечь стержень в стойке & шестерню в сборе, захватить дроссельный кабель и управлять автомобилем. Поскольку капот уже не в пути, вы можете теперь делать удивительные вещи, например, менять масло со скоростью 60 миль в час. Тем не менее, я думаю, вы обнаружите, что вам удобнее управлять с капюшоном и за рулем, и все эти детали двигателя отвлечены.

Смежные вопросы