20200925_アウトプット(バイナリサーチ、attrメソッド)
学んだこと
探索法について
ルビードリル38でバイナリサーチが出てきた。バイナリサーチとは2分割検索のこと。中央の値を見て、検索したい値との大小関係を用いて、左にあるか右にあるかを探していく方法。1から順番に探すよりも選択肢が半分になる。注意点としては「①あらかじめデータをソートしておく事」「②ダブりがない事」が前提となる。
特定のデータを探し出す方法は、いろいろある。
勉強になったことは、
array[center]
の、centerは添字だったこと。return -1
とは、While文において当てはまらなかった値をreturnとして戻り値を返しているだけで、 「-1」でなくても良い。「当てはまるものがなかった」という時に可読性で使われることが多い。
attrメソッドについて
Rubyにおいてインスタンス変数をクラスの外から呼び出して使うには、イニシャライズメソッドで生成しただけでは使えない。以下の方法で定義しないと呼び出せないよ。
attr_reader
ゲッターと同じ意味。(外からの)読み取りOKメソッドを定義する意味。attr_writer
セッターと同じ意味。(外からの)書き込みOKメソッドを定義する意味。attr_accessor
ゲッターとセッターの役割を兼ねたもの。上記3つの方法で、定義する時は、シンボルを使う。(例:
attr_reader :title, :price
)外から呼び出す場合に使えないのであって、"#{@price}円です"と直接参照する時は不要。
Ajax(エイジャックス)について学ぶ
非同期通信とはリクエスト後に、ブラウザが再読み込みされることなく一部分が更新される通信方法のこと!
非同期通信をJavaScriptで行う場合には、Ajax(Asynchronous JavaScript + XML)を使うよ。