문) Object, Class, Inheritance(상속), concealment(은닉), polymorphism(다형성), encapsulation(캡슐화)
Object
- 클래스로 이루어져 규정되어 구현된 결과(인스턴스).
- 저장공간에 할당된 공간과 값을 의미한다.
- 실세계에서 어떤사람이 집에서 살기를 원할때 그 집의 청사진이나 축소모형 따위는 필요없고, 필요한것은 설계에 맞는 집이다. 이 유추에서 청사진을 클래스, 실제집은 객체이다.
Class
- 공통성질을 가진 종류의 집합.
- 객체지향 프로그래밍에서 객체내에 있는 메소드와 변수를 정의하는 틀.
- 클래스는 전부 혹은 일부를 그 클래스 특성으로부터 상속 받는 서브클래스를 가질 수 있다.
- 스브클래스는 자신만의 메소드와 변수를 정의할 수 있다.
- 클래스와 서브클래스 간의 구조를 "클래스 계층(hierarchy)"라 한다.
inheritance
- 상속 - 텀즈
- 상속 - 구글사전
- 추상화, 객체 지향, 상속, 다형성, 갭슐화 - 티스토리 - Insight..
- 소프트웨어 재 사용성 - Prof. Roh's Home Page(노희영 교수의 홈)
- 클래스의 함수성 즉 행위가 분명히 정의된다면, 클래스의 재사용이 확실히 보장된다.
- 재사용성을 위한 "분명한 정의" 원칙
- 매서드는 더 이상 나누어 질 수 없는 단일 기능만 실행할 수 있도록 응집된 최소의 단위함수로서 서로 밀접하게 관계되는 함수그룹을 수행한다.
- 메서드는 재사용이 가능하도록 최소화되어야 한다.
- 유사한 메서드는 이름부터 매개변수, 자료형, 반환값, 조건에 이르기까지 동일한 구조를 갖도록 일관성이 있어야 한다,
- 알고리즈은 자체적으로 종결되어야 한다,
- 메서드는 모든 조건에서 일어날 수 있는 일치된 적용범위를 가져야 한다.
- 메서드는 추후에 확정될 수 있도록 매개변수면, 조건, 구문등이 일반화되어야 한다.
- 메서드는 외부참조 내지는 전역변수의 사용을 되도록 피해야 한다.
- 메서드의 행위는 쉽게 변경할 수 있도록 특정한 구문에 종속되지 않아야 한다.
concealment
- OOP (Object Oriented Programming) 3원칙.
- 프로그램은 처리 활동을 은폐하여 정의되어진 인터페이스에 의해서만 전달.
- 객체는 자신의 상태를 기억하기위한 속성과 이를 관리하는 동작을 정의한다. 이중 일부만 사용할수있게 하는것을 정보은폐라고한다.
polymorphism
- 객체지향에서 다형성은 매개변수(=아규먼트)등을 하나의 메서드로 선언하여 사용해 매개변수에 리턴값이 변하는 혁식.
- 오버로드, 오버로딩의 으해 구현되는 기법으로 오버로드는 객체안에 함수명은 같지만 매개변수 타입과 개수가 다른것을 말한다.
오버라이딩은 함수 이름과 매개변수타입이 완전 일치하는것을 말한다.
encapsulation
- 관련있는 데이터와 코드를 한 울타리 안으로 모으는 것.
- 하나의 클래스 안에 필듣르과 메소드들을 정의한다. 단 클래스의 특성과 관련되어야 한다.
- 캡슐화를 함으로서 정보은익이 이루어진다.
반응형
'pe' 카테고리의 다른 글
Tim O'Reill가 주장한 Web2.0의 7가지 원칙은 무엇인가? (0) | 2011.02.21 |
---|---|
SDLC 모델 - 폭포수(watefall), Prototyping(PoC, Pilot), 나선형(Spiral), 반복&점진적(iterative&incremental) (0) | 2011.02.21 |
컴포넌트(Component)와 서비스(Service) - 20110224 (0) | 2011.02.21 |
플랫폼, 아키텍처, 프레임워크 - 20110218 (0) | 2011.02.13 |
정보공학방법론 -Report 20110218 (0) | 2011.02.13 |