山傘のプログラミング勉強日記

プログラミングに関する日記とどうでもよい雑記からなるブログです。

プロを目指す人のためのRuby入門 その1

Ruby

今日からRubyを勉強していきたいと思います。参考書は、通称チェリー本と呼ばれるものを使用します。

環境

下の記事を見て導入しました。

[Ruby][初心者向け]EclipseでRuby開発環境を構築する on Windows - Qiita

OS: Windows10

IDE: Eclipse

Eclipseのサイトを見てRubyないやんと思ったんですが、Eclipseを起動して導入するみたいですね。環境構築が苦手ですが、Eclipseを新たにインストールせずにRubyを使えるようになりました。

第1章 本章を読み進める前に

この本は初心者向けじゃないよということだそうです。対象とする読者層を丁寧に明示しているので、親切だと思います。

やはりというか、Macで開発環境を整備した方が良いのかなと思いました。

第2章 Ruby の基礎を理解する

Ruby の基礎知識

Ruby の基礎知識が羅列されていたので、コードを書くことによって徐々に覚えていきたいと思います。

有理数を扱うRational()が便利だと思いました。

FizzBuzz

競技プログラミングを初めてからFizzBuzzというものを知りました。課題としてRubyFizzBuzzのコードを書くことが与えられました。

例として、

fizz_buzz(1) #=> "1"

とあったので、Rubyのファイルを作成して、上記のように記述したらエラーが出てしましました。そこでメソッドを定義して自分で作るのかと気が付きました。RubyにはFizzBuzzのライブラリがあるのかと勘違いしました。

def fizz_buzz(n)
  if n % 15 == 0
    puts 'FizzBuzz'
  elsif n % 3 == 0
    puts 'Fizz'
  elsif n % 5 == 0
    puts 'Buzz'
  else
    puts n
  end
end
fizz_buzz(1)
fizz_buzz(2)
fizz_buzz(3)
fizz_buzz(4)
fizz_buzz(5)
fizz_buzz(15)

感想

初めに感じたことは、Pythonに似ているなと思いました。

Javaについてはある程度浅いところまでは勉強したと思うので、別の言語も勉強したいと思いRubyに手を出してみました。Unityはパソコンが重いのでいつ再開できるか微妙であり、Python機械学習の勉強が思ったよりもしっくりこないので、web系に繋がるRubyで良いかという軽い気持ちなので続くかは分かりません。7月の誕生石がルビーなので、7月から始めても良かったのかもしれないですね。

まあ、競プロのためにC++を勉強しても良かったんですが、JavaからC++に変える人はあまりメリットがないような気もします。

また、CODE COMPLETE も読んでいるんですが、同時進行で進めていきます。

迷走はまだ続きそうです。