こんにちは。
当ページにアクセスしてくださり、ありがとうございます。
この記事は、プログラミング言語「Ruby」のフレームワーク「Rails」についての記事になります。
問題
同じ結果を得るためにも、様々なコードの記述方法が、プログラミングにはあります。
以下のコードをワンライナーに書き換える方法について、2パターン以上のコードを記述してください。
```Rails(Ruby)
1 array = [1, 2, 3, 4, 5].map do |el|
2 if el.odd?
3 el
4 end
5 end.compact!```
模範回答
```Rails(Ruby)
1個目array = [1, 2, 3, 4, 5].map { |el| el if el.odd? }.compact!
2個目 array = (1..5).to_a.delete_if { |el| el.even? }
3個目 array = (1..5).to_a.delete_if(&:even?)
4個目 array = [1, 2, 3, 4, 5].select{ |el| el.odd?}```
他にも方法があるかもですが、ひとまずは上記の通りです。
ちなみにワンライナーとはざっくり言いますと、
何行にも書かれたコードを、一つにまとめる方法です。
例えば、
```Rails(Ruby)
1 if message == "プログラミング楽しい"
2 puts "その調子で頑張れ!"
3 end
```
上記のように3行のコードで成り立つif文でも、「ワンライナー」という方法をとると
```Rails(Ruby)
1 puts "その調子で頑張れ!" if message == "プログラミング楽しい"
```
このように書き方は変わりますが、1行で書けるようになります。
メリットは、
❗️コードが、スッキリして読みやすくなる
一つしか思いつきませんでしたが(すみません)、職場で開発になると何百行ものコードが書かれていることもあるので、このメリットは大きいと思います。
以上となります、参考になれば幸いです。
最後まで読んでいただき、ありがとうございました。