서버프로그램구현
모듈화 개념
- 해결하기 어려운 큰 문제를 작은 단위로 쪼개어 하나씩 해결하는 것처럼, 소프트웨어 개발 작업을 실제로 개발할 수 있는 작은 단위로 나누는 것
모듈화의 장점
- 분할과 정복의 원리가 적용되어 복잡도 감소
- 문제를 이해하기 쉽게 만듦
- 변경하기 쉽고, 변경으로 인한 영향으로 적음
- 유지보수 용이
- 프로그램을 효율적으로 관리
- 오류로 인한 파급효과를 최소화
- 설계 및 코드 재사용
모듈화 측정 척도
- Cohesion 응집도
- 인터페이스의 요청을 처리함에 있어서 공통 모듈 내의 클래스들 간에 얼마나 유기적으로 협업하여 처리하는 가에 관한 정도
- 높여야 함
- Couplling 결합도
- 어떤 모듈이 다른 모듈에 의존하는 정도
- 낮춰야 함
응집도 개념
- 공통 모듈 내의 클래스들이 외부의 기능을 수행함에 있어서 얼마나 서로 클래스들끼리 내부적으로 연계되어 수행되는지에 대한 정도
응집도의 유형과 품질
- 기능은 순차적으로 통신해야, 절차적 시간이 논리적이 되고 우연이 낮음
결합도 개념
- 프로세스를 처리 함에 있어서 각각의 공통 모듈이 서로 연계되어 있는 정도
결합도 유형과 품질
- 높은 내용은 공통적인 것을 외부로부터 제어한 후 도장찍은 자료이다