[정보처리기사 실기 - 데이터베이스] 객체 지향 데이터베이스 :: 소림사의 홍반장!

1. 객체 지향 데이터베이스

- 객체 지향 데이터베이스는 객체 지향 패러다임을 사용하는 객체 지향 프로그래밍 언어에서 영향을 받아 생성된 객체 지향 기술과 데이터베이스 기술의 결합체이다.

- 객체 지향 데이터베이스는 객체 지향 데이터 모델의 개념을 반영하여 실세계에 존재하는 객체를 표현하고 관리하는 데이터베이스 기술이다.

객체 지향 데이터베이스 관리 시스템을 위한 표준 모델로는 ODMG 2.0 표준이 있다.

 

 

2. 객체 지향 데이터베이스의 구성

 

(1) 객체와 객체 식별자 (OID : Object IDentifier)

- 객체는 실세계 환경에서 존재하는 개체를 추상적으로 표현한 것이다.

- 객체 식별자는 많은 수의 객체들을 유일하게 식별하기 위해 시스템에 의해 생성되는 값으로 변경할 수 없다.

 

(2) 속성(Attribute)과 메소드(Method)

- 속성은 객체를 기술하는데 사용되며, 유일한 이름과 데이터 타입을 갖는다.

- 메소드는 객체에 수행될 연산, 즐 객체의 속성 값에 대한 변경이나 검색을 기술한 것이다. 또란, 특정 메소드를 실행하기 위해서는 해당 객체에 메시지를 보내야 한다.

 

(3) 클래스(Class)와 인스턴스(Instance)

- 클래스는 공통적인 특성을 소유한 객체들을 그룹화 및 추상화한 것을 말한다. 즉, 클래스는 동일한 속성과 메소드를 갖는 객체들의 집합을 의미한다.

- 인스턴스는 클래스를 이용하여 생성한 하나의 객체를 의미한다. 즉, 클래스에 속한 각각의 객체는 그 클래스의 인스턴스가 된다.

 

(4) 상속(Inheritance)

- 클래스 계층 구조를 형성하는 서브 클래스와 슈퍼 클래스간에 존재하는 계승의 개념이다.

- 계층 관계에 있는 클래스 간의 공통점 및 차이점을 기술하는 추상화 기술이다.

- 일반적으로 서브 클래스와 슈퍼 클래스 간의 관계를 ISA 관계라고 한다.

 

(5) 오버로딩(Overloading)과 오버라이딩(Overriding)

- 오버로딩 : 하나의 메소드 이름으로 다른 파라미터를 지정하여 사용하는 기법. 메소드 사용의 효율성 증대

- 어버라이딩 : 슈퍼 클래스에 있는 메소드를 서브 클래스에서 상속받아 다른 기능을 수행하는 메소드로 재정의.

 

 

3. 객체 관계 데이터베이스( ORDB : Object Relational Database )

- 객체 관계 데이터베이스는 관계형 데이터베이스에 객체 지향 데이터베이스의 개념을 추가한 데이터베이스.

 

객체 관계 데이터베이스 등장 배경

- 컴퓨터가 발전하면서 비정형화된 데이터의 사용이 빈번해졌고, 이러한 비정형화된 데이터는 관계형 데이터베이스에 저장하기 어렵다는 단점이 있다.

- 이러한 문제를 해결하기 위하여 객체 관계 데이터베이스가 등장하게 되었다.

 

객체 관계 데이터베이스의 특징

- 객체 관계 데이터베이스를 위한 데이터 언어 표준으로는 ISO에서 제시한 SQL3가 있다.

- 객체 관계 데이터베이스는 확장 가능 데이터 타입, 사용자 정의 데이터 타입, 사용자 정의 함수, 사용자 정의 프로시저, 사용자 정의 연산자, 대형 객체 타입, 상속 개념 등을 지원

 

 

 

 

 

[참고] 2011 시나공 정보처리기사 실기 문제집

다른 카테고리의 글 목록

Dev. 관련자격증/정보처리기사 카테고리의 포스트를 톺아봅니다