FC2ブログ

サラリーマンのすらすらIT日記

IT関連を中心とした日々を綴ります。
2012/03/02

うるう年の判定方法を調べていて脱線

今年はうるう年。うるう年かどうかを判定するのは、プログラマだと誰もが知っていると思います。「西暦年が4で割り切れる年、ただし100で割り切れるが400で割り切れない年は例外」というものです。プログラムで書いた人も多いはずです。ただプログラマ以外の人にはそれほど知られていないようですが。

「Ruby Way」を読んでいると、Rubyではメソッド一発で判定してくれるとのこと。さすがはかゆい所に手が届くRubyです。

うるう年の判定方法は知ってはいるものの、Webで調べてみました。すると「私がソフトウェア技術者をやめた理由」なるサイトに出くわしました。ここで紹介されている商用プロダクトのうるう年判定のソースコードには、びっくり!こんな原始的な、しかも2028年までしか使えないコードを書く人がいるんですね。

確かにソフトウェアハウスにいた時、きれいなコードを書こうとする努力をする時間的余裕、精神的余裕はありませんでした。納期が迫ると、きれいなコードより確実なコードを書くことが求められますから。ただ自分よりいいコードを書く人のを真似て書いたことはありました。それをきれいなコードを書くための努力というならば、その程度の努力だけでした。

今はきれいなコードを書こうという努力をしています。プログラム関連のネタ(先日のsedやずっと以前のExt JSなど)は、ささやかながらその努力の結果です。とはいえ、急ぎの仕事の場合は、以前書いた下手なプログラムのコピペでやってしまうこともありますが。

きれいなコードを書くという作業は、ある意味純粋数学に通じるところがあります。現代数学では一つの定理があってそれを一般化、抽象化するという作業を進めていきますが、コーディングにも一般化・抽象化してモジュールやクラスを作るという作業があります。この辺りは共通していると思います。数学好きの私がプログラミングが好きなのは、この共通点があるからでしょう。

今Rubyをやっているのは、きれいなプログラムを目指す一環です。Rubyをやる必然的な理由はありません。PHPで実現できているのですから。ただ作業効率やメンテナンスを考慮したコーディングを考えていくと、どうしても後発の言語やツールを使う方がいいと判断したからです。

ともあれ、今はいろんなことにチャレンジできているので、恵まれていると言えるかもしれません。

スポンサーサイト



コメント

コメントの投稿

  • URL
  • コメント
  • パスワード
  • 秘密
  • 管理者にだけ表示を許可する

トラックバック

トラックバックURL:http://sookibizviz.blog81.fc2.com/tb.php/1122-1c5b73ec

■  カレンダー

07 | 2020/08 | 09
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 - - - - -

■  プロフィール

sookibizviz

Author:sookibizviz
仕事の内容やソフトの紹介を交えながら、日々の悪戦苦闘を綴っていきます。

■  最新記事

■  最新コメント

■  最新トラックバック

■  月別アーカイブ

■  カテゴリ

未分類 (64)
BizViz (24)
IT (1119)
計量 (76)
環境 (26)
数学 (181)
ニュース (46)
本 (187)
音楽 (113)
囲碁 (5)
将棋 (26)
ブログ (14)
日記 (19)

■  FC2カウンター

■  検索フォーム

■  RSSリンクの表示

■  QRコード

QRコード