본문 바로가기

it자격증 준비/정보처리기사(실기)

04. 서버 프로그램 구현 | 객체지향(Object-Oriented), 객체지향 분석 및 설계

반응형

 

 

 

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)

: 의존 관계 성립 시 추상성이 높은 클래스와 의존 관계를 맺어야 함

 

 

 

 

 

반응형