生年月日から年齢を計算2
昨日のエントリーに対して「これはひどい」タグがついていてちょっと凹む今日この頃。何がひどいのかがはっきり書かれていないのですが、コメントした人は元記事も含めてDateを整数処理している辺りを問題にしているようです。Rubyにも見識のある方の様なので、つまらない物(Dateは日付型であって人物型では無いわけだし...)をDateに追加した辺りも「ひどい」だったのかな。失礼しました。
んじゃ、Date型の処理系の発想だったらどうするのかなぁ...と思って考えたけどこんな感じでしょうか。(懲りずにDateに追加するオイラでした)
class Date def age(calcDay = Time.now) age = calcDay.year - self.year return age -1 if calcDay.month < self.month return age -1 if calcDay.month == self.month && calcDay.day < self.day return age end end
#世の中のコードは結構すごいですよw