본문 바로가기
프로그래밍

클래스의 유형

by Mr-후 2019. 4. 5.
반응형

클래스는 그 역할에 따라 세 가지 종류로 나눌 수 있다. 

외부와의 연결 역할을 담당하는 경계 클래스, 내부 처리를 위한 자료를 가지고 있는 엔티티 클래스, 주로 작업 비지니스 로직을 담당하고 있는 제어 클래스가 있다. 


경계 클래스(boundary class)는 주로 시스템 외부의 액터와 상호작용하는 클래스로 사용자 인터페이스를 제어하는 역할을 한다. UserInterface 같은 클래스가 여기에 해당된다. 경계 클래스는 액터와 연결된 시스템 인터페이스를 나타낸다. 각 사용 사례에서 액터는 적어도 하나의 경계 클래스와 대화한다. 경계 클래스는 액터로부터 정보를 수집하여 엔티티 객체나 제어 객체가 사용할 수 있는 형태로 바꾼다. 


제어 클래스(control class)는 경계 클래스와 엔티티 클래스 사이에 중간 역할을 한다. 제어 클래스는 실세계에 매칭될 만한 대상은 없다. 다만 사용 사례와 제어 클래스 사이에 밀접한 관계가 있다. 제어 클래스는 사용 사례의 초기에 생성되고 끝까지 존재한다. 또한 경계 클래스로부터 정보를 받아 엔티티 클래스에 전달해 준다. 


엔티티 클래스(entity class)는 한마디로 시스템에서 계속 추적해야 할 자료가 들어 있는 클래스이다. 책 주문 정보는 데이터베이스에 계속 저장하고 취소하더라도 주문 내역으로 저장할만한 자료이다. 따라서 엔티티 클래스이다. 고객, 주문 아이템에 관한 데이터 등도 영구적으로 시스템에서 기록되어야 할 자료이므로 엔티티 클래스로 분류된다. 



반응형