プログラミング思想
2713 ワード
プロセス向けプログラミング
POPプロセス向けのプログラム設計思想は,コンピュータプログラムを命令の集合,すなわち関数のセットの順序実行と見なす.プロセス設計向けに、プログラム全体をいくつかの関数モジュールに分割し、各モジュールが問題を解決します.
オブジェクト向けプログラミング
OOPはオブジェクトをプログラムの基本単位とし,1つのオブジェクトにはデータと操作データのメソッド(Method)が含まれる.オブジェクト向けのプログラム設計はコンピュータプログラムを1組のオブジェクトの集合と見なし,各オブジェクトは他のオブジェクトからの情報を受信することができ,コンピュータプログラムの実行は一連の情報が各オブジェクト間で伝達される.
すべてのデータ型(数値、文字列、リスト、メタグループ、辞書)はオブジェクトとみなすことができます.もちろん、オブジェクトをカスタマイズすることもできます.カスタムオブジェクトのデータ型は,オブジェクト内のクラス(Class)に対する概念である.
例
POP
OOP
まず考えるべきは
学生の成績を印刷するには、まずこの
クラスとインスタンス
OOPには、クラス(Class)とインスタンス(Instance)の2つの重要な概念があります.上記の例に対応して、Studentはクラスであり、Lisaはインスタンスである.
オブジェクト向けの設計思想はClassを抽象化し,Classに基づいてInstanceを作成する.
POPプロセス向けのプログラム設計思想は,コンピュータプログラムを命令の集合,すなわち関数のセットの順序実行と見なす.プロセス設計向けに、プログラム全体をいくつかの関数モジュールに分割し、各モジュールが問題を解決します.
オブジェクト向けプログラミング
OOPはオブジェクトをプログラムの基本単位とし,1つのオブジェクトにはデータと操作データのメソッド(Method)が含まれる.オブジェクト向けのプログラム設計はコンピュータプログラムを1組のオブジェクトの集合と見なし,各オブジェクトは他のオブジェクトからの情報を受信することができ,コンピュータプログラムの実行は一連の情報が各オブジェクト間で伝達される.
すべてのデータ型(数値、文字列、リスト、メタグループ、辞書)はオブジェクトとみなすことができます.もちろん、オブジェクトをカスタマイズすることもできます.カスタムオブジェクトのデータ型は,オブジェクト内のクラス(Class)に対する概念である.
例
POP
#
# dict
std1 = { 'name': 'Michael', 'score': 98 }
std2 = { 'name': 'Bob', 'score': 81 }
def print_score(std):
print('%s: %s' % (std['name'], std['score']))
OOP
まず考えるべきは
Student
クラスであり,プログラムの実行フローではない.Student
データ型は、name
とscore
の2つの属性(Property)を持つオブジェクトと見なされます.学生の成績を印刷するには、まずこの
Student
オブジェクトを作成し、次に、オブジェクトにprint_score
情報を送信し、オブジェクト自身が自分のデータを印刷するようにしなければならない.class Student(object):
def __init__(self, name, score):
# Student name, score
self.name = name
self.score = score
def print_score(self):
print('%s: %s' % (self.name, self.score))
lisa = Student('Lisa Simpson', 87) #
lisa.print_score() # ,
クラスとインスタンス
OOPには、クラス(Class)とインスタンス(Instance)の2つの重要な概念があります.上記の例に対応して、Studentはクラスであり、Lisaはインスタンスである.
オブジェクト向けの設計思想はClassを抽象化し,Classに基づいてInstanceを作成する.