• RubyのブロックオブジェクトProcの詳細解説

    Proc オブジェクト Procは、ブロックから変換されるオブジェクトである。Procを作成する方法は、以下の4つです。 コード例 # Method 1 inc = Proc.new { | x | x + 1} inc.call(2) #=> 3 # method 2 inc = lambda {| x | x + 1 } inc.call(2) #=> 3

    2022-01-30 16:34:55
  • Rubyのinstance_evalメソッドとclass_evalとの比較

    instance_eval メソッド このBasicObject#instance_evalはJSのbindメソッドと少し似ていますが、bindはこれをオブジェクトに渡すのに対し、instance_evalは指定したオブジェクトにコードブロック(Context Probe)を、一つはオブジェクトに、一つは実行ファイルに渡しています。こうすることで、instance_evalのコードブロ

    2022-01-30 15:59:30
  • Rubyのgemパッケージ管理およびgemソース構築のチュートリアル

    RubyGemsを使いこなすために RubyGemsはRubyのプラグイン管理システムで、Rubyのライブラリのインストールや管理を簡単に行うことができます。すべてのオープンソースパッケージはRubyGems上で見つけることができます。 ### 共通ディレクティブ gem -v RubyGemsのバージョンを表示します。 gem update --system Ru

    2022-01-30 10:02:17
  • RubyのProcクラスとProc.newメソッドの使用法

    Procは、ブロックとそのコンテキスト(ローカル変数のスコープとスタックフレーム)をオブジェクト化して得られるプロシージャオブジェクトです。Proc は名前のない関数のように使用できますが、ローカル変数のスコープをインポートしません(動的ローカル変数を Proc のローカル変数として使用することは可能です)。 次の例では、Proc が常にローカル変数のスコープを維持しているため、まさに v

    2022-01-30 08:45:50
  • Rubyブロックチュートリアル

    1. ブロックとは Rubyでは、{}やdo.の間にあるコードは、"Ruby "と呼ばれます。.end の間にあるコードがブロックです。コードブロックは、メソッドの最後の引数の直後の同じ行のメソッドの後にのみ表示でき、yield キーワードによって呼び出されます。例を挙げます。 [1,2,3,4,5].each { |i| puts i } [1,2,3,4,5].each do

    2022-01-30 08:17:20
  • アプレットを置き換えるHTMLスクリプトを記述するRubyの例

    次のような内容のファイルがたくさんある場合。 <p style="display:none">Choose D for this question. .... .... .... </p> そして、実現したいのは、それを置き換えることです。 <div style="display:none" class="sl_explain"> Cho

    2022-01-30 07:22:36
  • Windowsでrubyとrailsをインストールする際に発生する問題点まとめ

    前書き Webで検索してみると、手順は似ているのですが、実際にインストールする際にいろいろと問題が発生しました。 図解すると 記事は、私が試した処理の説明です。ただ、最終的にはrailsinstallerのワンクリックインストーラを実行することでうまくいったので(5段落目)、前の部分を見てもいいですが、試さないようにしましょう。 ここで、その詳細を見てみましょ

    2022-01-16 09:38:25
  • RubyのHash構造体の基本操作のまとめ

    ハッシュについて まず、Hashの基本的な考え方を理解することから始めましょう:。 格納するオブジェクトの数をnumとすると、len個のメモリを使って格納します(len>=num)。各オブジェクトのキーワードkiを独立変数として、kiのメモリアドレス、つまりkiの添え字をマッピングする関数h(ki)を使うと、kiオブジェクトの要素の中身はすべてこのアドレスに格納されることになるのです。こ

    2022-01-16 06:09:28
  • Rubyの並列処理とグローバルロック

    前置き この記事は主にrubyの並列処理とグローバルロックに関する内容を紹介し、参考と学習のために共有しています。 並行処理と並列処理 開発現場では、「並行処理」と「並列処理」という2つの概念をよく目にしますが、並行処理と並列処理について書かれたもののほとんどに、あることが書かれています。では、この言葉をどう理解すればよいのでしょうか。 同時並行です。シェフが2人の顧客から同時に2つの注文

    2022-01-16 04:50:45
  • Ruby on RailsのWebプロジェクト構築のためのシンプルガイド

    Railsプロジェクトの作成 通常のRailsプロジェクトを作成するには、以下のコマンドを実行するだけです。 rails new blog しかし、中国ではRubyGemsへの接続が非常に遅く、Railsはプロジェクト構造を構築した後、デフォルトでbundleコマンドを使用してRubyGemsから依存関係をダウンロードしてインストールするため、RubyGemsへの接続が

    2022-01-16 04:28:51
  • Rubyを使ったラムダ計算の詳しいシミュレーション方法

    プリアンブル 最近、「計算の本質」という本を読んだのですが、主に計算の根底にある部分について書かれています。そして、今日、Y字結合器を使って再帰を実装できることを知り、私の世界観は基本的に崩壊しました。そこで、この機会に、計算の基本的な理解をまとめておこうと思い、記事を書きました。そうすることで、より良い学習ができるようになりました。また、Rubyの構文を使ってLambdaの話をいくつか説明する

    2022-01-08 22:39:26
  • MacとLinuxでのruby+rails環境の構築

    Macには通常1つのバージョンのruby環境が付属しており、たとえば私の場合は2.0.0です。そうでない場合は、rvmを使ってrubyのバージョンをインストールし、管理する方法を紹介します。 rvmのインストール(公式サイト参照) http://www.rvm.io/ ) 最初のステップは必要ない場合があります 最初のステップ コピーコード コー

    2022-01-08 19:41:08
  • Rubyのオブジェクト指向プログラミングでクラスとメソッドの基本を学ぶ

    オープニングクラスとモンキーパッチ Rubyでは、クラスで定義されたメソッドとそれ以外の文に違いはなく、すべて一行ずつ実行されます。次のような例です。 class Example def method_1 puts "method 1" end end class Example def method_2 puts "method 2" end end

    2022-01-08 17:57:54
  • Ruby Hash ハッシュ型 基本操作のメソッド一覧 まとめ

    1. ハッシュを作成します。 配列を作るのと同じように、Hashクラスを使ってHashのインスタンスを作ることができます。 h1 = Hash.new #default to nil h2 = Hash.new("This is my first hash instance") # defaults to " This is my first hash instance": 上の例はいずれも

    2022-01-08 12:39:40
  • MongoDBに接続するためのRuby on Railsフレームワークアプリケーション チュートリアル

    前項では、mongodbのインストールとrorプロジェクトのビルドを説明しましたが、今度はちょっとしたインテグレーションです。 1. プロジェクトの作成 プロジェクト作成で rails の active_record サポートを使用しないようにしました。 rails new todo -O 2. MongoMapperを使ってMongoDBをRailsで動かすこ

    2022-01-08 11:21:17
  • Rubyのシングルトンメソッドとシングルトンクラス

    シングルトン・メソッド Rubyでは、1つのオブジェクトにメソッドを追加することができ、このような1つのオブジェクトに対してのみ動作するメソッドをシングルピースメソッドと呼びます コード例 str = "just a regular string" def str.title? self.upcase == self end str.title? # =>

    2022-01-08 10:46:32
  • win10でvirtualbox+vagrantでrubyの開発マシン環境を構築する

    この記事を書く前に、カイリンをインストールするためにwmware仮想マシンなど他の代替手段をたくさん試しましたが、常に問題があることに気づきました。設定もとても簡単だと思いました。次にこのことについて詳しく説明します。  (注:著者自身のサーバー構成はcentos7.2 + ruby2.3.4 + mariadb + redis、win10用の独自のラップトップ、さらに、多くのオンライ

    2022-01-08 04:24:48
  • UbuntuでRuby on RailsフレームワークとRubyMine IDEを設定する

    開発フェーズの準備 virtualboxのインストールプロセスでは、ある理由から多くのポットホールが作られます。 落とし穴1. ターミナルについては、必ずランチャーで開き 仮想マシンをインストールし、システムに入った後、最初の落とし穴であるターミナル・ソフトウェアに遭遇しますが、ターミナルを開くにはブートローダを使用することが推奨されます。 ファイルマネージャーでフォルダを入力し、右クリ

    2022-01-08 01:10:59
  • bundlerを使ったRuby環境のインストールと複数バージョンのgemの管理

    rbenvでruby環境の複数のバージョンを管理するために、我々はまた、gemの複数のバージョンを管理できるツール(例えばレール)が必要で、それがバンドルされている、プロジェクトの背景が詳細ではありませんが、公式サイトに直接知っておく必要がありますhttp://bundler.io/,这里只讲一些实际使用经验。 インストール gem install bundler

    2022-01-04 23:42:16
  • モンキーパッチのプログラミングスタイルとRubyでの利用について

    モンキーパッチとは?動的言語において、ソースコードに手を加えることなく、機能の追加や変更を行うこと。 モンキーパッチを使用する目的 1. 追加機能 2、機能変更 3、プログラムエラーの修正 4. ログの出力、AOPの実装など、メソッド実行中に何らかの処理を行うフックを追加する。 5.キャッシュ、大量の計算の場合、決済後の結果を繰り返し利用できるため、計算終了後

    2022-01-04 21:14:29