모델에 너무 많은 책임을 넣다가 보면, 무거워지고 모델의 특성을 더렵히게 된다.

어떻게 하면 이것을 피할수 있을까? 자연스럽게 관련된 책임을 분리를 해야 한다.

모델의 중요한 비즈니스 로직만 두고, 모델을 잘 보살피기 위한 클래스들을 만들어야 한다.

대부분 presentation layer와 persistence layer에서 문제가 생긴다. 이것을 해결해보자,

1. 웹,DB에서 입력값이 있는 경우 모델에 올바르게(wellformed)하게 데이터를 넣어주는 role을 가진 로직이 존재해야 한다.

2. 웹, DB에 데이터를 보여주거나 넣을 때 입력받은 값 그대로 넣지 않고, decorate가 필요한 경우가 있다. decorate하는 로직이 존재해야 한다.

1,2번의 로직은 경우에 따라서 구현하는 위치가 틀려 질수가 있다. 간단한 구현체나 하나의 클래스에 로직을 추가해도 되지만, 추가하려는 로직이 일관성을 어기거나 모델을 손상시키는 경우 과감하게 떼어내자.

A model applies in a context. The context may be a certain part of the code, or the work of a paticular team.
- DomainDrivenDesign by Eric Evans

트랙백 보낼 주소 :: http://www.ologist.co.kr/trackback/822

댓글을 달아주세요:: 네티켓은 기본, 스팸은 사절

  1. 정재훈
    2008/01/15 10:32
    댓글 주소 수정/삭제 댓글
    맞아요. 모델에는 필요한 것만 들어가 있는게 좋아요! 이런저런거 있으면 헷갈립니다.
    • 2008/01/15 21:58
      댓글 주소 수정/삭제
      다른 Context를 하나의 모델로 표시를 하다가 보면, 어떤 상황인지 헷갈리고, 어떤 Context인지 체크하는 로직이 들어가면서 복잡해집니다. Context에 맞게 모델을 깔끔하게 유지해야 헷갈리지 않습니다.
  2. 2008/05/23 05:31
    댓글 주소 수정/삭제 댓글
    정보를 위한 감사합니다.
  3. 2008/05/23 05:37
    댓글 주소 수정/삭제 댓글
    너의 방문한 위치를 즐기는!
  4. 2008/05/23 07:24
    댓글 주소 수정/삭제 댓글
    너의 방문한 위치를 즐기는!
  5. 2008/05/24 01:20
    댓글 주소 수정/삭제 댓글
    유용한 정보. 좋은 디자인.
  6. 2008/05/24 01:28
    댓글 주소 수정/삭제 댓글
    많은 감사 위치! 우수한 나는 너의.
  7. 2008/05/24 01:34
    댓글 주소 수정/삭제 댓글
    정말 같지 않는 블로그!
  8. 2008/05/24 01:40
    댓글 주소 수정/삭제 댓글
    재미있는 아주 지점. 감사.

◀ PREV : [1] : ... [83] : [84] : [85] : [86] : [87] : [88] : [89] : [90] : [91] : ... [649] : NEXT ▶

BLOG main image
OOP and Java by ologist

공지사항

카테고리

All (649)
private!! (106)
WEB & IT (140)
Developer (400)