57.3 리포지토리 패턴
프로그래밍을 할 때 자주 사용하는 유형을 패턴(pattern)이라고 합니다. 데이터베이스 프로그래밍에서는 일반적으로 리포지토리 패턴(repository pattern)이 가장 많이 사용됩니다.
일반적인 업무용 프로그램을 만들 때 많이 나오는 패턴을 살펴보겠습니다.
• 모델 클래스(model class)는 데이터 구조를 나타냅니다.
• 리포지토리 클래스(repository class)는 데이터에 대한 입력, 출력, 수정, 삭제 등을 담당하는 클래스를 의미합니다.
• 컨텍스트 클래스(context class)는 모델과 리포지토리를 사용하여 업무 하나를 묶어 관리하는 역할을 합니다.
Note ≡ 리포지토리 패턴 관련 클래스 파일 이름
예를 들어 게시판에 대한 모델 클래스는 Board.cs, BoardModel.cs, BoardViewModel.cs 형태를 제일 많이 사용하고, 또 다른 스타일로는 BoardEntity.cs, BoardObject.cs, BoardDto.cs 등으로 만들어서 사용합니다.
데이터 리포지토리에 대한 CRUD(Create, Read, Update, Delete) 등 업무용 로직을 담고 있는 클래스는 주로 Component, Repository, Service, Controller 접미사를 붙입니다. 그래서 게시판 관련 클래스의 파일 이름은 BoardComponent.cs, BoardRepository.cs, BoardService.cs, BoardController.cs 등으로 표현할 수 있습니다.