閏年についてびっくりしたこと
16日目です。
閏年(うるうどし)って4年に1度必ずくるものだと思ってたのですが、実は8年に1度の時があるってみなさんご存知でしたでしょうか?
太陽暦では、平年は365日であり、閏年は閏日が挿入されて366日である。現在広く採用されているグレゴリオ暦では、閏年は400年間に97回ある。
グレゴリオ暦では、次の規則に従って400年間に97回の閏年を設ける。
つまり、1600年と2000年は閏年(2月が29日まである年)ですが、1700年、1800年、1900年は閏年ではなく「平年(2月は28日まで)」の扱いになるそうです。「400年間に97回の閏年を設ける」ことで誤差が少なくなるんだそうです。そのため、来る2100年も閏年ではないので、2096年の次の閏年は2104年になります。
本日の練習問題で閏年を扱い、初めは「4で割り切れれば良いんだから簡単じゃん」とか思っていたのですが、以外と難しかったです。
ただ、Rubyには閏年かどうかをtrueかfalseで返してくれる「leapメソッド」があることも知りました。ちゃんと1900年はfalseで、2000年はtrueで返してくれます。
https://qiita.com/DrqYuto/items/c34613b71860b3482ead
便利なメソッドを多く知るのも可読性の高いコードを書くために必要なことですね。
ーーーーーーーーーーーーーーーーーーーーー
本日覚えたショートカット
エディタ上で「command + p」をすることで、ディレクトリの検索ができることを知りました。railsでは非常に多くのディレクトリを扱うので、とても便利だと思います。
本日は初めて教室に行き、Rubyの練習問題とrailsの環境構築および使い方を学習しました。railsは、Progateの時から全貌が大きくて何をやっているのかが見えなかったので、今度こそ身につけられるよう明日も頑張ります。
また、本日お話しした方が私より1ヶ月前(2期前)に開始した方だったのですが、もう個人アプリ作成に入られてました。作成期間は3~4日ほどと言ってましたが、一通りの機能は実装されていた感じだったので、1ヶ月後の目標がイメージできて良かったです。