2. 객체지향 프로그래밍 언어 활용하기
2-1. 객체지향 프로그래밍 설계
1) 객체지향 설계 원칙의 이해
(1) 객체지향 속성
- 캡슐화
- 추상화
- 다형성(오버로딩, 오버라이딩)
- 정보 은닉
- 상속성
(2) 객체지향 설계 원칙
- 단일 책임 원칙 (Single Responsiblity Principle)
- 개방-폐쇄 원칙 (Open Closed Principle)
- 리스코프 치환 원칙 (Liskov Substitution Principle)
- 인터페이스 분리 원칙 (Interface Segregation Principle)
- 의존 역전 원칙 (Dependency Inversion Principle)
2) UML의 이해
(1) 유즈케이스 다이어그램
요구 분석, 시스템 설계, 시스템 구현 등의 시스템 개발 과정에서, 개발자 간의 의사소통이 원활하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어
(2) 클래스 다이어그램
클래스 다이어그램은 UML의 구조 다이어그램으로서 클래스 내부 구성요소 및 클래스 간의 관계를 도식화하여 시스템의 특정 모듈이나 일부 또는 전체 구조를 나타냄
(3) 시퀀스 다이어그램
문제 해결을 위한 객체를 정의하고 객체 간의 상호작용 메시지 시퀀스를 시간의 흐름에 따라 나타내는 다이어그램
3) 객체지향 프로그래밍 설계서 확인하기
(1) 소프트웨어 개발 요구사항을 확인한다.
① 시스템 요구사항 기능을 확인한다.
② 시스템 상황을 분석한다.
(2) 설계된 다이어그램을 분석한다.
① 유즈케이스 다이어그램을 분석한다.
② 관계(Relationship)를 식별한다.
③ 클래스 다이어그램을 분석한다.
④ 시퀀스 다이어그램을 분석한다.
2-2. 객체지향 프로그래밍 언어 활용
1) 객체지향 프로그래밍 언어의 개요
(1) 객체지향 프로그래밍 언어 구성요소
- 클래스(Class)
- 객체(Object)
- 메소드(Method)
- 속성(Property)
(2) 접근 지정자
- public
- protected
- private
- default
2) 객체지향 프로그래밍 언어 기본 문법
(1) 데이터 타입
(2) 변수와 메소드
① 변수 유형
- 멤버 변수(Member Variable)
- 인스턴스 변수(Instance Variable)
- 매개 변수(Parameter)
- 지역변수(Local Variable)
- 클래스 변수(Class Variable)
② 메소드
메소드는 특정 객체의 동작이나 행위를 정의한 것으로 클래스의 주요 구성요소
3) 디자인 패턴
(1) 디자인 패턴 구조
- 콘텍스트(Context)
- 문제(Problem)
- 해결(Solution)
(2) 디자인 패턴의 종류
참고자료 : https://www.ncs.go.kr