『現場で役立つシステム設計の原則』という本を付箋を付けながら一通り読んだ?ので 個人的に面白かったところを自分用にメモしておきます。 本当にメモです。 本質とはだいぶ違うところだと思うので買って読んで下さい。。 (付箋はつけていたけどうまく説明できなさそうなところは消しました。) 目的ごとに変数を用意する 段落わけと、目的ごとの変数で分かりやすい。 一度作った変数を変更するのを破壊的代入といい、それをなくすことでコードが安定するそうです。 int basePrice = quantity * unitPrice int shippingCost = 0 if (basePrice < 3000) { shippingCost = 500 } int itemPrice = ... コレクション型を扱うロジックを専用クラスに閉じ込める これをコレクションオブジェクトやファーストクラスコレクシ
![現場で役立つシステム設計の原則で個人的に面白かったところメモ - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/10dbe117136d29a69b44b6ea178d78cb873ed721/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU3JThGJUJFJUU1JUEwJUI0JUUzJTgxJUE3JUU1JUJEJUI5JUU3JUFCJThCJUUzJTgxJUE0JUUzJTgyJUI3JUUzJTgyJUI5JUUzJTgzJTg2JUUzJTgzJUEwJUU4JUE4JUFEJUU4JUE4JTg4JUUzJTgxJUFFJUU1JThFJTlGJUU1JTg5JTg3JUUzJTgxJUE3JUU1JTgwJThCJUU0JUJBJUJBJUU3JTlBJTg0JUUzJTgxJUFCJUU5JTlEJUEyJUU3JTk5JUJEJUUzJTgxJThCJUUzJTgxJUEzJUUzJTgxJTlGJUUzJTgxJUE4JUUzJTgxJTkzJUUzJTgyJThEJUUzJTgzJUExJUUzJTgzJUEyJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz02ZWJlMTRjOGJjYzMwNGRlZjBkYTc5ZjVhN2VmMGJhNQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwdGFrYWhpcm9tJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1hNjM2OGVmNWQ3NGJkZTJjMzEzN2JhNDE3YjNhMjY2Mg%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3De03849eda14cf739e7cdc77dd6cf0ac9)