object oriented programming c
Einführung in die objektorientierte Programmierung in C ++.
Mit diesem Tutorial starten wir eine Reihe von Tutorials, um C ++ als objektorientierte Programmiersprache kennenzulernen.
Wie wir wissen, wurden Programme vor der objektorientierten Programmierung (OOP) in prozeduralen Sprachen geschrieben. Prozedurale Sprachen betonen Funktionen. Die größeren Probleme werden in kleinere Unterprobleme zerlegt und als Funktionen geschrieben.
=> Hier finden Sie Informationen zur vollständigen Liste der C ++ - Tutorials.
Die Verfahrenssprachen haben den Daten keine Beachtung geschenkt. Infolgedessen war die Möglichkeit hoch, das Problem nicht effektiv anzugehen. Da Daten fast vernachlässigt wurden, wurde die Datensicherheit leicht gefährdet.
Alle diese Nachteile der prozeduralen Programmierung wurden durch objektorientierte Programmierung überwunden.
In diesem Tutorial werden wir die Grundlagen der objektorientierten Programmierung und kurz alle Funktionen von OOP diskutieren.
Was du lernen wirst:
- Objektorientierte Programmierung in C ++
- Warum ist C ++ partielles OOP?
- OOP-Funktionen
- Vorteile von OOP
- Fazit
- Literatur-Empfehlungen
Objektorientierte Programmierung in C ++
Objektorientierte Programmierung dreht sich um Daten. Die Hauptprogrammiereinheit von OOP ist das Objekt. Ein Objekt ist eine Darstellung einer Echtzeitentität und besteht aus Daten und Methoden oder Funktionen, die mit Daten arbeiten. Auf diese Weise sind Daten und Funktionen eng miteinander verbunden und die Datensicherheit ist gewährleistet.
In OOP wird alles als Objekt dargestellt, und wenn Programme ausgeführt werden, interagieren die Objekte miteinander, indem sie Nachrichten übergeben. Ein Objekt muss die Implementierungsdetails eines anderen Objekts für die Kommunikation nicht kennen.
Abgesehen von Objekten unterstützt OOP verschiedene Funktionen, die unten aufgeführt sind:
- Klassen
- Verkapselung
- Abstraktion
- Erbe
- Polymorphismus
Mit OOP schreiben wir Programme mit Klassen und Objekten unter Verwendung der oben genannten Funktionen. Eine Programmiersprache wird als echte objektorientierte Programmiersprache bezeichnet, wenn alles, was sie darstellt, ein Objekt verwendet. Smalltalk ist eine Sprache, die eine reine objektorientierte Programmiersprache ist.
Andererseits werden Programmiersprachen wie C ++ und Java als teilweise objektorientierte Programmiersprachen bezeichnet.
Warum ist C ++ partielles OOP?
Die C ++ - Sprache wurde mit der Hauptabsicht entwickelt, objektorientierte Funktionen für die C-Sprache zu verwenden.
Obwohl die C ++ - Sprache die Funktionen von OOP wie Klassen, Objekte, Vererbung, Kapselung, Abstraktion und Polymorphismus unterstützt, gibt es nur wenige Gründe, aus denen C ++ als teilweise objektorientierte Programmiersprache klassifiziert wird.
der Unterschied zwischen c und c ++
Im Folgenden werden einige dieser Gründe aufgeführt:
# 1) Die Erstellung von Klassen / Objekten ist optional
In C ++ ist die Hauptfunktion obligatorisch und befindet sich immer außerhalb der Klasse. Daher können wir nur eine Hauptfunktion im Programm haben und auf Klassen und Objekte verzichten.
Dies ist die erste Verletzung der Pure OOP-Sprache, bei der alles als Objekt dargestellt wird.
# 2) Verwendung globaler Variablen
C ++ hat ein Konzept von globalen Variablen, die außerhalb des Programms deklariert sind und auf die jede andere Entität des Programms zugreifen kann. Dies verletzt die Kapselung. Obwohl C ++ die Kapselung in Bezug auf Klassen und Objekte unterstützt, kümmert es sich bei globalen Variablen nicht darum.
# 3) Vorhandensein einer Freundfunktion
C ++ unterstützt eine Freundesklasse oder -funktion, mit der auf private und geschützte Mitglieder anderer Klassen zugegriffen werden kann, indem sie zu Freunden gemacht werden. Dies ist eine weitere Funktion von C ++, die gegen das OOP-Paradigma verstößt.
Zusammenfassend lässt sich sagen, dass C ++ zwar alle oben genannten OOP-Funktionen unterstützt, jedoch auch Funktionen bietet, die als Problemumgehung für diese Funktionen dienen können, sodass wir auf sie verzichten können. Dies macht C ++ zu einer partiellen objektorientierten Programmiersprache.
OOP-Funktionen
Hier werden verschiedene OOP-Funktionen vorgestellt, die für die Programmierung verwendet werden.
Klassen & Objekte
Ein Objekt ist eine Grundeinheit in der objektorientierten Programmierung. Ein Objekt enthält Daten und Methoden oder Funktionen, die mit diesen Daten arbeiten. Objekte nehmen Speicherplatz ein.
Eine Klasse hingegen ist eine Blaupause des Objekts. Umgekehrt kann ein Objekt als Instanz einer Klasse definiert werden. Eine Klasse enthält ein Skelett des Objekts und nimmt keinen Speicherplatz ein.
Nehmen wir eine Beispiel eines Autoobjekts. Ein Autoobjekt mit dem Namen „Maruti“ kann Daten wie Farbe enthalten. Marke, Modell, Geschwindigkeitsbegrenzung usw. und Funktionen wie Beschleunigen. Wir definieren ein anderes Objekt 'Ford'. Dies kann ähnliche Daten und Funktionen wie das vorherige Objekt sowie einige weitere Ergänzungen enthalten.
In ähnlicher Weise können wir zahlreiche Objekte mit unterschiedlichen Namen mit ähnlichen Daten und Funktionen und einigen geringfügigen Abweichungen haben.
Anstatt diese ähnlichen Daten und Funktionen in diesen verschiedenen Objekten zu definieren, definieren wir eine Blaupause dieser Objekte, die eine Klasse namens Auto ist. Jedes der oben genannten Objekte ist eine Instanz dieses Klassenwagens.
Abstraktion
Abstraktion ist der Vorgang, bei dem irrelevante Informationen vor dem Benutzer verborgen werden. Zum Beispiel Wenn wir das Auto fahren, starten wir zuerst den Motor durch Einstecken eines Schlüssels. Wir kennen den Prozess, der im Hintergrund zum Starten des Motors abläuft, nicht.
Durch die Verwendung der Abstraktion in der Programmierung können wir unnötige Details vor dem Benutzer verbergen. Durch die Verwendung der Abstraktion in unserer Anwendung ist der Endbenutzer auch dann nicht betroffen, wenn wir die interne Implementierung ändern.
Verkapselung
Kapselung ist der Prozess, bei dem Daten und die darauf arbeitenden Methoden oder Funktionen gebündelt werden. Auf diese Weise sind Daten für die Außenwelt nicht leicht zugänglich. In OOP erreichen wir die Kapselung, indem wir Datenelemente als privat festlegen und öffentliche Funktionen für den Zugriff auf diese Datenelemente haben.
Erbe
Die Verwendung des Vererbungsobjekts einer Klasse kann die Eigenschaften des Objekts einer anderen Klasse erben oder erwerben. Die Vererbung ermöglicht die Wiederverwendbarkeit von Code.
Als solches können wir eine neue Klasse entwerfen, indem wir die Eigenschaften und Funktionen einer anderen Klasse erwerben. In diesem Prozess müssen wir die Funktionen der übergeordneten Klasse nicht ändern. Wir fügen der Klasse nur neue Funktionen hinzu.
Polymorphismus
Polymorphismus bedeutet viele Formen.
Polymorphismus ist ein wichtiges Merkmal von OOP und wird normalerweise als Operatorüberladung oder Funktionsüberladung implementiert. Das Überladen von Bedienern ist ein Prozess, bei dem sich ein Bediener in verschiedenen Situationen unterschiedlich verhält. In ähnlicher Weise verhält sich dieselbe Funktion bei der Funktionsüberladung in verschiedenen Situationen unterschiedlich.
Dynamische Bindung
OOP unterstützt die dynamische Bindung, bei der der Funktionsaufruf zur Laufzeit aufgelöst wird. Dies bedeutet, dass der Code, der als Ergebnis eines Funktionsaufrufs ausgeführt werden soll, zur Laufzeit festgelegt wird. Virtuelle Funktionen sind ein Beispiel für dynamische Bindung.
Nachrichtenübermittlung
In OOP kommunizieren Objekte über Nachrichten miteinander. Wenn Objekte kommunizieren, werden Informationen zwischen den Objekten hin und her übertragen. Eine Nachricht besteht im Allgemeinen aus dem Objektnamen, dem Methodennamen und den tatsächlichen Daten, die an ein anderes Objekt gesendet werden sollen.
Vorteile von OOP
Lassen Sie uns einige der Vorteile von OOP diskutieren.
# 1) Wiederverwendbarkeit
Mit OOP kann der vorhandene Code durch Vererbung wiederverwendet werden. Wir können die vorhandenen Funktionen problemlos erwerben und verbessern, ohne den Code erneut schreiben zu müssen. Dies führt zu weniger aufgeblähtem Code.
# 2) Modularität
Wenn wir das Programm in OOP modularisieren, ist es einfach, das Programm zu ändern oder Fehler zu beheben, wenn ein Problem auftritt oder neue Funktionen oder Verbesserungen hinzugefügt werden sollen. Die Modularisierung trägt auch zur Klarheit des Codes bei und macht ihn lesbarer.
# 3) Flexibilität
OOP hilft uns bei der flexiblen Programmierung mithilfe der Polymorphismus-Funktion. Da Polymorphismus viele Formen annimmt, können wir Operatoren oder Funktionen haben, die mit vielen Objekten arbeiten und uns somit ersparen, für jedes Objekt unterschiedliche Funktionen zu schreiben.
# 4) Wartbarkeit
Das Verwalten von Code ist einfacher, da neue Klassen, Objekte usw. ohne große Umstrukturierungen oder Änderungen hinzugefügt werden können.
# 5) Verstecken von Daten und Informationen
OOP hilft uns beim Verstecken von Daten und schützt so vor dem Auslaufen von Informationen. Nur die Daten, die für das reibungslose Funktionieren des Programms erforderlich sind, werden dem Benutzer angezeigt, indem intrinsische Details ausgeblendet werden.
Fazit
OOP ist das wichtigste und flexibelste Programmierparadigma der modernen Programmierung. Es ist besonders nützlich bei der Modellierung realer Probleme und daher sehr beliebt.
Wir haben die verschiedenen Funktionen von OOP in diesem Tutorial besprochen. In Zukunft werden wir alle diese Funktionen im Detail besprechen.
Das nächste Thema in dieser Reihe „OOP mit C ++“ befasst sich ausführlich mit Klassen und Objekten.
=> Klicken Sie hier für die Absolute C ++ - Schulungsserie.
Weltbeste Computer-Hacking-Software kostenloser Download
Literatur-Empfehlungen
- OOP Java: Einführung in die objektorientierte Programmierung in Java
- C ++ - Datentypen
- Top 10 Data Science Tools im Jahr 2021 zur Beseitigung der Programmierung
- Datenabstraktion in C ++
- Einführung in Datenstrukturen in C ++
- Unix Pipes Tutorial: Pipes in der Unix-Programmierung
- QTP-Tutorial Nr. 8 - Erfahren Sie mehr über QTP-Aufzeichnungsmodi, Object Spy und Object Repositories
- Über 70 BEST C ++ - Tutorials zum kostenlosen Erlernen der C ++ - Programmierung