差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン
前のリビジョン
次のリビジョン
|
前のリビジョン
|
article:poodr [2020/11/28 13:38] 127.0.0.1 外部編集 |
article:poodr [2020/12/30 00:28] (現在) kijima |
{{tag>book 進行中}} | {{tag>book}} |
====== Practical Object-Oriented Design in Ruby ====== | ====== Practical Object-Oriented Design in Ruby ====== |
| |
| |
オブジェクト指向なデザインの本。要するにRubyでの再利用性、耐変更性を考慮した正しい書き方。 | オブジェクト指向なデザインの本。要するにRubyでの再利用性、耐変更性を考慮した正しい書き方。 |
デザインパターンとたぶん同じ意味。CやJavaをテーマにしたデザインパターンの本は数あれど、Rubyを題材にしたデザインの本はそう多くない。 | デザインパターンの本だと思っていたが、違う。 |
| |
===== 1. Object-Oriented Design ===== | ===== 1. Object-Oriented Design ===== |
* super()し忘れると間違った挙動をもたらす。よくない。コンストラクタのフックメソッドを作っておく。そうすると、子クラスには特化だけ書かれていることになる。 | * super()し忘れると間違った挙動をもたらす。よくない。コンストラクタのフックメソッドを作っておく。そうすると、子クラスには特化だけ書かれていることになる。 |
===== 7. Sharing Role Behavior with Modules ===== | ===== 7. Sharing Role Behavior with Modules ===== |
| |
| * オブジェクトごとに共通の振る舞い、それがロール。 |
| * ミックスインとは、名前をつけてメソッドのグループを定義すること。クラスとは独立し、どんなオブジェクトにも混ぜ入れることができる。 |
| * Rubyでは、混ぜ入れられるものを「モジュール」という。なるほど。''include''するやつ。 |
===== 8. Combining Objects with Composition ===== | ===== 8. Combining Objects with Composition ===== |
===== 9. Designing Cost-Effective Tests ===== | ===== 9. Designing Cost-Effective Tests ===== |
article/poodr.1606538322.txt.gz · 最終更新: 2020/11/28 13:38 by 127.0.0.1