Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

More than 3 years have passed since last update.

基本的なRubyの書き方まとめ

Last updated at Posted at 2020-12-30

基本的な書式

  • コメントアウト
    • 一行のみ
      • #
    • 複数行
      • =begin=end でコメント行を囲む
  • インデント
    • スペース2つ
  • メソッドの () は省略可能
  • セミコロン
    • ; は処理の区切りを表す(通常は一行単位で処理が区切られる)

基本的なオブジェクト操作

  • 変数宣言

    • 変数名 = オブジェクト
  • 代数演算子

    • 和: + ,差: - ,積: * ,商: / ,剰余: % ,冪: **
  • コマンドライン引数

    • 配列 ARGV
      • コマンドラインからスクリプトの引数として与えられた文字列を要素としてもつ
        • 数値(整数)として利用する場合は .to_i で変換
    • 要素の取り出し
      • ARGV[インデックス]

外部ファイルの読み込み

require "ライブラリ名/ファイルパス"

  • require時にコードの実行をしない方法
# 外部ファイル
if $PROGRAM_NAME == __FILE__
  require時に実行しない処理
end

出力(表示)

メソッド

  • print :通常表示
  • puts :通常表示,改行あり
  • p :型表現も含めた形の文字列を表示,改行あり

フォーマット

  • 文字列と変数の連結
    • 通常
      • "文字列" + 変数
    • 省略
      • "文字列 #{変数}"

コンテナ

配列

  • 宣言

    • 配列名 = [要素1, 要素2, ..., 要素n]
  • 代入

    • 配列名[インデックス] = オブジェクト
  • 取り出し

    • インデックス指定
      • 配列名[インデックス]
  • 繰り返し処理

    • eachメソッド
配列名.each do |変数|
  処理
end

ハッシュ

  • 宣言
    • ハッシュ名 = {キー1:要素1, キー2:要素2,..., キーn:要素n}
  • 代入
    • ハッシュ名[キー] = オブジェクト
  • 取り出し
    • キー指定
      • ハッシュ名[:キー]
  • 繰り返し処理
    • eachメソッド
ハッシュ名.each do |キーの変数, 値の変数|
  処理
end

条件分岐

if文

  • 通常表記
if 条件
  処理
elsif 条件
  処理
else
  処理
end
  • 条件が単一の場合
    • 通常
      • if 条件 then 処理 end
    • 省略
      • 処理 if 条件

case文

# 通常表記
case オブジェクト
when 1 then
  処理
when 2 then
  処理
...
# 省略表記
case # 何も与えないとwhenの真偽値で判断
when オブジェクト == 1 ; 処理
when オブジェクト == 2 ; 処理
...

関数

def メソッド名
  処理
end

ループ

for文

for 変数 in オブジェクト
  処理
end

while文

while 条件
  処理
end

クラス

継承なし

class クラス名

  # 初期化メソッド
  def initialize
    処理
  end

  def メソッド名
    処理
  end
end
  • インスタンス変数(クラス内表記)
    • @変数名
  • クラス変数(クラス内表記)
    • @@変数名
  • インスタンス生成
    • クラス名.new

継承あり(差分)

class クラス名 < 継承したいクラス名
  ...
end

その他(rake/正規表現/)

rake

  • 実行: rake タスク名
  • タスク一覧表示: rake -T
  • 処理を記述する Rakefile の書き方
desc 'タスクの説明'
task :実行タスク名 do
  処理
end
  • 用例
    • gitのadd,commit,pull,pushを自動化

正規表現

参考


  • source ~/grad_members_20f/members/yuya-ohagi/ruby_summary.org
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?