And Q.

思ったことを書きます

独習Ruby 7章 メソッドとクラス3

いつの間にかスパンが開いてしまった…

まずはselfという概念について。
既に初めての概念で結構困惑。
呼び出される場所と参照先の関係は以下の通り。
トップレベル:mainというオブジェクト(Objectクラスのインスタンス)
トップレベルのメソッド内:main
クラス定義内:そのクラスのオブジェクト
クラスのメソッド内:メソッド実行対象のクラスのインスタンス

文字に起こすだけじゃよくわかなかったのでこれはまぁ習うより慣れろといったところでしょうか…。

次にモジュールについて。
よく情報処理試験とかで結合度がどうとか出てきますけど実際にプログラム言語で出てきたのは初めてかも。
クラスに似てるけど、ちょっと違う。

以下まとめ
クラスやモジュールに機能を付加するもので、インクルードして使う。

モジュールの用途は属性集約、名前空間、機能集約がある。

継承に似た仕組みでMix-inというものがある。モジュールに定義された機能を一括でクラスに追加する。機能の共通化ができる。

機能集約として使うためにモジュール関数というものがある。
モジュール名.メソッド名として使える。
module_functionを使って定義する。

あとはメソッドについてあれこれ。


練習問題をいくつかこなしてるけど、書き方になれてないせいかすごくつまずくことが多い。
早く慣れてスイスイプログラミングできるようになりたいです。