모델과 구현의 연계
Last updated
Last updated
3장은 명확한 모델과 다이어그램이 기술과 연관되지 않아 생긴 각자의 해석으로 풀어간 예시로 시작된다.
예시가 알려준대로, 코드와 모델이 연결되지 않는다면, 소프트웨어 생산은 도메인지식과 의사소통의 이점을 전혀 살리지 못하게된다. 도메인이 복잡해질 수록 점점 프로젝트는 난관에 처하게 된다.
모델과 코드의 연결이 끊어지는 경우 필요성이 증대된다. 소프트웨어 시스템에서의 역할이 아닌, 비즈니스 개념만을 체계화한 결과물이란 의미를 가진다
분석과 설계가 동떨어지게된다면, 추상화를 생각해내야 할때, 활용하지 못하고 점점 느슨하게 연결되어 서로 다른 방향으로 흘러가게된다.
이를 방지하기 위해, 어플리케이션에서 가장 수행되어야 할 문제와 직접적으로 연결되야할 필요가 있다.
분석 모델과 설계를 나누는 방식이 아닌, 설계상 각 객체는 본인의 개념을 가지게 된다. 이는 모델을 정할때 분석과 설계를 고려해야될 부담이 커지는 부담을 야기하기도 한다.
모델을 설계에 밀접하게 연관시키는 원칙을 강제하면 모델을 선택하는데 올바른 기준을 가질 수 있으며, 소프트웨어에서의 모델과 이에 필요한 규칙을 연결짓기도 수월해진다.
모델과 설계과 밀접한 대응을 하게 하려면, 모델과 개념이 직접적으로 대응될 수 있는 몇가지 도구를 사용하는것이 필수적이다.
이에 객체지향 프로그래밍은 모델과 모델의 구성요소에 대한 구현을 제공하기에 효과적인데, 모델의 개념과 원칙&행위와 연관관계에 대한 구조를 잡는데에 편리성을 제공한다
개념이 소프트웨어의 기반이 될수 있도록 명시적으로 조직화 해야한다.
같은 모델을 다루는 것은 해석의 과정이 들지않아 일관성있는 소프트웨어를 만들 수 있다.