Pythonのお勉強 Part5
■ このスレッドは過去ログ倉庫に格納されています
0256コロ助
NGNGデータ+手続き=クラス
データとそのデータを直接操作する手続きをひとつのクラスにまとめるナリ。
オブジェクト指向プログラミングの基本はこれだけナリ。
クラス外からデータを操作したい場合はそのクラスが提供している手続きを呼
び出すことによってデータ操作を行なうナリ。この取り決めによって、データ
がクラス内に隠されるナリ。その結果、手続きの名前や引数を変更しない限り、
クラス内のデータの表現や処理方法をどのように変更しようと、クラス外のプ
ログラムに変更が必要になることはなくなるナリ。つまり、クラスの独立性が
高まるナリ。
ここでクラス外のコードは、別のクラスの手続きかも知れないし、Python の
場合は関数やスクリプトの地の文かも知れないナリ。
このようなアプローチ、すなわちオブジェクト指向でプログラムを書く場合、
何をクラスとするかが設計上の問題になるナリ。つまり、データと手続きとを
どのようにクラスにまとめるかということナリ。
解決したい問題のなかに現れるデータと処理とをいくつかのクラスにまとめて
クラス間の呼び出し関係を破綻なく構成するのは実は簡単なことではないナリ。
そのため、どのような関係のクラス群を構成すればうまくいくかという経験則
を知っておくのが重要ナリ。オブジェクト指向関係の書籍で扱われているのは
この経験則に他ならないナリ。片手間に読んでおくと設計の善し悪しに大きな
差が出るナリ。もちろん失敗から学べることも多いナリ。
分かったナリか?
■ このスレッドは過去ログ倉庫に格納されています