단계별로 코드설계를 진행한다.
- 코드설계를 진행하는데 앞서, 바로 소스코드를 작성하지 않고 그림과 글을 통해 자신의 방법으로 코드블록을 구성해본다.
1단계
- 코드 설계 시 사용할 object부터 적어보자.
- Users
- Customers
- Vendors
- Admin
- Products
- Purchases
2단계
- 코드 작성 전, 각 object별로 요구되는 속성과 어떤 기능을 위해 생성되었는지 설계한다.
- Users
- Attributes(속성)
- 이름
- 사용자가 관리자인지?
- Customers
- Attributes
- 이름
- 구매목록
- Attributes
- Vendors
- Attributes
- 이름
- 상품목록
- Attributes
- Admin
- 이름
- 사용자가 관리자임을 나타내는 구분값
- Attributes(속성)
- Products
- Attributes
- 이름
- 가격
- 공급업체
- Attributes
- Purchases
- Attributes
- 제품
- 고객
- 가격
- 구매완료기간
- Attributes
object간 관계에 대해 생각해본다.
- 판매자는 1개 이상의 제품을 갖고 있다.
- 고객은 1개 이상의 구매를 한다.
- 구매는 1개 이상의 제품을 구매하는 것이다.
클래스의 인스턴스화
- 클래스를 생성했으면, 그것을 활용하기 위한 인스턴스화가 필요하다.
- object가 생성된 이후, object가 소프트웨어의 메모리할당이 되면 인스턴스가 되는 것이다.
- object는 인스턴스를 포함할 수 있으며, 포괄적 의미를 갖는다.
- object는 프로그래밍 전체에서 쓰이는 포괄적인 의미를 갖으므로 인스턴스와 비교하면서 학습하는 대상은 아니다.
- object가 생성된 이후, object가 소프트웨어의 메모리할당이 되면 인스턴스가 되는 것이다.
# 가장 기본적인 클래스를 생성해보고 값을 확인해본다.
class MyFirstClass:
pass
a = MyFirstClass() # 인스턴스화(메모리할당됨)
print(a) # 주소값은 일반적인 정수값과 다르게 나온다.
'Computer Science' 카테고리의 다른 글
[Computer Science] 리팩토링과 최적화 -Refactoring, Data Optimization (0) | 2021.09.22 |
---|---|
[Computer Science] 예외처리(exception handling) - if ~else / try~except (0) | 2021.09.22 |
[Computer Science] 변수설계 - 지역변수와 전역변수 (0) | 2021.09.21 |
[Computer Science] 컴프리헨션(comprehension) (0) | 2021.09.21 |
[Computer Science] 파이썬 with OOP(Object-Oriented Programming) (0) | 2021.09.13 |