読書会(APIデザインの極意)第7回議事録

[ 戻る ]


=====================================================================================
Java読書会BOOF「APIデザインの極意 Java/NetBeansアーキテクト研究ノート」を読む会 第7回
=====================================================================================

.. csv-table:: 開催概要

  "日時", "2015年4月18日 10:00 - 17:00"
  "場所", "川崎市教育文化会館 第3会議室"
  "出席者(敬称略)", "高橋(智)、岩室、遠藤、吉本、平山、門脇、石黒、井上(信)、村山、高橋(徹)"

15.1 壊れたライブラリを蘇生する
===============================

本日は、p.282 CookieSet の完全な書き直し から読みました。

15.2 意識的なアップグレードと無意識なアップブレード
===================================================

* 誤植
  * p.284 下3行目 「15.2 意識的なアップグレードと無意識なアップブレード」の「アップブレード」→「アップグレード」
  * 同じ誤植が次にある。
    * p. xii 15.2
    * p. 285, 287,  ページ右上肩

* JDKは互換性維持を重視している(JDK開発者は互換性をDNAに刻めと言われていたそう)
  * 大変なのはシリアライズの互換性

* 互換性の話題から、HTTP2 の話に発展、Webソケットのプロトコルについてちょっと議論

* リバースプロキシーで、リバースプロキシーとWebサーバーの間はHTTPキープアライブを入れないとFD枯渇等の問題がある。

* p. 286 エディタの内容をバックグラウンドでロード
  * 同期と非同期とで異なるAPIを使うより、JavaのFutureで待合せるようにするのがいいのかも。非同期で処理を開始し、同期したい人がgetを呼べばいい。

* p. 287 サンプルコード
  * 2つのバージョンが混在しているときはいいが、将来古いバージョンを削除したあとは(削除するとして)、このコードはなんだろう?となるのでは

* p. 288 StrictMath
  * @since 1.3となっていた
  * Mathとどう違うの? IEEE 754に厳密に合わせている?
  * [議事録注]書籍「プログラミング言語Java 第4版」によれば、

    StrictMathクラスはMathクラスと同じ定数とメソッドを定義しているが、特定のアルゴリズムを使用するので異なる仮想マシン上でも常に同じ値を返す。Mathクラスのメソッドは特定の範囲内での違いが許されている。

    ということです。
    
* p. 294 enum
  * パッケージ名にenum書いたら不正
  → コンパイルエラーになりました

* nullは予約語ではなくリテラル
→ パッケージ名にnullを書いたらエラー

  D:\work>javac PackageName.java
  PackageName.java:1: エラー: <identifier>がありません
  package com.null;
            ^
    
* java.ioは使わない方がいいの? java.nioかな?
  * ファイルI/Oならば、NIO2をまず使おう

* p. 301 META-INF/services/にインタフェース名と実装クラス名を置く
  * ファイル名がインタフェース名ではないか?

* p. 302 サンプルコード
  * staticフィールドでBridgeToOldをnewしているのに、なぜstatic初期化子でBridgeToOldをnewしているのか?

* p. 311 逆向き解決法 は、TDDみたいなもの?
  * → 違うかな。ユーザー目線のドキュメント

* JavaFXはドキュメントがぜんぜんないよね
  * → Oracleが総数1000ページのドキュメントを作っています(英語)。
  * 認知度が低いですね。もっと広めるべきかも

* .NET Frameworkの方がドキュメント充実している!
  * → いやMSDN読みにくい、機械翻訳だし
  * → MSDNは、APIリファレンスだけでなく、ガイドライン的ドキュメント多い。
  ただし、どこにドキュメントあるか探すの大変

* Geertjan Wielenga
  * ブログによると、Principal Product Manager in the Oracle Developer Tools group.
https://blogs.oracle.com/geertjan/entry/welcome_to_me

* 誤植 p. 313 下15 「そした変更が、」→「そうした変更が、」

* 涅槃(nirvana)? 

* pr.317 終り、次回は、p.318 16.4から


[ 戻る ]