073. 객체지향(Object-Oriented)
1) 객체지향
- 각 요소들을 객체(Object)로 만든 후, 객체들을 조립해서 소프트웨어를 개발하는 기법
2) 객체지향의 구성요소
- 객체(Object)
: 데이터와 이를 처리하기 위한 함수를 묶어놓은 소프트웨어 모듈
- 클래스(Class)
: 공통된 속성과 연산을 갖는 객체의 집합
- 메시지(Message)
: 객체들 간의 상호작용에 사용되는 수단으로, 객체의 동작이나 연산을 일으키는 외부의 요구사항
3) 객체지향의 특징
- 캡슐화(Encapsulation)
: 외부에서의 접근을 제한하기 위해 인터페이스를 제외한 세부 내용을 은닉하는 것
- 상속(Inheritance)
: 상위 클래스의 모든 속성과 연산을 하위 클래스가 물려받는 것
- 다형성(Polymorphism)
: 하나의 메시지에 대해 각각의 객체가 가지고 있는 고유한 방법으로 응답할 수 있는 능력
- 연관성(Relationship)
: 두 개 이상의 객체들이 상호 참조하는 관계
: is member of - 연관화
: is instance of - 분류화
: is part of - 집단화
: is a - 일반화, 특수화/상세화
074. 객체지향 분석 및 설계
1) 객체지향 분석(OOA; Object Oriented Analysis)
- 사용자의 요구사항과 관련된 객체, 속성, 연산, 관계 등을 정의하여 모델링하는 작업
2) 객체지향 분석의 방법론
- Rumbaugh 방법
: 분석 활동을 객체 모델, 동적 모델, 기능 모델로 나누어 수행함
- Booch 방법
: 클래스와 객체들을 분석 및 식별하고 클래스의 속성과 연산을 정의함
- Jacobson 방법
: 유스케이스를 강조하여 사용함
- Coad와 Yourdon 방법
: E-R 다이어그램을 사용하여 객체의 행위를 모델링함
- Wirfs-Brock 방법
: 분석과 설계 간의 구분이 없고, 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행함
3) 럼바우(Rumbaugh) 분석 기법
- 모든 소프트웨어 구성 요소를 그래픽 표기법으로 이용하여 모델링하는 기법
- 분석 활동 순서: 객체 모델링 -> 동적 모델링 -> 기능 모델링
4) 객체지향 설계 원칙
- 변경이나 확장에 유연한 시스템을 설계하기 위해 지켜져야 할 원칙
- 단일 책임 원칙(SRP)
: 객체는 단 하나의 책임만 가져야 함
- 개방-폐쇄 원칙(OCP)
: 기존의 코드를 변경하지 않고 기능을 추가할 수 있도록 설계해야 함
- 리스코프 치환 원칙(LSP)
: 자식 클래스는 최소한 부모 클래스의 기능은 수행할 수 있어야 함
- 인터페이스 분리 원칙(ISP)
: 자신이 사용하지 않는 인터페이스와 의존 관계를 맺거나 영향을 받지 않아야 함
- 의존 역전 원칙(DIP)
: 의존 관계 성립 시 추상성이 높은 클래스와 의존 관계를 맺어야 함
'it자격증 준비 > 정보처리기사(실기)' 카테고리의 다른 글
04. 서버 프로그램 구현 | ★디자인 패턴(Design Pattern), 코드(Code), 개발 지원 도구 (0) | 2023.08.16 |
---|---|
04. 서버 프로그램 구현 | 모듈(Module), 단위 모듈(Unit Module), 공통 모듈 (0) | 2023.08.14 |
04. 서버 프로그램 구현 | 개발 환경 구축, 소프트웨어 아키텍처, 아키텍처 패턴 (0) | 2023.08.10 |
03. 통합 구현 | 통합 구현, XML(eXtensible Markup Language), 연계 테스트 (0) | 2023.08.07 |
02. 데이터 입 · 출력 구현 | 자료 구조, 정렬(Sort) (0) | 2023.08.05 |