2018-10-29から1日間の記事一覧

「class_evalメソッド」

class_evalメソッドという厳ついメソッドを使わざるを得ない場面があった。 初見かつ苦手なモジュール関連のメソッドだったので復習としてまとめておこうと思う。 class_evalメソッドはそもそもRubyの標準クラス・モジュールのメソッドである。 正式には cla…

特異メソッド・特異クラス

クラスメソッド定義方法 ①特異メソッド方式 class Dog def sef.voice p " wan " end end ②特異クラス方式 class Dog class<

オブジェクトのprivateメソッド

p , print , putsはObjectクラスのPrivateなメソッド。 よってクラスを定義した時に、Object,Kernel,BasicObjectが継承関係に取り込まれ、レシーバが省略される。 Object.private_methods.grep(/p/) => [:public, :protected, :private, :initialize_copy, :…

モジュール基礎の基礎

①ミックスイン(include) クラスでモジュールをincludeするとモジュールで定義したメソッドが、インスタンスメソッドとして使える。 module Beep def boo puts "boo" end end class Car include Beep end class Plane include Beep end car = Car.new car.boo…

git remote先を変更したい時

どのくらいの頻度でリモート先を変える事があるか分からないが、butibucketとgithubにリポジトリが存在し、push先を変更したい時には、 1.現在のリモート先を確認 git remote -v 2.新しいリポジトリurlへ変更 git remote set-url origin {new~url} 3.変更確…