- 개발 언어 : Python 3
- 과정 : [기초 과정] 파이썬 응용 프로그램 과정
- 주차 : 3주차
- 과제 : 카페의 Kiosk 소프트웨어 개발
- 목표 : 개발 시작 전, 기능을 구상하고 프로그램의 Class Diragram을 설계하여 이를 기반으로 개발하는 과제
- Class는 모듈화를 목표로, 각 Class가 다른 Class에 의존되지 않도록 독릭적으로 작성해야 함.
- 모듈화라고 하면, 하나의 Class는 그 Class 만으로도 독립적으로 동작할 수 있어야한다는 의미.
- 즉, 하나의 기능을 위한 Class에서, 그 기능에 필요한 모든 함수와 변수가 포함되어 있어야 함.
- 예시로 Bark() 라는 함수가 있다고 가정했을 때, Plant Class 와 Animal Class 중에선 의미적으로 Animal Class에 위치해있는게 맞음.
- 코드의 가독성과 유지보수성을 올리기 위해 파일, 변수, 함수의 이름을 체계적으로 지어야 함.
- 함수는 원칙적으로 한 개의 기능만을 하게 설계해야 함
- 멤버 변수는 필요할 때만 선언하여 사용해야 하며, 지역 변수로 할 수 있는 경우 지역 변수로 사용하는 것이 메모리 적으로 최적화
- 특히 객체 선언 부분을 지역 변수로 해야 역할이 끝난 후 자연스럽게 메모리에서 삭제됨
- 객체의 변수를 직접 사용하는 것은 좋지 않으며, 그 객체 내에 함수를 만들어 함수를 통해 접근하는 것이 바람직
- 어떤 기능을 수정하기 위해, 그 함수를 찾는다고 가정했을 때 한 번에 찾을 수 있는지를 상상하며 설계하면 쉬움.
- Class Diragram에는 정답이 존재하지 않기에, 자신이 이렇게 설계한 근거를 정하여 이를 토대로 설계를 진행햐는게 올바른 모습.
- 따라서 아래 Class Diagream은 본인의 근거를 토대로 설계하였음.