kekosh’s Study_Log

勉強の記録と日記

勉強ログ ~12/55~

昨日は寝落ちしてしまい、ブログを書けませんでした...。

開始1週間ちょっとでこのザマはひどいですね。年齢を感じます。

 

昨日提出した課題のポートフォリオは一発合格でした!!

提出時のコメントはメンターさん宛のつもりで書いてしまったので、

メンターさんに頼りきりである事実がレビューアの方にモロばれでした...(笑)

次回からは自力でやりきるよう気を付けます。

 

さて、昨日からRubyの文法の勉強に入っています。

基本的にはC#と類似する構文が多いですが、ループ処理の部分については結構相違点が多いですね。

正直、each構文の「|variable|」の部分は未だに違和感がありますが、まあ、慣れ次第のように感じます。

 

明日はまたメンタリング日なので、時間までにLesson5までは終わらせておくようにしたいと思います。

 

時間:19:30~21:30

メモ:

7/14 22:00~24:00
rubyファイルの実行
ruby ファイル名(xxxx.rb)
・ターミナル上でのコマンド実行環境
irb
・オブジェクトのサイズを取得する
→オブジェクト名.length、または オブジェクト名.size
・数値の四捨五入
→小数点数.round
rubyの変数名の命名規則
 ・変数名は半角英小文字で構成し、単語間はアンダースコアで連結する。
・置換文字列(プレースホルダ)
→置換位置に「#{置換変数}」を記載する。
 プレースホルダを使用する場合、文字列オブジェクトはダブルコーテーションで囲う必要がある。(シングル不可)
・配列
 (例) colors = ["red", "blue", "green"]
→配列の値の取得はインデックスを指定する。
 (例)colors[2] = "green"
 インデックスを指定して代入することで値の上書が可能。
・配列の最初、最後の値を取得する
最初:配列名.first 最後:配列名.last
・配列のサイズを取得する際は、length、sizeを使用する。
 (例)配列オブジェクト.length = オブジェクトの長さ
・ハッシュ(ディクショナリ)
 定義方法
 1.test = {"A" => "あ”, ”I” =>"い"}
 →値取得 … test["A"]
 2.test = {:a => "あ", :I => "い"}
 3.test = {a: "あ", i: "い"}
 →値取得 … 2,3ともにtest[:a]
(2,3はシンボル記法)
・配列、ハッシュには自由な型のオブジェクトの格納が可能。
nil
→オブジェクトが存在しないことを指す。Null?
 配列の存在しないインデックスを指定した場合もnilが返る。

○ループ処理
配列または範囲オブジェクト.each do|格納用変数|
puts(格納用変数)
end
※範囲オブジェクト … (5..10).each do |格納用変数|~


7/15 19:30~21:30
・決まった回数のループ処理
数字.times do
 処理
end

・インクリメントループ
開始数値.upto(回数) do |格納用変数|
 処理
end

・条件分岐
if(条件)
 処理
end

・否定条件分岐("!="と同じ意味)
unless ()
 処理
end
→条件判定がfalseならば、処理が実行される。

・複数条件
if(条件)
 処理
elsif(条件)
 処理
else
 処理
end
→条件の適用は上から順に

・クラス
オブジェクトの種類。データの型は組み込みクラス(あらかじめ用意されたクラス)であり、
String、Numeric(数値)、Array(配列)、Hash(ハッシュ)等がある。

クラスとインスタンスの違いは、クラスは「共通の性質」インスタンスは「クラスに属するオブジェクト」
を指すこと。(クラス→インスタンス作成)

・継承
定義済みのクラスを拡張して新しいクラスを作成することを継承と呼ぶ
→継承で作成されたクラスをサブクラス、継承元となったクラスをスーパークラスという。

Rubyのすべてのクラスは「BasicObject」クラスを継承して作成されている。

・メソッドの定義
def メソッド名(引数)
 処理
end

配列をメソッドの引数に渡す場合(taxはメソッド)
args1 = [1980,0]
tax(*args1)

→配列の要素数はメソッドの引数の数と一致していなければならない。
 (メソッド定義時に引数が2つなら、引数に渡す配列の要素数は「2」でなければならない。)
?→メソッドの引数に配列を渡す場合は、メソッド呼び出し時の引数の頭に「*」をつける必要がある。

ハッシュを引数として渡す場合
(例)
・ハッシュ:
arg = {price: 19800, percent: 8}
・メソッド:
def tax(arg)
 arg[:price] * arg[:percent] / 100.0
end
・使用例
1.tax(arg) →ハッシュ変数を定義して渡す
2.tax({price:19800,percent:8}) →ハッシュ変数を定義せずに直接渡す
3.tax(price:19800,percent:8) →ハッシュの{}を省略する場合(メソッドの引数の場合のみ)
4.tax price:19800,percent:8 →ハッシュの{}、メソッドの()を省略する場合


?→メソッド側でシンボル記法を使用している場合、引数に渡すハッシュを定義する際にも
  ハッシュ記法を使用していないといけない。

・クラス定義
class クラス名
 定義
end
→クラス名は必ず大文字で始める。

irbでrbファイルを読み込む
load "rbファイル名"
→rbファイルを更新する毎にloadで再読み込みする必要がある。

・クラスのインスタンス作成
インスタンス名 = クラス名.new