2008-08-07 3 views
2

ASP.Net 2.0 응용 프로그램을 BLL (Business Logic Layer)없이 사용하려면 다음과 같이 "허용"합니까?비즈니스 로직 레이어가없는 ASP.Net 2.0 애플리케이션?

  1. SQL 서버 데이터 저장 & 저장 프로 시저
  2. 데이터 링크 계층 procs 저장 똑바로 DLL
에 연결하기위한 뒤에 코드 및 ObjectDataSource를 가진
  • 프리젠 테이션 레이어 ASPX 페이지에 연결 (강하게 표 어댑터를 형식화)

    비즈니스 논리가 프레젠테이션 코드에서 전적으로 유효 한 경우에도 BLL이 항상 바람직합니까? BLL을 사용하지 않을 경우 잠재적 인 단점은 무엇입니까?

  • 답변

    2

    다른 모든 것들과 마찬가지로 환경이며 시스템 사용에 따라 달라집니다. 당신이 당신 자신에게해야 할 질문은 다음과 같습니다

    1. 이 적극적으로
    2. 개발 될 것이다
    3. 에 수년에 걸쳐 사용하고 확장 할 예정이 응용 프로그램의 확장인가 알 수없는 및 따라서 무한한

    정말 게으르다. UI에서 시스템을 재 작업하는 데 얼마의 시간을 할애해야합니까? 비즈니스 레이어가 없으면 여러 페이지에 걸쳐 UI에서 규칙이 중복된다는 의미입니다.

    다시 말해서 이것이 개념 증명이나 짧은 데모 또는 수업 프로젝트 인 경우. 쉬운 길을 벗어나십시오.

    4

    결과를 이해하는 한 허용됩니다. BLL을 사용하는 주된 이유는 응용 프로그램 전체에서 해당 논리를 다시 사용하는 것입니다.

    프레젠테이션 코드에 모든 유효성 검사 로직이 있으면 응용 프로그램 내의 다른 곳에서 다시 사용할 수 없게됩니다.

    2

    사용할 수 있습니까? 당신이 묻는 사람과 귀하의 요구 사항이 무엇인지에 달려 있습니다. 이 응용 프로그램은 당신과 다른 몇몇 사람들이 사용하는 내부 일회용입니까? 아마 이것으로 충분할 것입니다. 그것이 수년에 걸쳐 성장하고 유지 될 생산 준비가 된 엔터프라이즈 어플리케이션을위한 것이라면, 유지 보수 가능한 어플리케이션을 구축하기 위해 더 많은 노력을 미리 투자하고 싶을 것입니다.

    Separation of Concerns는 유지 보수 가능한 앱을 구축하기위한 핵심 설계 기법입니다. 프레젠테이션, 비즈니스 및 데이터 액세스 논리를 모두 함께 사용하면 응용 프로그램 아키텍처를 변경하기가 매우 어려울 수 있습니다.

    1

    다릅니다. 비즈니스 로직이 클릭 이벤트 및 페이지로드에있는 경우 허용되지 않습니다.

    귀하의 비즈니스 로직이 일관성있는 한 DAL (예 : 저장 프로 시저 등)의 어딘가에있는 것으로 보입니다. 당신이 매우 확실하다면 고객이 항상이 SQL 서버를 사용하고 있다는 것을 확신 할 수 있습니다. 그러면이 접근법은 문제가되지 않습니다.

    모두 자신의 의견이 데이터베이스 백엔드에 대한 씬 클라이언트가 대부분인 저장 프로 시저의 비즈니스 논리 : 그는 자신이 판매하는 제품으로 대단히 성공적이었습니다. 그러나 그것은 그가 그것과 매우 일치하기 때문입니다.

    0

    응용 프로그램이 일반적인 응용 프로그램 인 경우 비즈니스 논리 계층은 완전한 다른 응용 프로그램에도 사용할 수 있습니다. 마찬가지로, 나는 일반적으로 다른 응용 프로그램에서 내 CMS 관련 BLL 클래스를 사용합니다.