Entity, Attribute, Method, 캡추다정상 |
I. 현실세계의 객체 표현한 개발 방법, 객체지향의 개요
가. 객체지향 (Object-Oriented)의 정의
- 현실세계에 존재하는 객체(Entity)를 속성(Attribute)와 메소드(Method)가 결합된 형태의 객체(Object)로 표현하는 개념
II. 객체지향의 구성도 및 구성요소
가. 객체지향의 구성도
나. 객체지향의 구성요소
구분 |
설명 |
객체 (Object) |
- 문제 영역에서 잘 정의된 역할을 가지고 각각 구분할 수 있는 단위, 개체, 품목을 의미하는 것으로 데이터와 함수로 구성 |
클래스 (Class) |
- 하나 이상의 유사한 객체들을 묶어 공통된 특성을 표현한 데이터 추사화를 의미 - 객체를 생성 할 수 있는 구조와 정보를 가지고 있는 틀 - 동일한 클래스에서 생성된 객체들은 속성과 메소드에 대해 같은 정의를 가짐 |
인스턴스 (Instance) |
- 클래스에서 생성된 객체로 하나의 클래스에서 생성된 캑체는 클래스가 구체화되어 클래스에서 정의된 속성과 성질을 가진 실제적인 객체로 표현된 것을 의미 |
메시지 (Message) |
- 객체들 간의 상호작용 수단 (Sender, Receiver) - 다른 객체에 특정 작업을 요청하는 신호 |
속성 (Attribute) |
- 객체의 데이터 |
메소드 (Method) |
- 객체의 행위 (함수, 메소드), 클래스로부터 생성된 객체를 사용하는 방법 |
III. 객체지향의 특징 (캡추다정상)
구분 |
개념 |
역할 |
특징 |
캡슐화 |
속성과 메소드를 하나의 객체로 구성하는 것 |
객체의 내부구조와 실체 분리 내부 변경이 프로그램에 미치는 영향을 최소화 |
데이터와 함수 은폐, 정보 은닉 구현 및 추상화 수단 |
추상화 |
공통 속성과 기능을 묶어 상위 클래스 구성 |
- SW 복잡도 낮춰줌 - 분석 용이 및 사용 간편 |
- 데이터추상화(type부여) - 기능의추상화(method부여) |
다형성 |
동일 인터페이스에 대해 필요에 따라 재구성 |
코드를 변경하지 않고 수정 및 확장 용이 |
- 오버라이딩 - 오버로딩 |
정보은닉 |
객체 내용을 외부에 철저히 은닉, 메시지로 객체와의 상호작용 |
- 객체의 내부구조,실체 분리 - 수정으로 인한 영향 최소화 |
- public : 외부사용가능 - private : 외부사용불가 |
상속성 |
슈퍼 클래스가 갖는 성질을 서브클래스에 부여 |
확장성을 확보할 수 있게 해주는 강력한 수단 |
클래스를 체계화 활 수 있으며, 기존의 클래스로부터 확장이 용이 |
'IT기술노트 > 소프트웨어공학' 카테고리의 다른 글
클래스 다이어그램 (Class Diagram) (0) | 2021.01.31 |
---|---|
UML 2.0 (0) | 2021.01.31 |
UML(Unified Modeling Language) (0) | 2021.01.31 |
다형성 (Polymorphism) (0) | 2021.01.31 |
객체지향 설계원칙 (0) | 2021.01.31 |
모듈화 (Modularity) (0) | 2021.01.31 |
소프트웨어 설계 (Software Design) (0) | 2021.01.31 |
도메인공학 (0) | 2021.01.31 |
댓글