現場で役立つシステム設計の原則
人気ブログランキング
「現場で役立つシステム設計の原則」(増田亨)を読みました。
実際は、読んだというよりもパラパラめくったというのが正しい。
知っていることがそれなりにあるので、いちいち目を通していられない。
・早期リターンについて、何でもかんでも使えば良いように受け取れる記述になっている(副作用について語っていない)。
引数が null なら即リターン/条件を満たさなければ即リターンのようなものは積極的に使うべきだが、出口が多すぎると、どこで処理が終わったのか追いにくいということを語っていない。
サンプルは短いから気にならないだろうが、実コードでは問題となりうる。
・ドメインオブジェクトをプレゼンテーション層、アプリケーション層、データソース層から使うような絵を描いているが、それは違うでしょう。
アプリケーション層からでしょうに。
p.150の「ドメインオブジェクトを使って機能を実現する」では、アプリケーション層から使う絵になっている。
・UPDATEをせずに、DELETE/INSERTをしろと言っている。
p.181では外部キーの話をしているにもかかわらず。
DELETE/INSERTの場合、どうやってロックをかけるのか。ロックテーブルを別途用意するの?でも外部キーはどうするの?
まるっきり理解不能です。
パラパラではなく、じっくり読むとちゃんと書いてあるのかもしれないが、自分のためにはなりませんでした。
現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法
技術評論社
2017/7/5
実際は、読んだというよりもパラパラめくったというのが正しい。
知っていることがそれなりにあるので、いちいち目を通していられない。
・早期リターンについて、何でもかんでも使えば良いように受け取れる記述になっている(副作用について語っていない)。
引数が null なら即リターン/条件を満たさなければ即リターンのようなものは積極的に使うべきだが、出口が多すぎると、どこで処理が終わったのか追いにくいということを語っていない。
サンプルは短いから気にならないだろうが、実コードでは問題となりうる。
・ドメインオブジェクトをプレゼンテーション層、アプリケーション層、データソース層から使うような絵を描いているが、それは違うでしょう。
アプリケーション層からでしょうに。
p.150の「ドメインオブジェクトを使って機能を実現する」では、アプリケーション層から使う絵になっている。
・UPDATEをせずに、DELETE/INSERTをしろと言っている。
p.181では外部キーの話をしているにもかかわらず。
DELETE/INSERTの場合、どうやってロックをかけるのか。ロックテーブルを別途用意するの?でも外部キーはどうするの?
まるっきり理解不能です。
パラパラではなく、じっくり読むとちゃんと書いてあるのかもしれないが、自分のためにはなりませんでした。
現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法技術評論社
2017/7/5
この記事へのコメント