blog.waterlow.work

Ruby, Rails, js, etc...

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

これからやろうとしていることリスト

*** Rubyの絵本を読む Rubyの絵本作者: アンク出版社/メーカー: 翔泳社発売日: 2008/09/04メディア: 大型本購入: 1人 クリック: 18回この商品を含むブログ (12件) を見る この間とある勉強会で紹介されました。 確かにこの手の本は今まで避けてました。せっ…

LPICレベル1を取ってきました

なんとか5月中にLPICレベル1を取得することができました。 黒い本と茶色い本を使って対策しました。 Linux教科書 LPICレベル1 第5版作者: 中島能和,濱野賢一朗出版社/メーカー: 翔泳社発売日: 2012/09/19メディア: 単行本(ソフトカバー) クリック: 5回こ…

【Ruby】Goldリベンジ今度こそ3-Module復習

モジュールの役割は 名前空間 インスタンスメソッドの提供 特異メソッドの提供 モジュール関数の定義 の4つ。クラスとの違いは インスタンス作れない 継承できない の2つ。 サンプルコードです。 module M A = 1 end module N A = 2 end p M.class # Modul…

【Ruby】Goldリベンジ今度こそ2

可変長引数のプリント またひとつ間違いがありました。可変長引数のメソッド内部での受け取り方について。 def foo(*aaa) p *aaa #=>[1, 2, 3] end foo [1, 2, 3] #=>[1, 2, 3] 可変長引数の場合、引数の受け皿としてブランクな配列があるイメージでしょうか…

【Ruby】Goldリベンジ今度こそ

【Ruby】Goldリベンジならず…。 - ITの勉強をいろいろやってみたブログ 引き続きruby goldの復習です。 autoloadの読み込むタイミング requireは1回しか読み込まない、拡張子省略、バイナリOKでloadはその逆でした。じゃあautoloadはどうなるのか?ってとこ…

【Ruby】Goldリベンジならず…。

再び落ちてしまいました。 前回はひさびさの不合格で何ができなかったとか全く覚えていませんが、今回は迷った問題をメモしておいて結果が出た後暗記するという作業をしました…。なので今回の不合格は次の合格への糧になるはずです!点数:72点いろんな人の…

【Ruby】Goldリベンジするぞ-メタプロ番外編フックメソッド

フックメソッド。初めて聞きました。 サンプルサンプル〜 class String def self.inherited(subclass) puts "#{self}→#{subclass}" end end class MyClass < String; end #=>String→MyClass このサンプルのinheritedのように特定のイベントをキャッチしてそ…

【Ruby】Goldリベンジするぞ-メタプロRuby4.1クラス定義2、番外編

インスタンス変数を宣言するとその変数はselfの指すオブジェクトに属する。これも例外はない。 もし、selfがあるクラスを指していた場合、それはクラスインスタンス変数というものになる。 class Loan def initialize(book) @book = book @time = Loan.time_…

【Ruby】Goldリベンジするぞ-メタプロRuby4.1クラス定義

メタプロRubyをしっかり読んで理解していこうと思います。 メタプログラミングRuby作者: Paolo Perrotta,角征典出版社/メーカー: KADOKAWA/アスキー・メディアワークス発売日: 2010/08/28メディア: 大型本購入: 18人 クリック: 533回この商品を含むブログ (1…

LPIC 101受かった&Ruby Gold落ちた><

結果記入しつつ振り返りを…。 LPIC 101→550/800(500以上合格) Ruby Gold→62/100(75以上合格)どちらの試験もテキストを網羅できていたわけではなく、模擬試験やネットに上がっている問題を解いただけだったのでこんな結果です。テキスト1冊覚えるくらいの勢い…

【Ruby】Gold試験対策-できなかった問題2

説明を何もせずに前回の記事を書いてしまいました。 【Ruby】Gold試験対策-できなかった問題 - ITの勉強をいろいろやってみたブログ いまやっているのはRuby Programer Goldの模擬問題です。本試験でできなかった問題ではありません。今日は1問だけ…。 以下…

【Ruby】Gold試験対策-できなかった問題

以下の出力結果になるような選択肢 [1,2,3].__(1)__ #=> 6 1.sum 2.inject(0){|sum, i| sum * i } 3.inject(0){|sum, i| sum + i } 4.add RubyのSilverの流れだとsumとかaddとかいう便利なメソッドがあるんではないかなんて思ってしまうわけですが、…

【Ruby】Gold試験対策-メタプログラミングRuby

メタプログラミングRubyを借りてきました。 お友達に感謝感謝。しっかり身につけて還元しようと思います。 メタプログラミングRuby作者: Paolo Perrotta,角征典出版社/メーカー: KADOKAWA/アスキー・メディアワークス発売日: 2010/08/28メディア: 大型本購入…

【Ruby】Gold試験対策-組み込み変数/定数、正規表現、MatchDataについて不満

Rury技術者認定では組み込み変数や定数を問うような問題も数問出されます。公式資格教科書はあんまり親切な書き方はしてなかったし、パーフェクトRubyにも詳しく書いてなかったのでRubyでは非推奨なのでしょうか? 組み込み変数とは? →グローバル変数であら…

【Ruby】Gold試験対策-ライブラリ-日付・日時

問題で出てきた以下のソース。 require "date" d1 = DateTime.now d2 = DateTime.now p (d2 - d1).class #=> Rational # 小さな分数が出る。 Date、DateTimeクラスは日付までを整数で、それ以下は分数で保持している。そのため計算すると分数が出力される。…

【Ruby】【番外編】せかいや…?

以前こんな記事をお気に入りに追加しました。 クックパッド「とりあえずこれ読んどきなさい」と言われた本5冊 - せかいや たまたま今日このブログを見てたのですが、会社をやめたとのこと… クックパッドに入社しました&クックパッド辞めます&エンジニア辞…

【Ruby】GWのまとめ

GWはRubyの本ばかり読んでいました。時系列順で振り返ります。5/2→Ruby技術者認定silver取得、メタプログラミングの勉強開始 5/3→メタプログラミングの勉強 5/4→メタプログラミングの勉強 5/5→メタプログラミングの勉強、RubyGold対策 5/6→Ruby技術者認定Gol…

【Ruby】Gold試験対策-ライブラリ

Rubyには数学的な計算をするために便利なライブラリが揃っている。 Complex、Rational 複素数体、有理数体を表す。演算の時は集合として大きな方に合わせる。たとえばこんな感じ。 a = Rational(1,2) + 0.1 p a.class #=> Float a += Complex(1,1) p a.class…

【Ruby】Gold試験対策-大域脱出

引き続きGoldの試験対策です。太字は今日やるところで、1重線はすでにやったところ。実行環境 →コマンドラインオプション、組み込み変数/定数文法 →変数と定数、演算子、ブロック、例外処理、大域脱出オブジェクト指向 →メソッドの詳細、メソッドの可視性、…

【Ruby】Gold試験対策-例外処理

パーフェクトRubyを読み進めていたのですが、メタプロの理解は少し時間がかかりそうなので平行してGoldの試験対策をしていきます。Rubyアソシエーションによると出題範囲は以下のようになっています。出題範囲のところだけ勉強して模擬問題に取り組んでみま…

【Ruby】Methodクラス

前回の復習 Procクラスとは? →メソッドに渡すときに使うブロックとほぼ同義。メソッドにブロックを複数渡したいときは引数にProcオブジェクトを渡してしまえばOK。 9-1 Methodオブジェクト なんだそれ? →Procオブジェクト同様メソッドもオブジェクトとして…

【Ruby】メソッドに複数ブロックを渡す。1

前回の復習 動的プログラミングとは →Rubyにはすでに定義されているクラス定義や、クラス定義に含まれるメソッド定義をプログラム実行時に変更することができる。同名のクラスの定義式をもう一度書くことによってクラスがオープンされ、自然な形でメソッドの…

【Ruby】動的プログラミング3

前回の復習 method_missingとは? →呼び出したメソッドが存在しない時に実行されるメソッド。例外が呼び出される。通常はBasicObjectクラスで実装されているがオーバーライドすることで振る舞いを変えられる。クラスの継承の中で親クラスがオーバーライドし…

動的プログラミング2

前回の復習 オープンクラスとは? →オープンなクラスというわけではない!クラスをオープンして拡張しようというニュアンス。通常のクラス定義と同じ書き方で新しいメソッドを定義できる。 7-2 BasicObject#method_missing なんだそれ? →NoMethodError例外…

【Ruby】動的プログラミング1

前回のまとめ Rubyのクラスオブジェクトとは? →クラスを定義するということはClassクラスのインスタンスを作るということ。 インスタンスなのでできることはメソッドを実行するだけ。メソッドの定義も親クラスのメソッドを実行しているだけ。この辺は要復習…

【Ruby】クラスを作るということ4

パーフェクトRubyのメタプロの部分を読んでいます。 前回のまとめ 特異クラスとは? →あるオブジェクトに特異メソッドを付け加えたいときにそのメソッド定義が書かれるオブジェクト専用のクラス。(メソッド定義は必ずクラス定義内に書かれる必要がある。) 6-…

【Ruby】クラスを作るということ3

パーフェクトRubyのメタプロの部分を読んでいます。 パーフェクトRuby (PERFECT SERIES 6)作者: Rubyサポーターズ,すがわらまさのり,寺田玄太郎,三村益隆,近藤宇智朗,橋立友宏,関口亮一出版社/メーカー: 技術評論社発売日: 2013/08/10メディア: 大型本この商…

【Ruby】クラスを作るということ2

前回のまとめ Rubyにおけるクラスとは? →インスタンスである。詳しく言えばClassクラスのインスタンス。 クラスとクラス定義を混同しない。 6-2クラスオブジェクト クラスオブジェクトとは上に書いたことそのままだけど、言い方を変えれば"クラス"という名…

【Ruby】クラスを作るということ

パーフェクトRubyのメタプロの部分を読んでみます。 パーフェクトRuby (PERFECT SERIES 6)作者: Rubyサポーターズ,すがわらまさのり,寺田玄太郎,三村益隆,近藤宇智朗,橋立友宏,関口亮一出版社/メーカー: 技術評論社発売日: 2013/08/10メディア: 大型本この商…

Ruby技術者認定試験Silver取得しました!

ゴールデンウィークうぇるかむです。 昨日の朝、以前から目標として掲げていたRuby技術者認定のSilverを取得してきました! 参考:【資格】5月までに取りたい資格たち - ITの勉強をいろいろやってみたブログ *** 学習方法 使用したものは書籍「RUBY技術者認定…