1. 핵심 개념 모델링, 객체지향 모델의 추상화의 개념 및 목적 (1) 추상화 (Abstraction)의 개념 개념도 개념 복잡한 시스템의 핵심 기능을 모델링하고, 불필요 세부 사항은 감추어 단순화하는 객체지향 모델의 특성 (2) 추상화의 목적 핵심에 집중 – 복잡한 구현 세부 사항을 숨기고, 중요한 인터페이스만을 노출하여 사용자가 쉽게 이해 유연한 설계 – 내부 구현이 변경되더라도 외부 인터페이스는 그대로
1. 객체 정보 은닉, 객체지향 모델의 캡슐화의 개념 및 목적 (1) 캡슐화 (Encapsulation)의 개념 개념도 개념 관련 있는 데이터(속성)와 기능(메서드)을 하나의 클래스로 묶고, 구현 내용을 외부에 숨겨 외부의 직접적인 접근을 제한하는 객체지향 모델의 특성 (2) 캡슐화의 목적 내부 데이터 보호 – 외부에서 클래스 내부의 데이터/기능에 직접 접근 및 조작 차단 모듈 독립성 향상 – 객체의
I. 효율적인 프로그램 구성 지원, 모듈화 가. 모듈화(Modularity)의 개념 프로그램을 분석하고 추상화하여 소프트웨어의 성능을 향상시키거나, 프로그램의 시험, 통합 및 수정을 용이하게 하는 설계 및 구현 기법 나. 모듈화의 특징 비용과 모듈의 관계: 모듈 수가 증가하면 인터페이스 비용 증가 정보 은폐: 어렵거나 변경 가능성이 있는 모듈은 다른 모듈로부터 은폐 특징 내용 비용과 모듈 관계 모듈 수가