반응형
이 포스팅은 데스크탑에 최적화되어 있어, 데스크탑으로 보는 것을 권장합니다.
객체 지향 프로그래밍
객체를 중심으로 프로그래밍 하는 것이다.
↔️ 반대는 순차적 프로그래밍이다. 순차적 프로그래밍은 시간 흐름의 순서대로 프로그래밍 하는 것이다.
객체
객체는 프로그램으로 모델링 되는 주체이다. 사물, 사람, 개념 등이 된다.
객체 중심 프로그래밍은 객체를 도출하고 객체 관계를 명시하는 형태로 프로그래밍한다.
객체 도출
객체 도출에서는 어떤 클래스가 필요하고 그 클래스의 구성요소가 무엇이냐를 결정한다.
- 요구분석
요구 분석은 기능 도출을 목표로 한다.
- 유즈케이스
시스템을 사용할 사람이나 시스템인 액터를 추출한다. 각 액터에게 제공할 기능을 정의한다.
- 요구 명세서 작성
기능 하나당 요구 명세서를 작성하여 기능을 세분화한다.
더보기
유즈케이스 예시
Atm 출금
카드를 넣는다 |
(yes) 비밀번호 입력 | (yes) 계좌에 연결 | (yes) 잔금 확인 | (yes) 계좌에서 출금 | 현금 지급 | … |
(no) 에러 메세지 & 초기화면 | (no) | (no) | (no) |
<카드 class>
카드사, 카드 번호, 카드 비밀번호, 연결계좌
<계좌 class>
은행, 계좌번호, 계좌 비밀번호
=> 이 작업을 통해서 객체가 도출, 도출된 객체를 기반으로 클래스를 디자인 할 수 있다.
=> 도출된 객체 : 카드 (카드사, 카드번호, 비밀번호, 계좌), 계좌 (은행, 계좌번호, 비밀번호, 잔고)
=> 클래스 설계
(Card (String name, String num, String pwd, Account xxx)
Account (String name, String num, String pwd, Money)
반응형