019 Pythonとオブジェクト指向(その2)

2022/03/26

紹介/オブジェクト指向

t f B! P L

まず,Pythonにおけるオブジェクト指向を説明する前に,オブジェクト指向が導入されていない時代のプログラミングについて説明します.
なお,本ブログで紹介するオブジェクト指向に関しては,厳密には正しくない説明となっている箇所がありますが,あくまで,メジャーメントラボの主観に基づいたものであることをご了承下さい.

オブジェクト指向が導入される前のプログラミングは,主役は関数でした.
関数というのは,処理を行うルーチンのことです.ここで,処理というのは,四則演算を行って数値を求めたり,ファイルを読み書きしたり,画面に文字や画像を表示したりすることで,コンピューターに何かしら処理を実行するための手続きです.

これを測定機器のコントロールに置き換えると,
  ファンクション・ジェネレータに電圧の値を設定する
となり,「設定する」が主役の関数で,「ファンクション・ジェネレータ」は,あくまで,関数の引数(材料)です.

これに対し,オブジェクト指向で,測定機器のコントロールを行うケースでは,
  ファンクション・ジェネレータの電圧の値を設定する
となり,「ファンクション・ジェネレータ」が主役のオブジェクトです.「設定する」という関数は,あくまで,「ファンクション・ジェネレータ」というオブジェクトの,属性の一つに過ぎません.

つまり,オブジェクト指向では,「設定する」という関数は,「電圧の値」というデータと,全く同格となり,それらは,「ファンクション・ジェネレータ」というオブジェクトに属します.

ファンクション・ジェネレータに電圧の値を設定するのを,概念的にPythonスクリプトを書いたとすると,下記のようになります.
    set_voltage(ファンクション・ジェネレータ, 電圧の値) # 関数によるもの
    ファンクション・ジェネレータ.set_voltage(電圧の値)  # オブジェクト指向によるもの

関数が主役から,オブジェクトが主役に変更されることで,何のメリットがあるのか,現段階では分からないと思いますが,ここで説明したことは,オブジェクト指向に沿ってPythonスクリプトを作成する上で非常に重要な概念です.何となくで良いので,覚えておいて下さい.

次の投稿から,Pythonで,オブジェクトの作成(クラスという型を使います)の方法について,紹介していきます.

このブログを検索

自己紹介

C++やC#を使って数値解析プログラムの開発を長年行ってきました.
今は,Pythonを使った自動処理システムの開発をメインに行っています.

QooQ