"거푸집 = root class. 인스턴스 = sample. 역사의 lesson 대부분은 첫 번째에 숨어 있고, 학교는 두 번째를 외우라고 시켰지."
어휘 고정
이 quest 는 두 단어를 끊임없이 쓸 거야. 흐릿해지지 않게 한 번에 고정해 둬.
- 인스턴스 — 관측된 단일 sample. 사람 (환공), 사건 (헤이스팅스 전투), 이야기 (1985 Apple). 표면 attribute 들을 carry — 이름·연도·장소·결과 — 그리고 줄일 수 없는 specificity. 역사 dataset 에 인스턴스는 매우 많고, dataset 은 계속 자라.
- 거푸집 — instantiate 되면 표면이 다른 인스턴스를 여러 개 찍어내는데 그 인스턴스가 구조를 공유하는 root class. 거푸집은 단일 인스턴스 수준에서는 안 보여 — 여러 개 가로질러야 보여. 역사의 유용한 거푸집 수는 놀랍게도 적어 — 수십 개 정도지 수천 개가 아니야.
게임 전체는: 인스턴스 싸게 모으고, 거푸집이 떠오르게 두기. 모으기가 싼 건 읽기가 싸기 때문. 거푸집 떠오르기에서 습(習) 이 일어나 — 인스턴스 가로질러 운율 알아채야 하니까.
거푸집이 어떻게 보이게 되는지
작은 구체 예. 환공 (제환공) 읽어봐 — 춘추시대, 재상 관중의 도움으로 패권 도달, 첫 오패(五覇) (오패 중 한 명) 가 됨, 관중 죽고 나서 세 아첨꾼 (역아·수조·개방) 에 둘러싸여 plot 잃고 외롭게 죽고, 시체가 67일 동안 매장 없이 방치되는 동안 아들들이 왕좌 두고 다툼.
이게 유일한 인스턴스면 *늙은 왕의 슬픈 이야기* 정도밖에 못 말해. 이제 나폴레옹 읽어봐: 무에서 climb, 유럽 대부분 정복, 명참모 (Talleyrand, 결국엔) 무시, loyalist 만 신뢰, 충고 무시하고 겨울에 러시아 침공, exile 로 끝남. Steve Jobs: 무에서 climb, 개인 컴퓨터 산업 정복, 1985 자기 보드에서 exile 당함, humbler 한 모습으로 복귀, 두 번째 정점 build, 후계 design 함. Mao: climb, 정복, 결국 yes-men 의 chamber 에서 통치, 모든 경고 신호 무시하고 문화대혁명 launch.
네 인스턴스. 거푸집이 스스로 떠올라. 뭔가 이런 식: climb 을 도왔던 brake 를 잃은 정점 도달자는 자기 인생 또는 직접 후계의 1-3 phase 안에 자기를 파멸로 몰고 가는 경향이 있다. 그게 거푸집. 이름 부르고 나면 아직 읽지도 않은 인스턴스에서도 그 거푸집을 spot 하기 시작해 — 테크 CEO, 정치인, 가족 친구.
OO Quest 와의 cross-link
이 어휘가 객체지향에서 직접 빌려온 거 알아챘을 거야. 우연이 아냐. OO Quest 의 For Instance lesson 이 정확히 이 move 를 언어 차원에서 가르쳐: 클래스는 거푸집, 객체는 클래스를 instantiate, 여러 객체가 한 클래스의 인스턴스가 될 수 있어. 역사 읽기는 같은 move 를 인간이 가진 가장 결과론적인 dataset 에 적용한 거야. OO Quest 는 일반적으로 방법을 주고, 이 quest 는 역사 sample window 통해 너 실제 인생에 적용해. 자매 quest 로 다뤄 — 하나만 끝내면 추상 사다리에 load-bearing rung 하나가 빠져.
*좋은* 거푸집의 조건
유용한 거푸집은 세 가지 property:
- 여러 인스턴스를 압축한다. 1-2 인스턴스에만 fit 하면 거푸집이 아니라 description.
- Cross-culture, cross-era 살아남는다. 황제 거푸집은 춘추전국, 헬레니즘 그리스, 몽골 유라시아, 나폴레옹 프랑스, 20세기 쿠바에 인스턴스가 있어. Wrapper 가 다르고, 거푸집은 persist 해.
- 너 시대에 actionable 하다. 죽은 사람한테만 적용되는 거푸집 이름 부르기는 흥미로움, 자기 회사의 destructor phase 를 6개월 일찍 spot 하게 해주는 거푸집 이름 부르기는 치트.
(1) 실패한 거푸집은 버리고, (2) 실패는 scope 줄이고, (3) 실패는 actionable 회복할 때까지 추상 사다리 올라가거나 내려가.