2019-05-01から1ヶ月間の記事一覧

Rubyのモジュールの特徴(クラスとの違いなど)

Rubyにはプログラムを柔軟に記述するためにモジュールというクラスに似た機能が用意されています。モジュールの特徴やクラスとの違い、使い方についてみていきます。 モジュールとは モジュールはクラスと同じように定数やメソッドをまとめたり、クラスに組…

Procクラスについて

Rubyの「Procクラス」について学んだことをまとめてみました。Procはブロックとして記述された一連の手続きを受け渡しするためのクラスです。 Procクラスとは Procを理解するにあたりポイントとなるのがブロックです。ブロックはdo ~ endまたは{ ~ }の形で引…

Rubyのyieldメソッドについて

Rubyのyieldは機能の理解が難しいので整理したいと思います。英単語のyieldは「生み出す、引き起こす」などの意味がありますが、Rubyでは一言で言うと、「他のものに取って代わられる」機能です。 yieldの仕組み サンプルコードをみてみましょう。 def msg y…

Rubyのレシーバとは

Rubyのレシーバとは何でしょうか。 レシーバはselfなどで表され、Ruby以外のプログラミング言語にも共通して使われるオブジェクト指向一般の用語です。 Rubyのレシーバ Rubyのレシーバはインスタンスメソッドを利用するインスタンス自身のことを指します。 …

Rubyで郵便番号判定を正規表現で行う

Rubyで郵便番号を正規表現で判定してみましょう。 判定パターン 郵便番号(String型)とみなす文字列のパターンは下記の2パターンとします。 "390-1401" (3桁-4桁記法) "3901401" (7桁記法) matchメソッドを使って出力される結果は次の通りです。 "郵便…

Rubyで正規表現を使い文字列を操作する(gsub・slice・match)

Rubyで正規表現を使えるようになると、文字列を簡単に操作できるようになります。文字列の置換や抽出はプログラミングでよく出てくる処理なのでしっかり押さえておきたいですね。 文字列の置換 例えば、次の文字列をカンマ区切りに変更してみましょう。 str …

Rubyでフィボナッチ数列を解く

Rubyのアルゴリズム練習がてらフィボナッチ数列を解いてみます。 フィボナッチ数列とは まず最初にフィボナッチ数列について触れます。 フィボナッチ数列は 1, 1, 2, 3, 5, 8, 13, 21 ,,, のように第n+2項が、 第n+1項と、第n項の和になるよう数列です。 事…

Ruby系コマンドでits extensions are not built.が表示されるときの対処法

railsで開発をしていると、あるときからRuby系のコマンドを叩くたびに下記のメッセージが表示されるようになった。 Ignoring mysql2-0.4.6 because its extensions are not built. Try: gem pristine mysql2 --version 0.4.6 Ignoring mysql2-0.3.20 because…

Rubyメタプログラミングで動的にメソッドを変更する

Rubyのプログラミング問題でメソッド名を動的に変更する場合について触れたいと思います。 メソッド名を動的に変更する記述方法をメタプログラミングと言うのですが、Rubyではこの方法を持ちいいてメソッド名を動的に変えることが可能です。 例えば次のよう…

チーム開発をうまく進めるために意識したい3つのこと

大手プログラミングスクールのフリーランスコースに半年ほど通い、はじめてチーム開発を経験したので、そこでの学びを共有できればと思います。「チーム開発をうまく進めるために意識したい3つのこと」、と題して3つのポイントに整理してお伝えします。自分…