Effective java 3版 読書会 16日目

実施日時:2019/5/9 22:00~23:00
対象範囲:項目65~項目68
参加者:yodai、yoridori、kassyi
形式:オンライン(discord)
   課題本を事前に読み、実業務と照らし合わせて記述内容の
   議論をする。

項目65 リフレクションよりもインタフェースを選ぶ
フィールドにリフレクションを設定してテスト用に使用した事が有った。
現在は、テスト用のライブラリが有るのでそれを使う事が多い
スプリングでエラーが発生した時に利用していることが分かった
また、依存系のエラーが発生した時にリフレクションの使用が分かった
フレームワークなどで新しいインスタンスを作成する時にリフレクションを使用する事が有る
後、設定ファイルを使用する時に使用していた。

項目66 ネイティブメソッドを注意して使う
Web系では殆どない、どうしてもライブラリが無い時の代わりに使用する時以外では。
C++とJAVAの両方使用している現場などは有り得る
Androidは良く使用される
Cを使用する場合はメモリ破壊が怖い、単体テストを良くする必要がある

項目67 注意して最適化する
まずはアルゴリズムの改善を行うべき
リストで先頭から順番に行っている場合などは対象となる
優れた(分かり易い)プログラムを書くべき
凝縮度が高い良いプログラムを書く
パフォーマンスについては性能試験で関係する位
もっと早くではなく最低限満たしているかでパフォーマンスを測定したりする。
JavaよりHTMLの方が性能に影響する事が多い
サーバー側の性能試験は余り行わない
大量のデータを処理をする場合やバッチなどは関係すると思われる
一つの大きなクラスにリクエストを大量に受けるとメモリが解消されず重い処理になる。

項目68 一般的に受け入れられている命名規約を守る
略語は大文字でなどのルールがある
jsonではデータクラスを渡すのでデータbeanを作成する
beanという名前はクラスには付けない
名前付けに悩むときは何かがおかしいと考えるべき
メソッドの仕事が一つならそれを付けるべき、2つ以上ならおかしい。

協力:Tech Baton
https://tech-baton.studio.design/

この記事が気に入ったらサポートをしてみませんか?