2007-06-15 祝日
Calendar::Japanese::Holidayなるものを触ってみた
日本の祝日の名前を取得するモジュールのようです。
僕も前に自分用に同じようなヤツを作りました。
でCalendar::Japanese::Holidayなんですが、実装はさておき、実行結果に少し不満が。
というのも昔の休日が軒並みコケる。
まぁどこまで対応するかは用途によって変わるとは思うけど少なくとも、昭和23年(1948年)7月に制定された「国民の祝日に関する法律」を一番古いケースとして対応したほうがいいかと。
まずそれによると元旦は1949年〜現在の1月1日。
成人の日は1949年〜1999年の1月15日。2000年以降は1月の第二月曜日(ハッピーマンデー)
建国記念の日は1967年〜現在の2月11日。
天皇誕生日、というか4月29日の扱いが少しややこしい。
4月29日は1949年〜1988年の間が天皇誕生日、1989年〜2006年の間がみどりの日、2007年〜現在が昭和の日となる。
みどりの日は前述の通り、1989年〜2006年の間は4月29日だったが、2007年からは5月4日となる。
海の日は1996年〜2002年の7月20日、2003年以降は7月の第三月曜日(ハッピーマンデー)
敬老の日は1966年〜2002年の9月15日、2003年以降は9月の第三月曜日(ハッピーマンデー)
体育の日は1966年〜1999年の10月10日、2000年以降は10月の第二月曜日(ハッピーマンデー)
天皇誕生日は前述通り、1949年〜1988年の間は4月29日だったが、1989年〜現在は12月23日となる。
春分の日、秋分の日は計算によって求められる。よって年によって若干変わることもあるが基本的には春分が3月21日、秋分が9月23日になる。
ややこしいのが国民の休日。
制定されたのは1985年12月27日。
定義としては2つの祝日(日曜は含まない)に挟まれた平日(土曜を含む)というもの。
でもっとややこしいのが振替休日。
制定されたのは1973年4月12日。
定義としては祝日が日曜日の場合、その翌日を休日とするというもの。
2007年以降はその翌日以後において最も近い祝日でない日に割り振られるという定義に変更された。
つまり、1日、2日、3日が全て祝日の場合で且つ1日が日曜日だった場合は2007年以降なら4日が振替休日になるということになる。
で最後に、特殊な休日について。
1989年2月24日は昭和天皇の大喪の礼。
という四つの特殊な祝日がある。
これで全部かな?





