Java読書会BOF 「Effective Java 第3版」を読む会 第6回

[ 戻る ]


==========================================================================================
Java読書会BOF 「Effective Java 第3版」を読む会 第6回
==========================================================================================

"日時","2019年5月11日 10:00 - 17:00"
"場所","川崎市教育文化会館 第3会議室"
"出席者(敬称略)","高橋(智)、岩室、今井、井上、長谷川、平山、大部(書記)"

第9章 プログラミング一般
======================================================================
項目66 ネイティブメソッドを注意して使う
----------------------------------------------

項目67 注意して最適化する
----------------------------------------------

 - パフォーマンスツールを使わないといけない時は、大抵忙しい時。
   事前に使い方を覚えておきたい。

項目68 一般的に受け入れられている命名規則を守る
----------------------------------------------

 - P.290 サブパッケージ:原文では太字、次の階層のパッケージで、サブパッケージというものがあるわけではない。

 - パスカルケース:単語の先頭が大文字始まり
 - キャメルケース:単語の先頭が小文字始まり
 - スネークケース:単語間をアンダースコア区切り

 - P.292 ほぼ使われなくなった -> JavaBeanの完全な仕様という意味か get、setは普通に使っている。

第10章 例外
======================================================================
項目69 例外的状態にだけ例外を使う
----------------------------------------------

 - P.294 原文では、複雑にします。の前にgreatly(大いに、非常に)が入る。

項目70 回復可能な状態にはチェックされる例外を、プログラミングエラーには実行時例外を使う
----------------------------------------------

項目71 チェックされる例外を不必要に使うのを避ける
----------------------------------------------

 - 例題をnext() hasNext()で書けば明確だった?

項目72 標準的な例外を使う
----------------------------------------------

 - P.300 下から9行目「平行な修正を」->「平行な変更を」では?

項目73 抽象概念に適した例外をスローする
----------------------------------------------

 - P.302 (正誤表より)
   第3段落目の2行目「AbstractSequential List」->「AbstractSequentialList」

項目74 各メソッドがスローするすべての例外を文書化する
----------------------------------------------

項目75 詳細メッセージにエラー記録情報を含める
----------------------------------------------

項目76 エラーアトミック性に努める
----------------------------------------------

項目77 例外を無視しない
----------------------------------------------

 - 宿題:close()で失敗する簡単な例を探す。

第11章 並行性
======================================================================
項目78 共有された可変データへのアクセスを同期する
----------------------------------------------

 - P.312 下から10行目:「プログラムは終了しません。」->「プログラムは決して終了しません。」
   原文では「終了」の前に、never(決して)がボールドで記載されている。

項目79 過剰な同期は避ける
----------------------------------------------

 - P.321 下から10行目、「内部的に同期しなければなりません。」
  -> 「しなければなりません」が原文では太字になっている。

項目80 スレッドよりもエグゼキュータ、タスク、ストリームを選ぶ
----------------------------------------------

 - P.322 (正誤表より)
 「executor.shutdown();」->「exec.shutdown();」

項目81 waitとnotifyよりも並行処理ユーティリティを選ぶ
----------------------------------------------

 - P.325 下から12行目、「互い待つ」->「互いを待つ」

項目82 スレッド安全性を文書化する
----------------------------------------------

項目83 遅延初期化を注意して使う
----------------------------------------------

項目84 スレッドスケジューラに依存しない
----------------------------------------------

第12章 シリアライズ
======================================================================
項目85 Javaのシリアライズよりも代替手段を選ぶ

 - P.338 (正誤表より)
   6行目「広く使われていいます。」->「広く使われています。」

----------------------------------------------
項目86 Serializableを細心の注意を払って実装する

 - P.343 Java 4 -> 1.4

----------------------------------------------
項目87 カスタムシリアライズ形式の使用を検討する

 - P.349 一番下の行:「場合にだけ」の「だけ」は原文では太字になっている。

項目88 防御的にreadObjectメソッドを書く
----------------------------------------------
項目89 インスタンス制御に対しては、readResolveよりもenum型を選ぶ
----------------------------------------------

.. note:: 次回は p.362 から。
(以上)


[ 戻る ]