지난 시간 객체를 이루는 2가지 요소인 '속성'과 '메소드'에 대해 이야기했다.
https://olivia-blackcherry.tistory.com/101
오늘은 객체보다 더 큰 개념인 '클래스'에 대해 이야기해보겠다.
지난 시간에 이어, 백종원 사장님을 예로 들어보자.
더본 백종원 사장님은
수많은 프랜차이즈 음식점을 가지고 있다.
종류가 엄청나게 다양하다.
중국집, 쌈밥집, 포장마차, 파스타집 등 수십가지이다.
만약 이 가게들이
음식점이 아니라,
철물점, 학원, 과일 가게였다면 어땠을까?
가게 간 성질이 다르기 때문에 통합적으로 운영하기 힘들어, 확장 속도가 빠르지 않았을 거다.
하지만 더본 프랜차이즈 가게들은
음식점이라는 큰 개념이 동일하다.
때문에 수많은 음식점을 빠르게 확장시킬 수 있었다고 생각한다.
아마도
백종원 사장님에게는
모든 음식점에 공통으로 적용할 수 있는
음식점에 관한
커다란 청사진이 있었을 거다.
가게를 내는 데 필요한 물건은
의자, 식탁, 주방용기, 가스렌지가 있을 것이고
가게를 내는 데 필요한 기술은
종업원을 관리하는 방법, 밑반찬을 관리하는 방법, 손님을 대하는 방법, 청소하는 방법이 있을 것이다.
이런 기본 틀은 동일하게 하고,
메인 메뉴, 가게 디자인 등
몇가지만 다르게 바꿔
다른 음식 프랜차이즈를 개업하는 것이다.
홍콩반점, 새마을식당, 역전우동 처럼 말이다!!
백종원 사장님은
이와 같은 방법으로,
원하는 만큼 많은
서로 다른 분야의 음식점을 얼마든지 만들 수 있었을 거다.
1. 클래스, 객체
자, 이제부터
이것을 프로그래밍 언어로 정리해보자.
파이썬에서는
청사진의 역할을 하는 기본틀, 즉 청사진을 클래스라고 하고,
클래스의 성질을 가지고 만들어 진 것들을 객체라고 한다.
2. 코드로 작성하기
코드로 작성해보자.
FoodStore
백종원 음식점의 청사진은 클래스이다.
FoodStore라고 이름짓자.
클래스의 표기법은 파스칼 표기법을 따른다.
각 단어의 첫 글자는 대문자로 쓴다는 것이다.
클래스 뒤에는 괄호를 붙인다. ()
괄호는 활성화한다는 뜻이다.
즉, 클래스로부터 이 객체를 활성화한다는 의미다.
우리는 클래스를 통해
수많은 객체를 만들 수 있다.
홍콩반점 = FoodStore()
새마을식당 = FoodStore()
역전우동 = FoodStore()
...
한신포차 = FoodStore()
백스비어 = FoodStore()
빽다방 = FoodStore()
....
다음 시간에는 클래스로 객체를 만들고
속성과 메소드에 접근하는 연습을 해보겠다.
'파이썬 > 파이썬(python) 중급' 카테고리의 다른 글
[16-5 파이썬] 패키지 설치하기 (0) | 2022.08.24 |
---|---|
[16-4 파이썬] 객체의 속성과 메소드 호출하기 (0) | 2022.08.24 |
[16-2 파이썬] 객체를 구성하는 속성, 메서드(attribute, method) (1) | 2022.08.23 |
[16-1 파이썬] 객체지향 프로그래밍(OOP) vs 객체지향 프로그래밍 (1) | 2022.08.23 |
[15-3 파이썬] 커피 머신 만들기(파이썬 실습) (0) | 2022.08.23 |