トレードの勉強してたはずなのですが、
やっぱシステムじゃなきゃ、身も心も保たないし、利益も残らない。
で、やむなく、プログラミングの話続けます。ご容赦。
前回までで、データの取得が一段落しました。
これからデータの操作に移ります。
その前に、Rubyらしいテクニックを予習します。
なにげに、:(コロン)を使ったシンボルと文字列の違いが端折られてる気がするが、
坂本タクマ先生相変わらず、丁寧な説明です。
ま、個人的にはRubyのこういう「柔らかい」ところ、好きではないです。
便利っちゃ、便利だけど、後でヤダ。
それはともかく、
Yieldというものが登場します。
Rubyではメソッド呼び出しって呼ばれてるらしいです。
まあ、コールバックですね。わたしらに馴染みある言葉でいえば。
少なくとも、本書の中ではコールバックの実現として使われてます。
で、コールバックとは何か、
良い説明ないかとグーグル先生に尋ねたのですが、
それほど、分かりやすいものないので、自力で。
食材と料理法を渡すと、料理が出て来る。
というような仕組みというか手続きを用意しておく。
その手続きの流れは変わらないが、
食材と料理法は状況に応じて変更したい。
食材を変えるのは引数(パラメータ)を渡すことで例えてます。
これは今までも行って来たこと、銘柄のコード渡してそのデータ取るとか。
さらに料理法、つまり処理の中身は変えたい、
だけど、全体の手続きのステップは変えない。
渡せば料理が出て来るという仕組みは変えない。
たとえ同じ食材渡しても、料理法は都度変えたい。
卵渡して、場合によっては、オムレツやゆで卵や目玉焼きが出て来る。
で、新しい料理法が加わったりもするので、
料理法のところは、後から入れ替え可能でかつ都度指定したい。
こんなときに使われるやり方です。
料理法を渡すやり方がコールバック。
Windowsでプログラミングするようになって学びました。
マウスクリックとかスクロールとか、
動作があると動作があったと通知がやって来ます。
その動作ごとにどんな処理をするかを渡します。
動作を通知して処理するという仕組みは既にありますが、
処理の内容は個々様々なので、そこはこっちが渡します。
Cだと関数ポインタで渡し、Javaだとインターフェイスで渡すかな。
Rubyでも似たようなこと出来るということですね。
ここはちょっと、ハードル高いかなと思いました。
という予習があって、データの操作の説明に入ります。
質問コーナー、お問い合わせは、sanpome.net@gmail.com まで。