Effective java 3版 読書会 14日目

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

項目57 ローカル変数のスコープを最小限にする
ローカル変数は近くにあった方が分かり易い
C以外の言語でも同じだと思える
for文で2つの変数を持つのは分かり辛い
iteratorを使用するのは、setの中にあるものを取り出したい時に使用する。
理由はsetにはgetが無いため。
setはListの重複を除きたい時に使用する事が有る。
streamではdistinctを使用できる
そうでなければsetを使用する。

項目58 従来のforループよりfor-eachループを選ぶ
例外が起こりそうならforeachを使用する。
特に、検査例外などが起こると分かり辛いのでforeachを使用するべき
for-eachを使えない場合は以下の3つ
・要素を取り除きながら走査する場合
 ⇒removeIfを使用する
・変換
・並列イテレーション
インデックスを使用する場合は使えない

項目59 ライブラリを知り、ライブラリを使う
nullチェックなどでアパッチのライブラリ(Commons Collections)を良く使う。
コレクションのチェックをする場合やStreamなどで便利。
アパッチのライブラリのisEmptyを使用するとnullや空文字チェック実施してくれる。

項目60 正確な答えが必要ならば、floatとdoubleを避ける
小数点を使用する場合、正確な値が必要ならばdoubleやfloatは使用するべきでない。
BigDecimalの使い方は癖があるため、良く調べる必要が有る。

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


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