ホームページ  >  記事  >  バックエンド開発  >  Python はオブジェクト指向ですか、それともプロセス指向ですか?

Python はオブジェクト指向ですか、それともプロセス指向ですか?

coldplay.xixi
coldplay.xixiオリジナル
2020-09-27 16:14:2519932ブラウズ

Python はオブジェクト指向です。最初の公開リリースは 1991 年にリリースされました。Python の構文は簡潔かつ明確で、豊富で強力なクラス ライブラリを備えています。

Python はオブジェクト指向ですか、それともプロセス指向ですか?

Python は、1989 年末に Guido van Rossum によって発明された、オブジェクト指向の解釈型コンピューター プログラミング言語 です。公開配布版は 1991 年にリリースされており、Python のソース コードも GPL (GNU General Public License) 契約に従っています。 Python の構文は簡潔かつ明確で、豊富で強力なクラス ライブラリを備えています。

#オブジェクト指向とプロセス指向の違い

1. プロセス指向

1. プロセス指向: 核はプロセス 2 プロセスという言葉は、組立ラインの設計など、問題を解決するための手順を指し、機械的な考え方です。

これは、プログラムが上から下に段階的に実行され、問題が上から下に、最初から最後まで段階的に解決されることを意味します。基本的な設計の考え方は、プログラムが大きな問題を解決することから始まり、次に大きな問題を多くの小さな問題またはサブプロセスに分解するというものです。これらのサブプロセスは実行され、小さな問題が十分に単純になるまで分解され続けます。一度に解決する スモールステップで解決する。

2. 長所と短所:

長所: 複雑な問題を合理化し、単純化します。

欠点: スケーラビリティが低い

3. 例: 手続き指向のログインおよび登録プログラム

コードの表示

注: 一般に、 1 回限りのタスクを実行するいくつかの単純なスクリプトの場合、プロセス指向のアプローチは優れていますが、処理したいタスクが複雑で、継続的な反復とメンテナンスが必要な場合は、オブジェクト指向を使用するのが最も便利です。

2. オブジェクト指向

1. オブジェクト指向: 中心となるのはオブジェクトという言葉であり、特性とスキルの組み合わせです。

2. 長所と短所:

長所: 高い拡張性

短所: プログラミングの複雑さの高さ

3. アプリケーション シナリオ: ユーザーのニーズは頻繁に変化し、インターネットアプリケーション、ゲーム、企業内アプリケーションなど。

4. オブジェクト指向クラスに関するいくつかの用語の説明: クラスは、テンプレートのような、一連のオブジェクトの類似した特性とスキルの組み合わせです。これらのオブジェクトが持つ属性と共通のメソッドはクラスで定義されます。

属性: 人間には多くの特性があります。これらの特性がプログラムによって記述される場合、それらは属性と呼ばれます。たとえば、年齢、身長、性別、名前などはすべて属性と呼ばれます。クラスは複数を持つことができます属性。

方法: 人間は身長、年齢、性別などの属性を持っているだけでなく、話す、歩く、食べるなど多くのことを行うことができます。一方、属性は名詞であり、話したり、話したりすることはできません。歩くことは動詞であり、これらの動詞はプログラムされており、それを記述することをメソッドと呼びます。

インスタンス (オブジェクト): オブジェクトは、クラスのインスタンス化されたインスタンスです。クラスは、プログラム内で呼び出す前にインスタンス化する必要があります。クラスは複数のオブジェクトをインスタンス化でき、各オブジェクトもインスタンス化できます。人間がすべての人を指す場合もあれば、特定の対象を指す場合もあるように、さまざまな属性を持つことができ、人の間には共通点と相違点があります。

インスタンス化: クラスをオブジェクトに変換するプロセスは、インスタンス化と呼ばれます。

5. 簡単な例

# 现实世界中的对象:
'''
对象1 
    特征
        职业:学生
        姓名:王二
        性别:男
        年龄:22
    技能
        学习
        打游戏
对象2
    特征 
        职业:学生
        姓名:张三
        性别:男
        年龄:20
    技能
        学习
        打游戏
        看书
对象3 
    特征 
        职业:学生
        姓名:婉婉
        性别:女
        年龄:18
    技能
        学习
        打游戏
        看书
现实中的类:
    特征:
        职业:学生
    技能:
        学习
        打游戏
        看书
在程序中:
'''
# 先有类
class School_learn:
    job = 'student'
    def study(self):
        print('study hard!')
    def play_game(self):
        print('play games as little as you can')
    def read(self):
        print('read books more and more')
# 再调用类产生对象
student1 = School_learn()
student2 = School_learn()
student3 = School_learn()
print(student1) # <__main__.School_learn object at 0x000002B70F8D7588> 对象
print(student2)
print(student3)

3. オブジェクト指向の 3 つの主要な特徴

f35d6e602fd7d0f0edfa6f7d103c1b57カプセル化: クラス内のデータのカプセル化代入と内部呼び出しは透過的で外部ユーザーには見えないため、クラスは、クラスのデータとメソッドを含むカプセルまたはコンテナに変わります。

2cc198a1d5eb0d3eb508d858c9f5cbdb継承: クラスはサブクラスを派生でき、親クラスで定義された属性とメソッドはサブクラスに自動的に継承されます。

5bdf4c78156c7953567bb5a0aef2fc53ポリモーフィズム: ポリモーフィズムはオブジェクト指向の重要な機能です。簡単に言うと、「1 つのインターフェイス、複数の実装」とは、異なるサブクラスが基底クラスから派生することを意味します。各サブクラスは継承します。同じメソッド名で、親クラスのメソッドを別の方法で実装する、これは同じものの複数の形式です。

注: ここではいくつかの主要な機能について簡単に説明します。後で詳しく説明します。

その他の関連する無料学習の推奨事項:

Python ビデオ チュートリアル

以上がPython はオブジェクト指向ですか、それともプロセス指向ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。