dullwhaleのメモ帳

何度も同じことを調べなくてよいように...

システム開発における暦の違いについてのメモ

世界には日本と違う時間(≈ 暦)の考え方で動いている地域、国がわんさかある。 日本で何も考えずに作成したソフトウェアを他の国に持ち込んだら使い物にならないかもしれない。

時間の考え方は大きく2つに分解できる。 1つは暦法であり、もう一つは紀年法である。 暦法は1年をどのように区切るか、1年の長さをどう定めるかを決定する。 紀年法は歴史の中でどこを1年目とするかを決定する。

暦法として主な分類には太陽暦太陰暦太陰太陽暦がある。 太陽暦では地球が太陽の周囲を1周したら1年とする。 太陰暦は月の満ち欠けを基準に1ヶ月を決める。 月の周期は約29.5日であるから、太陽暦とは少しずつずれていく。 太陰太陽暦太陽暦太陰暦を組み合わせた暦で、太陽暦に対する太陰暦のずれを修正するため閏月を挿入したりする。

紀年法として有名なのは西暦、ヒジュラ暦仏暦などだ。 西暦はキリストが生まれたとされる年を元年としている。 イスラム圏で使われるヒジュラ歴はムハンマドがメッカからマディーナへ聖遷した年を元年としている。 仏暦では釈迦が亡くなったとされる年またはその翌年を元年としている。 王に即位した年を元年とする「X王歴N年」のような数え方や元号も広い意味では紀年法である。

日本標準時協定世界時UTC: coordinated universal time)+9時間と定義されている。 UTCは雑に太陽暦 かつ 西暦と考えて良い。