글
STUDY/DAAB 2007. 4. 26. 12:09[Study] DAAB(Data Access Application Block) in Enterprise Library 2.0 - (1)
개요
DAAB(Data Access Application Block) in Enterprise Library for .NET 2.0은DAC(Data Access Component) 레이어에서의 반복적인 ADO.NET 코딩량을 감소시켜주며 DB 커넥션 관리와 같은 사용자가 실수하기 쉬운 부분을 관리해주는 DAAB(Data Access Application Block)이 Enterprise Library에 통합된 버전이다. 또한 Enterprise Library 1.x에 있던 DAAB를 ADO.NET 2.0의 변화된 기능에 맞게 수정한 것이DAAB(Data Access Application Block) in Enterprise Library for .NET 2.0이다.
DAAB(Data Access Application Block) in Enterprise Library for .NET 2.0은 .NET Framework 2.0 기반의 프로젝트라면 웹 어플리케이션, 윈도우 어플리케이션, 스마트 클라이언트 어플리케이션에 관계없이 사용 가능하다.
DAAB(Data Access Application Block) in Enterprise Library for .NET 2.0의 사용을 통해 DAC(Data Access Component) 레이어에서의 반복적인 ADO.NET 코딩량을 감소시킬 수 있으며 DB 커넥션 관리와 같은 사용자가 실수하기 쉬운 부분의 실수를 최소화할 수 있다.
DAAB(Data Access Application Block) in Enterprise Library for .NET 2.0은 .NET Framework 2.0 기반의 프로젝트에서 DAC(Data Access Component) 레이어의 Data Framework의 역할을 하게 된다.
이 아티클은 엔터프라이즈 라이브러리 데이터 액세스 응용 프로그램 블록의 개요를 제공한다. 이것은 .NET기반 응용 프로그램들의 일반적인 데이터 액세스 기능 개발을 단순화시켜주는 재사용 가능하고 확장 가능한 소스 코드 기반의 지침이다.
DAAB 소개
엔터프라이즈 라이브러리 데이터 액세스 응용 프로그램 블록, 버전2.0은 일상적인 데이터 액세스 기능을 구현하는 개발 작업들을 단순화 했다. 응용 프로그램들은 이 응용 프로그램 블록을 화면에 표시하기 위해 데이터를 읽고 , 응용 프로그램 계층 간 데이터 전달을 위해 데이터 가져오고 , 그리고 변경된 데이터를 데이터베이스에 다시 보내는 것과 같은 다양한 상황들 안에서 사용할 수 있다. 이 응용 프로그램 블록은 저장프로시저와 인라인SQL 모두에 대한 지원을 포함하고 있으며, 연결들을 관리하는 것이나 파라미터들을 만들고 캐싱하는 것과 같은 일상적인 작업들은 이 응용 프로그램 블록의 메소드 안에 내장되어 있다. 다시 말해, 데이터 액세스 응용 프로그램 블록은 ADO.NET에서 가장 자주 사용되는 기능들에 대한 액세스를 제공한다.
이 응용 프로그램 블록은 또 Microsoft SQL Server, Oracle, 그리고 DB2를 포함한 다수의 데이터베이스 서버들에 동일한 코드를 사용할 수 있게 해줌으로써 이식 가능한 응용 프로그램 코드 개발을 용이하게 한다. 이것은 공통된 인터페이스를 정의하고 데이터 액세스 메소드들을 위한 대부분의 구현을 제공하는 추상화된 기반 클래스를 사용함으로써 가능하다. 예를 들어, SQL Server 한 종류의 데이터베이스를 위해 작성된 응용 프로그램들은 Oracle과 같이 다른 종류의 데이터베이스를 위해 작성된 응용 프로그램과 같아 보이게 된다. 데이터 액세스 응용 프로그램 블록을 사용하고 또 이 가이드의 지침들을 따른다면, 코드들은 대부분 이식 가능한 상태로 유지된다.
데이터 액세스 응용 프로그램 블록은 다음과 같은 기능을 갖고 있다.
- 표준화된 작업들을 수행하는 반복적인 코드를 작성할 필요를 줄인다
- 한 응용 프로그램 안이나 기업 내에서 일관된 데이터 액세스 관행들을 유지하는데 도움을 준다.
- 물리적인 데이터베이스 대상을 변경하는데 따르는 어려움들을 줄인다.
- 개발자들이 다른 종류의 데이터베이스들에 대해 다른 프로그래밍 모델을 학습해야 하는 부담을 줄인다.
- 다른 종류의 데이터베이스에 응용 프로그램을 이식할 때, 재 작성해야 하는 코드의 양을 줄인다.
데이터 액세스 응용 프로그램 블록은 가장 일상적인 데이터 액세스 작업들에 대한 구현을 제공함으로써 위 기능들을 제공한다. 개발자들은 단지 다음과 같이 하면 된다.
- 데이터베이스 개체를 생성한다.
- 만약 필요한 경우, 명령에 대한 파라미터들을 제공한다.
- 적합한 메소드를 호출한다.
이들 메소드들은 성능을 위해 최적화 되어 있다. 또 그것들은 이식 가능하다. 데이터 액세스 응용 프로그램 블록은 SQL Server, DB2, 그리고 Oracle 데이터베이스들에 투명하게 동작한다.
아래 그림은 DAAB의 키 클래스를 나타내고 있다.
변화된내용(Enterprise Library 1.x -> 2.0)
DAAB(Data Access Application Block) in Enterprise Library for .NET 2.0이 Enterprise Library for .NET 1.x에 비해 변화된 내용은 다음과 같다.
.NET Framework 2.0에 새로이 추가된 System.Data.Common 네임스페이스로 동일한 역할을 하는DBCommandWrapper가 없어졌다.
SQL Server와 오라클 데이터 베이스 이외의 DB를 지원하기 위해GenericDatabase가 추가되었다.
RECENT COMMENT