10.1 クラスの解剖 10.1.1 オブジェクトの初期化 10.2 不変式 アサーションか例外か 10.2.1 不変式を維持する方法 例外を使いたくない場合はどうするか 10.2.2 不変式が有益な理由 SOLID原則 10.2.3 不変式の伝え方 10.2.4 クラスの利用者への伝え方 10.2.5 メンテナへの伝え方 不変式チェックをすると遅くなるか 10.3 不変式のカプセル化と保守 10.3.1 カプセル化とは何か 10.3.2 データアクセス保護 すべてのプライベートメンバにゲッターやセッターを用意すべきか 10.3.3 操作、演算 @staticmethodと@classmethodはどうするか 10.4 まとめ