1) 객체지향 용어

- 객체(Object) : (개념)실세계에 존재하거나 생각할 수 있는 것
- 클래스(Class) : (객체를 구현하기 위한 코드)유사한 객체들을 묶어서 하나의 공통된 특성을 표현한 것
- 인스턴스(Instance) : (메모리에 구현된 객체) 같은 클래스로부터 구현된 객체
- 메서드(Method) : 클래스로부터 생성된 객체를 사용하는 방법
- 메시지(Message) : 객체에게 어떤 행위를 하도록 지시하는 명령
- 상속(Inheritance) : 상위 클래스의 속성과 연산을 하위 클래스가 물려받는 것
- 추상화(Abstraction) : 전체적이고 포괄적인 개념을 설계한 후, 차례로 세분화하여 구체화 시키는 것
- 캡슐화(Encapsulation) : 데이터와 함수를 하나로 묶어 외부로부터 정보은닉한 것
- 다형성(Polymorphism) : 상속받은 하위 객체들이 다른 형태의 특성을 갖는 객체로 이용될 수 있다.
- 집단화(Aggregation) : 클래스들 사이의 전체, 또는 부분 같은 관계를 나타낸다(part)
- 일반화(Generalization) : 클래스가 다른 클래스를 포함하는 상위 개념이면 일반화 관계로 모델링

 

2) 객체지향 설계 원칙 : SOLID

- 단일책임 원칙(Single Responsibility) : 객체는 단 하나의 책임만 가져야 한다.
- 개방폐쇄 원칙(Open-Closed) : 확장에는 열려있어야 하고, 수정에 대해서는 닫혀있어야 한다.
- 리스코프 치환 원칙(Liskov Substitution) : 상속받은 하위 클래스는 언제나 상위클래스로 교체 가능하다.
- 인터페이스 분리 원칙(Interface Segregation) : 클라이언트는 미사용 메서드와 의존관계를 맺으면 안된다.
- 의존역전 원칙(Dependency Inversion Principle) : 의존 관계를 맺을 때, 변화하기 어려운 것에 의존한다.

 

3) 럼바우의 객체지향 분석 기법 : 객동기

- 객체 모델링 : 정보 모델링. 객체와 객체들 간의 관계를 정의 ex. ERD


- 동적 모델링 : 시간에 따라 객체들 사이의 제어 흐름, 동작 순서 등의 동적인 행위를 표현. ex. 상태다이어그램


- 기능 모델링 : 프로세스의 자료흐름을 중심으로 처리과정 표현. ex. DFD(데이터 흐름도)

 

+ Recent posts