Date and Time APIを理解する為には、ISO 8601に踏み込みましょう!

@khasunuma さんのDate and Time APIのツイートが秀逸だったので纏めました!
25
HASUNUMA Kenji (Deprecated) @khasunuma_old

「時の起源」からじっくり学びたい人向け資料(Java 8ローンチ・イベントで使ったもの)。知っているところは飛ばしていいよ。 slideshare.net/btnrouge/jdk8-…

2015-05-09 06:35:12
HASUNUMA Kenji (Deprecated) @khasunuma_old

ローンチ・イベント当日にも話したのですが、1日が24時間とか、1時間が60分になったのは、インドで0が発見され10進法がメジャーになる前に世界各地で日付と時刻が決められていたため。約数の多い十二進法や六十進法が好んで使われました。だいたいが古代バビロニアが起源です。

2015-05-09 06:37:26
HASUNUMA Kenji (Deprecated) @khasunuma_old

曜日も古代バビロニアが起源なのだけど、「七曜」という考え方から導き出しています(発表資料には載せてある)。あくまで休日を算出するためのイレギュラー要素で、ISO 8601でも曜日はあまり使うなと入っています。

2015-05-09 06:39:16
HASUNUMA Kenji (Deprecated) @khasunuma_old

Java 8ローンチ・イベントでさらりとした説明しかしなかったタイムゾーンのお話を 渋谷java で20分間じっくり説明したときの資料がこちら。 slideshare.net/btnrouge/jsr31…

2015-05-09 06:41:00
HASUNUMA Kenji (Deprecated) @khasunuma_old

タイムゾーンに続いてTemporalAdjusterについて、同じく #渋谷java で話したときの資料。 slideshare.net/btnrouge/jsr31…

2015-05-09 06:43:04
HASUNUMA Kenji (Deprecated) @khasunuma_old

このくらいの予備知識を押さえておけば、Java Day Tokyo 2015のDate and Time APIのセッションはすんなり頭に入ってきます。Angelaの資料はサンプル集として秀逸です。 oracle.co.jp/jdt2015/pdf/1-…

2015-05-09 06:45:49
HASUNUMA Kenji (Deprecated) @khasunuma_old

まあ、Date and Time APIはMaintenance LeadであるはずのRoger Riggs自身が全然理解していないので…これ以上言うと悲しくなってくるな。

2015-05-09 06:48:14
HASUNUMA Kenji (Deprecated) @khasunuma_old

今でこそハスヌマはISO 8601の説明をしてからDate and Time APIを教えるべきだ、という考えですが、過去にはISO 8601をスルーしていた時期もある。どうしたらより理解してもらえるかを考えた時、ISO 8601には触れた方がいいよね、という結論になりました。

2015-05-09 06:52:33
うらがみ⛄ @backpaper0

はすぬまさんに関西へお越しいただいてじっくりお話して頂く贅沢イベントしたい

2015-05-09 06:43:02