J2EE勉強会
- 人数が少なめだったせいか、進行が自然でよかった
- オブジェクト指向入門第2版の日本語訳が来年出るらしい(米澤さんが酒匂さんから聞いたとか)
- おやつタイムにCodeSugarプラグインの話(by かくださん)
ポジションペーパー「おすすめツール」
- Mac OS Xいいなあ
- かくださん QuickSilver
- きむきむさん(id:skimura) ズーム、検索、白黒切り替え
- メモ
- shot(id:shot6)さん CraftLaunch、Jad、Cygwin、Firefox+Extention(LiveHTTPHeaders、WebDeveloperExtension、UserAgentSwitcher、SwitchProxy)
- 中山さん Ruby Win32OLE
- id:koichikさん(見覚えあります) find、Wordのアウトラインモード
- まこたんさん まめファイル、K2Editor
- id:t-wadaさん Emacs、coLinux、腰リール、Hipster PDA&D*I*Y Planner
- 米澤(id:vestige)さん FreeMind、PukiWiki、TodoList
- 中島さん フローチャートのテンプレート(イカス)、ドンキで売ってるスケッチブック、Momonga Linux&KNOPPIX、「Pythonで学ぶプログラム作法」
- 吉崎さん sqlice、Html2img、XmlSpy
- せとあずささん url2bmp、ieHTTPHeaders、Sylpheed/Win32
- 石井さん IdeaTree、英辞郎+どこポップ!、Eclipse Checkstyle plug-in、Windowsでシンボリックリンク使える何か(聞き逃した)
- emoさん VBCommentor、SerialDebugger、VisualComPort 3.0、SmartDoc、LaTeX
- 福澤さん 結局、内職の結果はわからず
- id:kikainekoさん 機械猫モッカー
J2EE界隈おすすめのお品書き(by emoさん)
- 書籍「Concurrency」の内容は
http://www.graco.c.u-tokyo.ac.jp/~tamai/concurrency/slides/
を読めばだいたいわかるそうです
- 形式記述言語の話に
- SPIN、VDM++、Z
- OMGのOCLはイマイチらしい(オレの質問)
POSA Vol2(by koichikさん)
Synchronization Pattern 四つ
- Scoped Locking
スコープはずれたらロックを自動で解放。Javaだとsynchronized
- Strategized Locking
プラットフォームごとにロックのメカニズムが違うのをストラテジパターンで切り替え
- Thread-Safe Interface
ロックのあとまたロックとかをやめる。publicなメソッドでのみロック&synchronizedなメソッドは他のsynchronizedなメソッドを呼び出さない
- Double-Checked Locking Optimization
会場で大受け。勉強になった。ここがPOSA Vol2&3で一番おもしろいらしい。
ロックの必要性をロックの前にチェック
J2SE 1.4まででは破綻。シングルトンの初期化の例。synchronizedブロックの外側では変数の内容が保証されない(共有メモリーの内容を作業メモリーに書き戻すタイミングの問題)=最初のチェックが正しい保証がない。変数にvolatileを付ければ常に作業メモリーと共有メモリーが同期されるようになるけど、変数があっても指すオブジェクトがあるかどうかはわからないからやっぱり×→TigerではOKになった。ただし、オーバーヘッドを減らすためのパターンなのにvolatileでオーバーヘッドが増えるのでは意味がない。Javaではstatic initializer使えばOK。結局このパターンはJavaでは不要
チェックが間違う現象をシングルCPUのマシンで確認するのは難しい。デュアル以上のマシンでないと不具合があるのがわからない
Seasar2.1でなんかあったとかなかったとか
飲み会
某所から怪獣が暴れているという連絡が入り、出席を断念。kikainekoさんと話したかったんだけどなー
もし、ゲストを呼ぶという話がまだ有効ならid:JavaBlackさんがいいっす