вопрос дизайна шаблона - PullRequest
0 голосов
/ 31 марта 2011

Я совершенно новичок в разработке шаблонов ... Ниже приведена архитектура, за которой я следую .. Кто-нибудь может сказать мне плюсы и минусы этого ...

  • Entities -> состоит из свойств с методом get / set
  • DAL -> Уровень доступа к данным -> обрабатывает выполнение БД
  • BLL-> Уровень бизнес-логики
  • UI -> пользовательский интерфейс

Допустим, у нас есть таблица клиентов с customerid, customername

Таким образом, сущности получат заданные свойства для customerid и customername

  • UI -> передаст customerid и customername в BLL
  • BLL-> сделать проверку передать его в DAL
  • DAL -> отправит его в базу данных

Я действительно не понимаю, как много слоев ...

Ответы [ 3 ]

1 голос
/ 31 марта 2011

Отличной книгой о шаблонах дизайна является книга О'Рейли «Head First Design Patterns». Это мне очень помогло. Он показывает вам, как хороший дизайн и разделение проблем облегчают обслуживание и повторное использование. Одним из доводов в пользу наличия нескольких слоев является то, что для этого требуется больше планирования заранее, но в конечном итоге это более чем необходимо.

1 голос
/ 31 марта 2011

Слои, которые вы описываете, имеют отдельную роль:

  • интерфейс представляет пользователю и позволяет взаимодействие с пользователем
  • BLL проверяет пользовательский ввод и достоверность данных
  • DAL обеспечивает согласованный / согласованный интерфейс с базой данных

Отделение проверки данных от интерфейса имеет много преимуществ - например, безопасность или возможность (радикально) изменить пользовательский интерфейс без изменения ядра вашего приложения. Это одна из основных предпосылок шаблона проектирования Model-View-Controller.

Отделение доступа к базе данных от бизнес-логики позволяет изменять реализацию базы данных, схему базы данных и т. Д., Не изменяя бизнес-логику одновременно, таким образом, разъединяя их,

Разделение функционально различных частей приложения позволяет вам независимо тестировать эти части, поддерживать их (относительно) независимо и т. Д. В долгосрочной перспективе это позволяет избежать головной боли при обслуживании и, часто, ошибок.

1 голос
/ 31 марта 2011

Шаблоны дизайна на самом деле не определяются темами, которые вы упоминаете.Не заблуждайтесь, они являются частью решения.

Шаблон проектирования - это многократно используемое решение часто встречающейся проблемы в разработке программного обеспечения.

Часто егоТрудно понять, почему шаблон проектирования стоит усилий, пока вы, наконец, не начнете кодировать проект, который удовлетворяет некоторым из этих критериев:

  • Скромно сложное приложение
  • Вовлечено несколько программистов
  • Тестирование важно во время реализации
  • Масштабируемость вашего приложения важна в будущем (с неизвестными пределами того, сколько нужно масштабировать)
  • То же самое касается гибкости приложения

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

= D

...