1. 객체지향
1) 객체지향의 구성요소
| 객체 | 데이터와 이를 처리하는 함수를 묶어 놓은 하나의 모듈 |
특성
|
| 클래스 | 공통된 속성과 연산을 갖는 객체의 집합 | 특징
|
| 메세지 | 객체의 행위를 표현 | 객체들 간의 상호작용에 사용되는 수단으로, 객체의 동작이나 연산을 일으키는 외부의 요구사항 |
2) 객체지향의 특징
| Encapsulation (캡슐화) |
데이터 속성과 관련된 연산을 클래스 안에 묶어서 하나로 취급하는 것. |
특징
|
| Inheritance (상속성) |
상위 클래스의 모든 속성과 연산을 하위 클래스가 물려받는 것 | 특징
|
| Polymorphism (다형성) |
하나의 메세지에 대해 각 객체가 갖고있는 고유한 방법대로 응답하는 것을 의미 |
오버로딩 오버라이 |
| (연관성) | 두 개 이상의 객체들이 상호 참조하는 관계 연관성의 종류 |
|
| Information Hiding (정보은닉) |
캡슐화에서 가장 중요한 개념으로 다른 객체에 자신의 정보를 숨기는 것 연산만을 통해 접근 |
|
| Abstraction (추상화) |
불필요한 부분을 생략, 객체 속성 중 가장 중요한 것에 중점을 두어 모델링함. 완전한 시스템 구축 전, 그 시스템과 유사한 모델을 만들어 여러 요인들을 테스트 할 수 있음. |
- 미들웨어는 운영체제와 소프트웨어의 중간에서 조정과 중개의 역할을 해주는 소프트웨어다.
- 운영체제가 제공하는 서비스 이외에 추가적인 서비를 제공하며 클라이언트와 서버 간의 통신을 담당한다.
2. 객체 지향 설계 원칙(SOLID)
| SRP/단일 책임 원칙 (Single responsibility principle): |
|
| OCP/개방 폐쇄 원칙 (Open/closed principle) |
|
| LSP/리스코프 치환(교쳬) 원칙 |
|
| ISP/인터페이스 분리 원칙 (Interface segregation principle): |
|
| 의존관계 역전 원칙 (DIP, Dependency inversion principle): |
|
3. 객체 지향 분석 방법론
(1) Rumbaugh
모든 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 기법으로, 객체 모델링 기법(Object Modeling Technique) 라고도 한다. 분석활동은 객체모델링 -> 동적 모델링 -> 기능 모델링 순으로 통해 이루어진다
(2) Booch(부치) 방법
미시적(Micro) 개발 프로세스와 거시적(Macro) 개발 프로세스를 모두 사용하는 분석 방법으로, 클래스와 객체들을 분석 및 식별하고 클래스의 속성과 연산을 정의한다.
(3) Jacobson 방법
Use Case를 강조하여 사용하는 분석 방법이다.
(4) Coad와 Yourdon 방법
E-R 다이어그램을 사용하여 객체의 행위를 모델링하며, 객체 식별, 구조 식별, 주제 정의, 속성과 인스턴스 연결 정의, 연산과 메시지 연결 정의 등의 과정으로 구성하는 기법
(5) Wirfs-Brock 방법
분석과 설계 간의 구분이 없고, 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행하는 기법
[22년03월05일 기출문제]
13.클래스 설계원칙에 대한 바른 설명은?
1.단일 책임원칙 : 하나의 클래스만 변경 가능 해야한다.
2.개방-폐쇄의 원칙 : 클래스는 확장에 대해 열려 있어야 하며 변경에 대해 닫혀 있어야 한다.
3.리스코프 교체의 원칙 : 여러 개의 책임을 가진 클래스는 하나의 책임을 가진 클래스로 대체되어야 한다.
4.의존관계 역전의 원칙 : 클라이언트는 자신이 사용하는 메소드와 의존관계를 갖지 않도록 해야 한다.
정답 : 2
해설 :
단일 책임원칙 : 하나의 객체는 하나의 동작만의 책임을 가짐
개방-폐쇄의 원칙 : 클래스는 확장에 대해 열려 있어야 하며 변경에 대해 닫혀 있어야 한다.
리스코프 교체의 원칙 : 특정 메소드가 상위 타입을 인자로 사용할 때, 그 타입의 하위 타입도 문제 없이 작동해야 함
의존관계 역전의 원칙 : 상위 계층이 하위 계층에 의존하는 전통적인 의존관계를 반전(역전)시킴으로써 상위 계층이 하위 계층의 구현으로부터 독립되게 할 수 있음
18.객체지향 분석기법의 하나로 객체 모형, 동적 모형, 기능 모형의 3개 모형을 생성하는 방법은?
1.Wirfs-Block Method
2.Rumbaugh Method
3.Booch Method
4.Jacobson Method
정답 : 2
해설 : Rumbaugh(럼바우) 방법
모든 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 기법으로, 객체 모델링 기법라고도 한다.
분석활동은 객체모델링 -> 동적 모델링 -> 기능 모델링 순으로 통해 이루어진다
Booch(부치) 방법
미시적(Micro) 개발 프로세스와 거시적(Macro) 개발 프로세스를 모두 사용하는 분석 방법으로,
클래스와 객체들을 분석 및 식별하고 클래스의 속성과 연산을 정의한다.
Jacobson 방법
Use Case를 강조하여 사용하는 분석 방법이다.
Coad와 Yourdon 방법
E-R 다이어그램을 사용하여 객체의 행위를 모델링하며,
객체 식별, 구조 식별, 주제 정의, 속성과 인스턴스 연결 정의, 연산과 메시지 연결 정의 등의 과정으로 구성하는 기법
Wirfs-Brock 방법
분석과 설계 간의 구분이 없고, 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행하는 기법
[22년 04월 24일 기출문제]
26.객체지향 개념을 활용한 소프트웨어 구현과 관련한 설명 중 틀린 것은?
1.객체(Object)란 필요한 자료 구조와 수행되는 함수들을 가진 하나의 독립된 존재이다.
2.JAVA에서 정보은닉(Information Hiding)을 표기할 때 private의 의미는 '공개'이다.
3.상속(Inheritance)은 개별 클래스를 상속 관계로 묶음으로써 클래스 간의 체계화된 전체 구조를 파악하기 쉽다는 장점이 있다.
4.같은 클래스에 속하는 개개의 객체이자 하나의 클래스에서 생성된 객체를 인스턴스(Instance)라고 한다.
정답 : 2
해설 : JAVA에서 정보은닉(InformationHiding)을 표기할 때 private의 의미는 외부에서 클래스 내부 정보에 접근하지 못하도록 하는 '접근금지'이다
'자격증 > 정보처리기사' 카테고리의 다른 글
| [정보처리기사 필기 요약] #2-2. 이진 탐색 (0) | 2026.05.08 |
|---|---|
| [정보처리기사 필기 요약] #2-1. 애플리케이션 테스트 (0) | 2026.05.07 |
| [정보처리기사 필기 요약] #1-2. 미들웨어 개념과 종류 (0) | 2026.05.07 |
| [정보처리기사 필기 요약] #1-1. UML (0) | 2026.05.06 |
| [정보처리기사] 2024년 1,2,3회 실기기출분석 & 개념정리 (0) | 2026.04.17 |