【Ruby入門】最初はこれだけ!まずは手を動かしたい人のRuby入門
  • facebookページ
  • twitterページ
  • 2017.09.12

    【Ruby入門】最初はこれだけ!まずは手を動かしたい人のRuby入門

    当サイトでは、Rubyに関するさまざまな記事をご用意しています。本記事では、他の記事を読むために必要となる前提知識、複数の記事に共通の基礎知識をまとめました。

    以下のような方を想定しています。

    ・ある程度プログラミング言語の学習をした。
    ・他言語の経験がある。

    これから記事を読もうとされている方、または基本を思い出したい方は、ぜひ本記事を読んでください。それ以外にも「Rubyって、実際どんなソースコードなんだろう?」「これからプログラミングしたいけど、本をガッツリ読むのもなあ・・・」といった方にも、もちろんオススメです。

    「とにかく手を動かしたい」を目標にしているので、高度な内容は触れていません。

    まずはRubyの変数や式について

    変数の型と宣言

    変数の宣言時に、型を指定する必要はありません。初期化したときに代入する値によって決まります。

    「x = 0」とすれば変数xは数値、「y = “0”」とすれば文字列となります。「x + y」を実行するとエラーになります。

    [実行結果]

    putsというのは、処理結果を画面に出力するメソッドです。一般的に「プットエス」と呼ばれています。

    あえて「型」という表現を避けたのは、Rubyではすべてがオブジェクトなので、型という表現は不適切だからです。ただし学習をスタートしたばかりの時点では型と理解してかまいません。

    すべてがオブジェクトなので、以下のような式が書けます。

    [実行結果]

    数値もオブジェクトなので、数値にドット「.」をつけてメソッドを呼び出すことも可能です。
    (putsメソッドは、1つの結果を出力するたびに自動的に改行を入れてくれることを補足しておきます。)

    最低限のRuby演算子

    四則演算はほぼ他言語と同じです。

    その他のものは都度説明しますので、今のところはこれだけ覚えていただければ大丈夫です。

    メソッド

    メソッドは以下の種類に分類できます。

    ・インスタンスメソッド
    ・クラスメソッド
    ・関数的メソッド

    複雑なものは各記事で都度説明をしますが、ここでは変数やオブジェクトの中身を表示するputsメソッドを説明します。すでに本記事で出てきたものです。

    関数的メソッドは「メソッド名(引数)」が基本ですが、「メソッド名 + 引数」とカッコを省略できます。

    putsを使って変数strの中身を表示させるには、以下のようにします。

    [実行結果]

    破壊的メソッド

    メソッドは、中身を変えてしまう破壊的メソッドというものがあります。配列でいうと、配列の中身はそのままで表示だけ変えるものと、中身自体を変えてしまうものがあります。後者を破壊メソッドといいます。

    例えば、配列arrayの中身を昇順に並べるsortを見てみましょう。1行目でsortメソッドを実行、2行目で元のarrayを表示しています。

    [実行結果]

    表示だけ変わり、arrayはもとのままです。では、sort!を使いましょう。

    [実行結果]

    中身まで変わってしまいました。破壊的メソッドは中身を書き換えてしまうもので、メソッド名に!が付くと覚えておきましょう。

    メソッド名に?が付くもの

    メソッド名に?が付くものは戻り値が論理値(true, false)が返ってくることを表します。例えば、変数名がnilかどうかを判断するにはnil?というメソッドがあります。例えば、変数strがnilかどうかを調べるには「str.nil?」と記述します。

    [実行結果]

    nilかどうかを問い合わせて、中に文字列が入っているのでfalseとなりました。

    Rubyのnilはnullと何が違う?

    先ほど、nilというものが出てきました。他言語で使うnullとはちがうの?と思われた方は多いでしょう。同じのようで微妙に違います。同じなのは、オブジェクトの参照先がない場合はnilという点です。

    変数strがnilというのは、strが指す先がないことを示します。

    難しければ、今のところは変数の中身が空ならnil、という理解で結構です。ただしいつかはオブジェクト指向の考えに基づき、参照先がない場合がnilと理解してください。でないと説明できないことがいろいろと出てきます。

    異なるのは、nil自体がメソッドを持つのと、nilを条件判断に使えるという点です。前者は先ほど説明した「str.nil?」のことです。後者は、以下のとおりです。

    Rubyでは、falseとnilを偽として扱います。trueとその他nil以外は全て真です。

    [実行結果]

    strがtrueと判断されて、ご覧のような結果になりました。つまり、strの中身がnilならfalseです。中身が何か入っていればtrueです。メソッドを使って条件式をつくる必要はなく、直接strと指定するだけで良いのです。

    Rubyのコメント

    Rubyの公式マニュアルや書籍、ポテパン以外のサイトの解説では、以下のような記述をよく見かけます。

    Rubyのコメントは、#以降に書きます。つまり、=>からすべてコメントです。このプログラムは「実行するとb,a,cと表示されます」という意味になります。ですから、実行する時は

    だけでよいのです。#以降は入力する必要はありません。もちろん、#以降がそのままでも動作には影響ありません。

    記事のコードをコピーする方法

    最後に、掲載されているコードをコピーする方法について触れておきます。
    コピーしたいコードにマウスをあてるとバーが出てくるので、右から3つ目のボタンをクリックします。

    この状態になったら、Macなら「Command+C」、Windowsなら「Ctrl+C」を押してください。以下はMacの画像です。

    コードがクリップボードにコピーされるので、それ以降は開発環境でペーストしてお使いください。

    まとめ

    本記事では、まずは手を動かしたい、Rubyの雰囲気を知りたいという方に対する解説をしました。

    もちろんRubyの必要となる基礎知識はその他たくさんあります。順次記事をアップしていきますので、より深く知りたい方は関連する記事を読んでみてくださいね!


    ポテパンが提供するサービスについて

    本メディア「ポテパンスタイル」を運営する株式会社ポテパンは、エンジニアキャリア領域で複数サービスを提供しています。

    ポテパンフリーランス

    ポテパンフリーランス

    フリーランスエンジニアの方に高単価案件をご紹介しております。弊社ではフリーランス案件を常時300件ほど保有しており、その中からあなたに適した案件をご案内いたします。また、これから独立してフリーランスになる方の無料個別相談も承っております。フリーランスになった後の案件獲得方法やお金面(税金や保険など)についてお答えいたします!

    ポテパンキャリア

    ポテパンキャリア

    エンジニア職専門の転職エージェントです。ポテパンキャリアでは、技術のわかるエージェントがあなたの転職をサポートします。エージェント自身がエンジニアなので、あなたと同じ目線で仕事内容や今後のキャリアについて一緒に考えることができます。

    ポテパンキャンプ

    ポテパンキャンプ

    ポテパンキャンプでは、RubyにてゼロからオリジナルのECサイトを作り上げてる3ヶ月間の実践型カリキュラムを提供しております。すでに本スクールの卒業生は、エンジニア職として様々な企業様に就職しております。なお、本スクールは受講料10万円と他社スクールに比べ格安となっており、またポテパンからご紹介させていただいた企業へ就職が決まった場合は、全額キャッシュバックいたします。



    株式会社ポテパンは、企業とエンジニアの最適なマッチングを追求しています。気になるサービスがあれば、ぜひ覗いてみてください!

    ポテキャンバナー ポテキャリバナー

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア

    関連ワード

    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE