# 10 \~ 12 : 클래스, 시스템, 창발성

## 10장 : 클래스

### 클래스 체계

### 클래스는 작아야 한다 !

### 변경하기 쉬운 클래스

## 11장 : 시스템

\~\~

### 도시를 세운다면 ?

### 시스템 제작과 시스템 사용을 분리하라

### 확장

### 자바 프록시

### 순수 자바 AOP 프레임워크

### AspectJ 관전

### 테스트 주도 시스템 아키텍처 구축

### 의사 결정을 최적화하라

### 명백한 가치가 있을 때 표준을 현명하게 사용하라

### 시스템은 도메인 특화 언어가 필요하다

\~\~

## 12장 : 창발성

### 창발적 설계로 깔끔한 코드를 구현하자

### 단순한 설계 규칙 1 : 모든 테스트를 실행하라

### 단순한 설계 규칙 2 \~ 4 : 리팩터링

### 중복을 없애라

### 표현하라

### 클래스와 메서드 수를 최소로 줄여라

<https://weheartit.com/entry/300652990>
