タグ

tipsとrubyに関するni66lingのブックマーク (10)

  • ここまで出来る!RubyのSplat Operatorまとめ - RailsとRubyとVimのブログ

    Splat Operatorとは、*のことです この前、友人コードレビューしてもらっていたら 「え、Rubyってこんな書き方出来るんですか?」と言われて、「知らない人もいるんだなぁ」と思ったので簡単なまとめ Splat Operatorの色んな使い方 Splat Operatorは、応用の幅が広いです。 結構当たり前だと思っていましたが、コード読書しないと見る機会は少ないかも。 1-1. 配列に変換する まずは基編。配列に変換してやりましょう 文字列やsymbolは.to_aが無いですが、*を使えばどの変数でも配列に出来ちゃいます。 string = *"string" p string #=> ["string"] symbol = *:symbol p symbol #=> [:symbol] hash = *{ hash: nil } p hash #=> [[:hash, ni

    ここまで出来る!RubyのSplat Operatorまとめ - RailsとRubyとVimのブログ
  • Hashの初期値に配列を与える - Qiita

    h = Hash.new { |h,k| h[k] = [] } p h # {} p h[:hoge] # [] h[:hoge] << "fuga" p h # { :hoge => ["fuga"] }

    Hashの初期値に配列を与える - Qiita
  • RubyのSymbol#to_procを考えた人になってみる

    Rubyのメソッドはブロックを取れる。ブロックはコードの塊だから、その内容に応じてメソッドの挙動を大きく変化させることができるんだ。 例えば、injectメソッドはリストタイプのオブジェクトに対して、たたみこみ演算を実行するものだけれど、これに加算を行うコードブロックを渡せばinjectメソッドはたたみこみ加算器となり、

  • [ruby] Bundler4つの便利な使い方(初期化、インストール、省略する設定など) – アプレンティス プラクティス

    RubyRails)での開発にあたり、開発環境(エディタやツールなど)の調査や試用をしていました!! その中で、パッケージ管理ツールのBundlerのサブコマンドやオプションでこれはいいと思ったものについてまとめてみたいと思います。間違いなどあればご指摘お願いいたいします。 前提としてRubyは rbenv,ruby-build でビルドした環境です。 まず、Bundlerとは Rubyのパッケージを管理するもの。 Gemfileというファイルにパッケージ名、バージョンを記述してgemのライブラリを管理出来ます。また、グループ化などもでき、環境に応じてgemを管理することができます。 次から3つの便利な使い方です。 その1 初期化コマンド とても簡単で、initサブコマンドを実行するだけです。 このコマンドを実行したら、以下の内容で「Gemfile」のデフォルトファイルが生成されます。

  • Gemfileについて調べてみた - xxxcaqui.log

    Gemfileについてよくわかってなかったので調べてみた。 そもそもGemfileって? Bundler用の設定ファイル。 BundlerはGemfileの記述にしたがって、gemの依存関係を示したGemfile.lockを生成する。 じゃあ、Bundlerって何さ? アプリケーションで使用するgemのバージョン管理を行うプログラム。 「お前が書いたコード動かないんだけど?」 「ハァ? 俺の環境では動いてるし。バージョン違うんじゃねーの? 死ねよ」 ってならないためのツール。 Railsをはじめ、SinatraやRubyMotionでも使われている。*1 ちなみに、Bundlerの公式サイトにはこう書いてある。 The best way to manage your application's dependencies ベストらしいので使わない手はない。 source gemが置いてある場

    Gemfileについて調べてみた - xxxcaqui.log
  • kuroigamen.com

    This domain may be for sale!

  • Rubyで "&" を使うと幸せになれるらしいよ (*´Д`)ノ - (゚∀゚)o彡 sasata299's blog

    2010年02月03日21:31 Ruby Rubyで "&" を使うと幸せになれるらしいよ (*´Д`)ノ なんか似たようなタイトルを見たことあるな…まぁいいか。 Perlで+を使うと幸せになれるよ (*´Д`)ノ - (゚∀゚)o彡 sasata299's blog ブロック処理 ( do...end もしくは {...} ) の例としてはこのような3種類があります。 #1 ブロックの中に直接処理を書く方法 #2 ブロックの中でやらせたい処理の Proc オブジェクトを呼び出す方法 #3 ブロックを使わずに Proc オブジェクトに & を付けて渡してあげる方法 3つとも全く同じ処理です。#3 みたいに書く事も出来るんですね〜。& が Proc オブジェクトをブロックに変換してくれます。 #1 3.times do puts 'hogehoge' end proc = Proc.new

  • ググるよりもまずはpry - Qiita

    Rubyといえば動的型付け言語なので、IDEサポートがほとんど皆無です。 それはしょうがないんですが、やはりIDEサポートはけっこうなアドバンテージに思うわけで。 例えばC#+Visual Studioは素晴らしいです。膨大なBCLも、IntelliSenseがあると結構なんとかなったりします。 もちろんruby環境にも補完機能がないわけではないですが、やはり弱いです。 なのでどうしてもtypo→エラー→ググるというプロセスをよく歩んでしまいます。 そこでpryですよ pryはirb(rubyの標準インタプリタ)の上位版です。 irbで出来ることはpryでも大抵は可能です。 pryにはシンタックスハイライト機能とかもありますが、一番はlsコマンドとcdコマンドです。 例えば適当なstringオブジェクトをlsしてみると "hello pry!"オブジェクトのメソッドが一覧されます。 また、

    ググるよりもまずはpry - Qiita
  • Minituku - a Ruby e-learning system

    メソッドを呼び出す時は正しい順番で引数を指定しないといけません。メソッドの引数が多くなってくると、引数の正しい順番を覚えておいてメソッドを呼び出すのは難しくなります。そのような時に他の言語では仮引数という機能を使うことで、メソッドの引数の順番を覚えておかなくてもよくなります。 Rubyでは仮引数名を指定してメソッド呼出しをする機能をサポートしていません。 ただし、メソッドの引数にハッシュオブジェクトを指定することによって、似たような機能をメソッドに持たせることができます。キーを名前のように使うことによって、キーに指定した引数へ値を渡すことができます。 def cubage(args) # デフォルト値の設定 x = args[:x] || 10 y = args[:y] || 10 h = args[:h] || 10 return x * y * h end p cubage(:h

  • 知って得する21のRubyのトリビアな記法 ~ 21 Trivia Notations you should know in Ruby - hp12c

    ブログを下記に移転しました。デザイン変更により移転先では記事が一層読みやすくなっていますので、よろしければ移動をお願い致します。 知って得する21のRubyのトリビアな記法: melborne.github.com - ちょっとトリビアだけど 知っていると意外と便利なRubyの記法を 21個拾ってみたよ(Ruby1.9限定) 君なら全部知ってるかもしれないけど.. 1. 動的継承 Rubyのクラス継承では < 記号の右辺に クラス定数だけでなくクラスを返す式が書けるよ class Male def laugh; 'Ha ha ha!' end end class Female def laugh; 'Fu fu fu..' end end class Me < [Male, Female][rand 2] end Me.superclass # => Female Me.new.laugh

    知って得する21のRubyのトリビアな記法 ~ 21 Trivia Notations you should know in Ruby - hp12c
  • 1