Heim  >  Artikel  >  Backend-Entwicklung  >  Ist Python objektorientiert oder prozessorientiert?

Ist Python objektorientiert oder prozessorientiert?

青灯夜游
青灯夜游Original
2023-01-05 16:54:4910350Durchsuche

Python ist objektorientiert. Von Anfang an wurde die Python-Sprache als objektorientierte Programmiersprache positioniert. „Alles in Python ist ein Objekt“ ist die perfekte Interpretation der Programmiersprache Python. Klassen und Objekte sind wichtige Funktionen von Python. Im Vergleich zu anderen objektorientierten Sprachen kann Python problemlos Klassen und Objekte erstellen. Gleichzeitig unterstützt Python auch die drei Hauptfunktionen von objektorientierten Sprachen: Kapselung, Vererbung und Polymorphismus.

Ist Python objektorientiert oder prozessorientiert?

Die Betriebsumgebung dieses Tutorials: Windows7-System, Python3-Version, DELL G3-Computer

Obwohl Python eine interpretierte Sprache ist, wurde die Python-Sprache zu Beginn ihres Entwurfs als objektorientierte Programmiersprache positioniert. „Python „Alles ist ein Objekt“ ist eine perfekte Interpretation der Programmiersprache Python.

Was ist objektorientiert? Die objektorientierte Programmierung basiert auf der prozessorientierten Programmierung und ist flexibler und skalierbarer als die prozessorientierte Programmierung. Die objektorientierte Programmierung stellt einen Wendepunkt in der Entwicklung von Programmierern dar. Viele Anfänger geben das Erlernen der Programmierung auf, weil sie die objektorientierte Programmierung nicht verstehen. Objektorientierte Programmierung (kurz OOP) ist eine Methode zur Kapselung von Code. Tatsächlich sind wir in den vorherigen Kapiteln bereits mit der Kapselung vertraut gemacht worden. Das Einwerfen unordentlicher Daten in eine Liste ist eine einfache Kapselung, bei der es sich um die Kapselung häufig verwendeter Codeblöcke in einer Funktion handelt auch eine Art Kapselung auf Anweisungsebene.

Die Codekapselung verbirgt tatsächlich den spezifischen Code, der die Funktion implementiert, und lässt dem Benutzer nur die Schnittstelle übrig. Genau wie bei der Verwendung eines Computers muss der Benutzer nur die Tastatur und die Maus verwenden, um einige Funktionen zu implementieren, ohne zu wissen, was sich darin befindet . Wie es funktioniert.

Objektorientierte Programmierung ist ebenfalls eine Kapselungsidee, aber sie ist offensichtlich weiter fortgeschritten als die beiden oben genannten Kapselungen. Sie kann Dinge in der realen Welt besser simulieren (sie als Objekte behandeln) und Daten zur Beschreibung von Eigenschaften kombinieren Codeblöcke (Funktionen) werden zusammengekapselt.

Wenn Sie beispielsweise einen Schildkrötencharakter in einem Spiel entwerfen, wie sollten Sie ihn umsetzen? Es wird einfacher sein, objektorientiertes Denken zu verwenden, das in den folgenden zwei Aspekten beschrieben werden kann:

Beschrieben anhand von Oberflächenmerkmalen, zum Beispiel grün, hat 4 Beine, wiegt 10 kg, hat eine Schale usw.

  • Beschreiben Sie es anhand seines Verhaltens, zum Beispiel kann es krabbeln, essen, schlafen, seinen Kopf und seine Gliedmaßen in seinen Panzer zurückziehen usw.

  • Wenn die Schildkröte durch Code dargestellt wird, können ihre Oberflächeneigenschaften durch Variablen und ihre Verhaltenseigenschaften durch die Einrichtung verschiedener Funktionen dargestellt werden. Der Referenzcode lautet wie folgt:

    class tortoise:
        bodyColor = "绿色"
        footNum = 4
        weight = 10
        hasShell = True
        #会爬
        def crawl(self):
            print("乌龟会爬")
        #会吃东西
        def eat(self):
            print("乌龟吃东西")
        #会睡觉
        def sleep(self):
            print("乌龟在睡觉")
        #会缩到壳里
        def protect(self):
            print("乌龟缩进了壳里")
Beachten Sie, dass der obige Code nur zur Demonstration objektorientierter Programmierideen dient.

Daher kann die Verwendung von objektorientiertem Denken aus einer bestimmten Programmperspektive Dinge im wirklichen Leben besser simulieren als nur die Verwendung von Variablen oder nur Funktionen.

Darüber hinaus sind in Python alle Variablen tatsächlich Objekte, einschließlich Ganzzahl (int), Gleitkommatyp (float), Zeichenfolge (str), Liste (list), Tupel (tuple), Wörterbuch ( dict) und Sammlung ( Satz). Nehmen Sie als Beispiel das Wörterbuch (dict). Es enthält mehrere Funktionen, die wir verwenden können. Verwenden Sie beispielsweise „keys()“, um alle Schlüssel im Wörterbuch abzurufen, und „values()“, um alle Werte im Wörterbuch abzurufen Verwenden Sie item(), um alle Schlüssel im Wörterbuch usw. abzurufen.

Objektorientierte verwandte Begriffe

Bevor Anfänger systematisch objektorientierte Programmierung erlernen, sollten sie einige Begriffe zur objektorientierten Programmierung verstehen. Die Kenntnis der richtigen Terminologie kann hilfreich sein, wenn Sie Code mit anderen besprechen oder Lösungen für Probleme finden, auf die wir stoßen. Im objektorientierten Bereich gehören zu den gebräuchlichen Begriffen:

Klasse
    : Sie kann als Vorlage verstanden werden, durch die unzählige spezifische Instanzen erstellt werden können. Beispielsweise stellt die zuvor geschriebene Schildkröte nur die Schildkrötenart dar, wodurch unzählige Instanzen erstellt werden können, um Schildkröten mit verschiedenen Merkmalen darzustellen (dieser Vorgang wird auch als Instanziierung einer Klasse bezeichnet).
  • Objekt
  • : Klassen können nicht direkt verwendet werden, es können nur Instanzen (auch Objekte genannt) verwendet werden, die durch die Klasse erstellt wurden. Dies ist ein bisschen wie die Beziehung zwischen Autozeichnungen und Autos. Die Zeichnung selbst (Klasse) kann nicht von Menschen verwendet werden, sondern nur ein durch die Zeichnung erstelltes Auto (Objekt).
  • Attribute
  • : Alle Variablen in einer Klasse werden Attribute genannt. In der Tortoise-Klasse sind beispielsweise „bodyColor“, „footNum“, „weight“ und „hasShell“ Eigenschaften, die dieser Klasse gehören.
  • Methoden: Alle Funktionen in einer Klasse werden normalerweise als Methoden bezeichnet. Im Gegensatz zu Funktionen müssen Klassenmethoden jedoch mindestens einen Selbstparameter enthalten (mehr dazu später). In der Tortoise-Klasse sind beispielsweise crawl(), eat(), sleep() und protected() alle Methoden dieser Klasse. Klassenmethoden können nicht alleine und nur zusammen mit Objekten der Klasse verwendet werden.

Objektorientierte Funktionen von Python:

Klassen und Objekte sind wichtige Funktionen von Python. Im Vergleich zu anderen objektorientierten Sprachen kann Python problemlos eine Klasse und ein Objekt erstellen. Gleichzeitig unterstützt Python auch die drei Hauptmerkmale der Objektorientierung: Kapselung, Vererbung und Polymorphismus.

Kapselung

 Der Begriff Objekt (Objekt) in der objektorientierten Programmierung kann grundsätzlich als eine Sammlung von Daten (Eigenschaften) und eine Reihe von Methoden betrachtet werden, die auf diese Daten zugreifen und diese verarbeiten können. Im traditionellen Sinne wird „Programm =
Datenstruktur + Algorithmus“ gekapselt, „verdeckt“ und zu „Programm = Objekt + Nachricht“ vereinfacht. Objekte sind Instanzen von Klassen, und die Abstraktion von Klassen muss gekapselt werden. Durch die Kapselung kann der Aufrufer das Objekt direkt verwenden, ohne sich darum kümmern zu müssen, wie das Objekt aufgebaut ist.

Vererbung

  • Klassenvererbung:

     Das direkte Gefühl der Vererbung ist, dass es sich um ein Verhalten bei der Wiederverwendung von Code handelt. Unter Vererbung kann die Einrichtung eines speziellen Klassenobjekts basierend auf einer gewöhnlichen Klasse verstanden werden. Die Unterklasse hat eine IS-A-Beziehung mit der übergeordneten Klasse, die sie erbt.

  • Mehrfache Vererbung:

    Im Gegensatz zu C# unterstützt Python die Vererbung mehrerer Klassen (C# kann von mehreren Schnittstellen erben, jedoch höchstens von einer Klasse). Der Mehrfachvererbungsmechanismus ist manchmal nützlich, kann die Dinge jedoch leicht komplizieren.

Polymorphismus

Polymorphismus bedeutet, dass die gleiche Operation auf verschiedene Objekte angewendet werden kann, die Ergebnisse jedoch möglicherweise in verschiedenen Formen vorliegen. In Python wird Polymorphismus immer dann verwendet, wenn Sie nicht wissen, um welchen Typ es sich bei einem Objekt handelt, Sie das Objekt aber für eine bestimmte Aufgabe benötigen. Methoden sind polymorph, ebenso wie Operatoren.

【Verwandte Empfehlung: Python3-Video-Tutorial

Das obige ist der detaillierte Inhalt vonIst Python objektorientiert oder prozessorientiert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn