今日やったこと
- Progate Ruby1~3 そのまま復習
- Progate Ruby4,5 リセット復習
- Progate Command Line リセット復習
- initializedメソッド、クラスの継承の意味と便利さに気づく笑
明らかにやり過ぎなくらい、ProgateのRubyをやりました。
流石にやり過ぎたので、Progate Rubyの復習はしばらくやめます。
忘れたところがあったらたまにスライドを見るくらいにします。
そうじゃないと先に進めないので。
initializedメソッド
いまいちこのinitializedメソッドが何のために使うのかがよくわかっていなかったが、今日ようやくわかった気がします。
Initializedを使うと、インスタンス変数の記述を減らすことができ、全体的にコードをスッキリできる。
具体的に言うと、
menu1.name=“寿司”
menu1.price=500
menu1.calorie=300
と書いていたものを
def initialized(name:,price:,calorie:)
self.name=name
self.price=price
self.calorie=calorie
end
とすることでインスタンスを作るときに
menu1=Menu.new(name:”寿司”,price:500,calorie:300)
というように1行でまとめることができる。
インスタンスが1種類だとあまりメリットを感じないですが、インスタンスが何種類もあったとき(menu2,menu3,menu4,,,,,,)にかなり省略でき、とても便利だと思いました。
クラスの継承、オーバーライド、super
これもinitializedメソッド同様にコードの記述を少なくするものです。
異なるクラスを作るときに他のクラスとの共通部分を利用できルカらです。
例えば、Aというクラスが1,2,3という情報を持っていたとして、1,2,3,4という情報を持つBクラスを作りたくなった時に、Aクラスの内容を継承することで、新しく書くのは4だけでよくなるって感じですね。
Qiitaのシンタックスハイライト
100DaysOfCode 6日目にして初めてコードを見やすく表示する「シンタックスハイライト」というやつを使って、コードを書いてみました。
ようやく学習記録という感じになりました。
シンタックスハイライトについてはこちらの記事に使い方がわかりやすく書かれています↓
https://qiita.com/Qiita/items/c686397e4a0f4f11683d
明日からも引き続きプログラミングの勉強を頑張りたいと思います。
おわり