Ruby

 Computer >> コンピューター >  >> プログラミング >> Ruby
  1. Rubyテンプレートエンジン徹底解説:ERB・HAML・Slimの違いと使い方

    ERBは、Rubyを代表するテンプレートエンジンのひとつです。 テンプレートエンジンを使うと、HTMLの中にRubyのコードを混在させて記述できるため、データベースから取得したデータをもとにWebページを動的に生成できます。 ERBは、Railsでビューをレンダリングする際のデフォルトのエンジンです。 補足:Railsでは、Ruby標準ライブラリのERBクラスではなく、erubiという実装が使われています。 この記事の後半で解説しますが、ERBはRailsがなくても単体で利用できます。 その前に、まずはERBの基本構文、Rubyプロジェクトでの使い方、そしてHAMLなど他のテンプレート

  2. Ruby 2.6の新機能9選|コード例でわかる注目ポイントを徹底解説

    Ruby 2.6には、開発者の生産性を高める新しい機能やパフォーマンス改善が多数盛り込まれています。 本記事では、Ruby 2.6で導入された9つの注目新機能を、実際のコード例とともにわかりやすく紹介します。最新のRuby動向をキャッチアップしたい方は、ぜひ最後までご覧ください。 1. 無限Range(Endless Range) Ruby 2.5以前でもFloat::INFINITYを使えば終端のない範囲を表現できましたが、Ruby 2.6ではさらに直感的な記法が使えるようになりました。 新しい無限Rangeは次のように書きます。 (1..) 通常のRangeが(1..10)のように終端

  3. Rubyのエイリアス(別名定義)完全ガイド:aliasキーワードとalias_methodの違い

    Rubyでは、既存のメソッドに別名(エイリアス)を付ける方法が2つあります。 alias(キーワード) alias_method(メソッド) どちらも同じ目的で使えますが、挙動が微妙に異なるため、初心者にとって混乱しやすいトピックです。 本記事では、両者の違いを詳しく掘り下げ、しっかりと理解できるように解説していきます。 aliasキーワードとは まずはaliasから見ていきましょう。aliasはRubyのキーワードの一つです(ifやdef、classなどと同じ扱いです)。 基本的な書き方は以下の通りです。 alias print_something puts print_someth

  4. Ruby 2.6のMJITとは?仕組みとパフォーマンスを徹底解説

    Rubyのパフォーマンスは、バージョンが上がるごとに大きく向上してきました。そしてRuby開発チームは、さらに速いRubyを実現するために全力を尽くしています。 その取り組みのひとつが「3×3プロジェクト」です。 その目標とは? Ruby 3.0を、Ruby 2.0の3倍速くすることです。 このプロジェクトの一環として誕生したのが、新しいMJITコンパイラです。これが本記事のテーマとなります。 MJITとは何か MJITは「Method Based Just-in-Time Compiler(メソッドベースのジャストインタイムコンパイラ)」の略称です。 これは具体的にどういう意味でしょうか?

  5. Rubyのdupとcloneの違いを徹底解説!オブジェクト複製の基礎知識

    Rubyではオブジェクトをコピーできることをご存じでしょうか?しかも、コピー用のメソッドは2種類用意されています。 そのメソッドとは: dup clone それぞれの違いについては後ほど詳しく見ていきますが、まず最初に… そもそもなぜオブジェクトをクローンする必要があるのでしょうか? Rubyの多くのオブジェクトはミュータブル(変更可能)です。つまり、作成した後に内容を書き換えることができます。 元のオブジェクトはそのまま保持しつつ、内容を変更したい場合には、クローン(複製)を作成するのが有効です。 具体例を挙げてみましょう。 「先頭以外のすべての要素を含む配列」が欲しい場面を想定します。

  6. Rubyでヒアドキュメントを使う方法|基本構文から式展開・波ヒアドキュメントまで徹底解説

    ヒアドキュメントとは? ヒアドキュメント(heredoc)とは、元のインデントやフォーマットを維持したまま、複数行の文字列を定義するための記法です。 SQLやHTMLといったコードの断片をプログラム内に埋め込む際によく活用されます。 以下は具体的な例です: query = <<-SQL SELECT * FROM food WHERE healthy = true SQL この構文を使うことで、Rubyでヒアドキュメントを定義できます。 書き方はシンプルです。まず <<- という記号に続き、ヒアドキュメントの名前となる識別子(ここでは SQL)を指定します。次の行からが文字列の

  7. 【Ruby入門】外部コマンドを実行する4つの方法!system・%x・fork+exec・popenの使い分けを徹底解説

    Rubyプログラムから外部コマンドを実行したい場面はよくあります。例えば、HTMLファイルをPDFに変換できるwkhtmltopdfのようなツールを利用したいケースなどが典型です。 Rubyには外部コマンドを実行するためのメソッドがいくつか用意されていますが、どのメソッドを選ぶかによって挙動や結果が大きく異なります。 この記事では、それぞれの方法の特徴と使い方を詳しく解説していきます。 systemメソッド ― 最もシンプルな実行方法 systemメソッドは、Rubyから外部コマンドを実行する最もシンプルな方法です。 基本的な使い方はこちら: system(ls) systemメソッドには、主

  8. AASM Gemで学ぶRubyステートマシン入門|Stateデザインパターンから実践的な使い方まで

    今回は、ステートマシン(状態遷移マシン)の仕組みと、RubyプロジェクトでAASM gemを使ってステートマシンを活用する方法を解説します。 まずは身近な例から考えてみましょう。 信号機を想像してください。信号機は「赤」「黄」「青」のいずれかの状態を取ります。 そして、色が変わるとき、次に何色になるかは現在の色によって決まっています。 ここでは、視覚障害のある方が渡れるタイミングを音で知らせるタイプの信号機だとしましょう。 さて、ここからが本題です。 あなたがこの信号機のソフトウェアを開発することになったとします。 毎回どの音を鳴らすべきか、次はどの色に変わるべきか——それをどう判断すればよ

  9. RubyのREPLとは?IRB・Pryの使い方を徹底解説

    REPLとは「Read-Eval-Print-Loop(読み込み・評価・出力・ループ)」の略称で、Rubyのコードを入力すると、その実行結果をその場で確認できる対話型プログラムのことです。 Rubyで人気のあるREPLにはirbやpryなどがあります。 これらのツールを使えば、Rubyコードの動作を素早くテストできるのが大きな魅力です。 たとえば、文字列の配列を整数の配列に変換したい場面を考えてみましょう。 「どうやって書くんだっけ?」と正確な方法を思い出せないことは、誰にでもありますよね。 そんなときは調べて(調べるのはまったく問題ありません!)、REPLで実際に試しながら、思い通りの動作に

  10. VCR Gem × WebMockでRubyのテストスイートを高速化する方法

    Rubyアプリケーションが外部APIを利用しているなら、テストが遅い・APIのレート制限に引っかかるといった問題に直面したことがあるのではないでしょうか。 解決策は何があるでしょう? クライアントライブラリのHTTPメソッドを手動でスタブ化し、事前に用意したレスポンスを返す方法もあります。 しかし、これは手間がかかる上に、コードも読みにくくなってしまいます。 より良い解決策は、WebMock + VCRという強力なGemの組み合わせを使うことです。 WebMockは、主要なHTTPライブラリからのHTTPリクエストを横取り(インターセプト)します。対応しているのは例えば: net/http

  11. MiniMagick入門:Rubyで画像を変換・リサイズ・切り抜きする方法

    Rubyアプリケーションで画像を扱っていると、何らかの形で画像を加工したくなる場面は多いはずです。 たとえば、ファイルサイズを小さくしてストレージを節約し、ユーザーのダウンロード時間を短縮するためのリサイズなどが代表例です。 では、どうやって実現すればよいのでしょうか? その答えとなるのがMiniMagickというgemです。 MiniMagickは、強力な画像処理ツール「ImageMagick」とRubyコードをつなぐインターフェースであり、リサイズや回転、切り抜きなど、多彩な変換処理をRubyのメソッドとして直感的に扱えます。 事前準備:ImageMagickのインストール まず最初に、お

  12. Rubyでコマンドラインアプリケーション(CLI)を作る方法を徹底解説

    RubyはWebアプリケーション開発のイメージが強く、それ以外の用途があることを忘れられがちです。そこで本記事では、Rubyを使ってコマンドラインアプリケーション(CLI)を構築する方法を詳しく解説します。 まず、皆さんがよく目にするコマンドラインアプリケーションの例を挙げてみましょう。 psql(PostgreSQLの対話型ターミナル) rails bundler gem git CLIアプリケーションの作り方はさまざまですが、この記事では代表的な3つの方法に焦点を当てて紹介します。 この記事で学べること ARGV配列の使い方 OptParseライブラリの使い方 Thor gemの使い

  13. 【Ruby入門】自分自身を説明できるオブジェクトの作り方 ― to_sとinspectメソッドの使い方

    この記事では、Rubyの inspect メソッドの仕組みと、その用途について詳しく解説します。 文字列や配列を表示すると、その中身がそのまま出力されます。 例: puts [1,2,3] 1 2 3 しかし、自作したクラスのオブジェクトを表示しようとすると… 次のような出力になります: #<Cat:0x29458e0> なぜでしょうか? それは、Rubyに対して「このクラスをどう表示すれば分かりやすいか」をまだ教えていないからです。 to_s のようなメソッドを定義すれば、この表示は自由に変更できます。 それでは、具体的なやり方を見ていきましょう!

  14. Rubyのマトリックス(行列)とは?配列・Matrixクラス・Daruを使いこなす完全ガイド

    マトリックス(行列)とは、表計算ソフトのようなデータを格納・操作するための2次元(2D)配列のことです。 マトリックスが活躍する場面: チェスやオセロなど、テーブルゲームの盤面を表現する 統計処理やデータ分析を行う グラフやプロットを生成する マトリックスは非常に強力なデータ構造なので、その使い方をマスターしておくと開発の幅が大きく広がります。この記事では、Rubyでマトリックスを扱う3つの方法——配列、Matrixクラス、そしてDaru gem——を順番に解説していきます。 Rubyでマトリックスを作成する方法 最もシンプルな方法は、配列の入れ子(ネスト)を使ってマトリックスを作ることで

  15. Rubyで学ぶ実用数学:モジュロ演算子、進数変換、ビットマスクの基礎

    優れたプログラマーになるためには、数学の知識が必要なのでしょうか? 答えは「場合によります」。 もし日々CRUDアプリの作成だけを行うのであれば、数学の知識はほとんど必要ないかもしれません。しかし、もっと面白いことに挑戦したい方——例えばコーディングチャレンジに取り組んだり、プログラミング面接に備えたりしたい方にとっては、いくつかの基本的な概念を身につけておくことが大きな助けになります。 この記事で学べる内容: モジュロ演算子(%) 記数法(数体系) ビットマスキング これらの概念をRubyでどう活用するかを解説する、実践的なガイドです。それでは始めましょう! Rubyのモジュロ演算子(%

  16. Rubyのinitializeメソッドとは?newとの関係や正しい使い方を徹底解説

    Rubyのinitializeメソッドは、オブジェクト生成プロセスの一部であり、オブジェクトの初期値を設定するための重要な仕組みです。 他のプログラミング言語では、これに相当するものを「コンストラクタ」と呼びます。 具体例を見てみましょう: Pointというクラスがあり、この点(ポイント)にはxとyの2つの座標が必要だとします。では、これらの値をどのようにしてオブジェクトに渡せばよいのでしょうか? 答えはこうです: Point.new(10, 20) newメソッドは、RubyにおいてPointクラスをはじめとする任意のクラスから新しいオブジェクトを生成するためのメソッドです。 newとini

  17. dry-rbとは?Ruby開発に役立つ注目のGemコレクション徹底解説

    新しい面白いgemを試してみたいと思いませんか? そんな方におすすめしたいのがdry-rbです。これは一般的な問題への解決策を提供するgemのコレクションで、18以上のRuby gemで構成されています。それぞれのgemは組み合わせて使うことも、単体で使うことも可能です。 代表的なgemには以下のようなものがあります: dry-initializer dry-struct dry-validations dry-events dry-transaction この記事では、その中から3つのgemをピックアップして紹介し、dry-rbが持つ可能性の一端を体験していただきます! dry-str

  18. Rubyのコメントは5種類ある!それぞれの書き方と正しい使い方

    Rubyのコメントとは? Rubyにおけるコメントとは、コードに補足情報を加えるためのもので、将来の自分や他の開発者にとって役立つメモとして機能します。 最もよく使われるのが「1行コメント」です。 基本の書き方はこちら: # りんごとオレンジが好き 押さえておきたい3つのポイント: コメントはシャープ記号(#)から始まる 読みやすさのため、#の後ろに半角スペースを1つ入れるのが一般的 コメント内の内容は、コードのように見えても一切実行されない。これを利用すれば、コードを一時的に無効化する「コメントアウト」も可能 1行コメントは単独で使うこともできますし、コード行の末尾に続けて書く「イン

  19. Ruby開発に最適なIDE・エディタはどれ?人気エディタを徹底比較

    開発者としての時間の大半はエディタ上で過ごすことになります。だからこそ、自分が快適に使えて、生産性を高めてくれるエディタを選ぶことがとても重要です。 この記事では、自分に合ったRuby IDE/エディタの選び方を解説します。 この決断で悩みすぎる必要はありません。まずは1つ選んで数週間使ってみて、使い心地を確かめましょう。後から乗り換えることもいつでもできます。 エディタ選びでチェックしたいポイント Ruby関連のプラグインが充実しているか オープンソースかどうか 生産性を高める標準機能があるか(コードスニペット、自動補完、邪魔にならないシンプルなデザインなど) 以下で紹介するエディタは、

  20. Rubyの入出力(IO)完全ガイド:ファイルディスクリプタから標準ストリームまで徹底解説

    「I/O」とは「Input/Output(入出力)」の略称です。 入力とは、コンピュータ、Rubyメソッド、さらには人間の脳といった対象に取り込まれる、あらゆるデータや情報のことを指します。 入力の例 キーボードで押下するキー マウスのクリック 読んでいる本 一方、出力とは入力の結果として外に出てくるものすべてです。 出力の例 1 + 1 の計算結果 読んだ記事の要約文 淹れたコーヒー Rubyにおいて「I/O」と言う場合、通常はファイルの読み書き、ネットワークソケットの操作、画面への情報表示を指します。 IOクラスを理解する Rubyでは IO もまたクラスの一つであり、File や

Total 621 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:22/32  20-コンピューター/Page Goto:1 16 17 18 19 20 21 22 23 24 25 26 27 28