본문 바로가기
  • (개인)정보보호/최신ICT 정보 공유 블로그
나의 서재/22. 소프트웨어 공학 기본원리

7. 객체 지향과 UML

by 노벰버맨 2021. 11. 30.

1. 객체의 개요

가. 객체의 정의

- 잘 정의된 경계와 정체성을 가지며 상태와 행위를 캡슐화한 개별 독립체

 

나. 객체의 특징

-(유형/무형), 실제 존재하는 것(사람 1,2, 자동차 3,4)과 개념적 추상적인 것(주문 1,2) 일 수 있음

-(정체성), 모든 객체는 고유의 정체성을 가짐

-(Features), 객체가 가질 수 있는 속성과 수행할 수 있는 작업으로 구성

-(메시지 통신), 상태 데이터와 행위를 객체로 정의하고 객체 사이의 행위 요청(메시지 통신)을 통해 문제 해결

-(4 특징), 캡슐화(정보은닉), 추상화, 상속, 다형성

실세계 도메인 분석/설계
모델링
구현 C++ JAVA
특징 상태 데이터 속성 인스턴스
변ㅅ
데이터 멤버 필드
행위 연산 메소드 멤버 함수 메서드

-(시그니처), 객체지향 언어에서 메서드에 대한 명세를 의미하며 다른 객체가 메서드를 호출하기 위해 준수하여야 하는 규약

 

2. 클래스의 개요

가. 클래스의 정의

-유사 features를 갖는 객체들의 집합

 

나. 클래스의 특징

-(추상화), 각 객체가 갖는 고유 특징들을 제외하고 공통 특징만을 추출하여 의미 있는 이름을 정의하는 것

-(클래스 정의), 추상화 과정을 통해 유사 객체들의 집합을 정의 가능

-(클래스 재사용), 클래스를 재사용하여 동일한 features를 갖는 유사 객체를 생성 가능

 

3. 캡슐화와 정보은닉

가. 캡슐화와 정보은닉의 정의

캡슐화 상태와 행위를 하나로 묶어 관리하는 기법
정보은닉 객체 내부의 상태 데이터를 외부 객체로부터 보호하는 기법

-캡슐화는 정보은닉을 포함하는 개념

 

나. 캡슐화와 정보은닉의 특징

-(정보 은닉), 객체의 상태 데이터는 외부 객체가 직접 접근 불가

-(메시지 호출), 외부에 서비스하는 메서드에 대한 메시지 호출을 통해 간접적으로 접근 가능

-(Interface), 외부 객체에게 제공되는 서비스(행위)

 

다. 캡슐화와 정보은닉의 개념도

-사람이라는 객체가 자동차라는 객체를 운전하여 가속하는데 속도라는 상태 데이터에 직접 접근하지 않고 Inteface 중 하나인 가속하기() 메서드를 호출하여 상태 데이터 값을 변화시킴

'나의 서재 > 22. 소프트웨어 공학 기본원리' 카테고리의 다른 글

7.2 다형성 (polymorphism)  (0) 2021.12.04
7.1. 상속 관계  (0) 2021.11.30
6.4 자료 사전과 프로세스 명세  (0) 2021.11.29
6.3 행위 모델링 (STD)  (0) 2021.11.29
6.2 기능 모델링 (DFD)  (0) 2021.11.29

댓글