Objektorientierte Programmierung wurde ein Paradigmenwechsel in der Software- Entwicklung als Programmierer gelernt, die Vorteile der Verwaltung von Code in einer modularen Art und Weise . Durch die Definition von " Objekten " , die Informationen der Programmierer nutzt gesamten Programm , Programmierer und andere Programmierer darstellen , kann bauen aus dieser Objekte zu komplizierter Software zu erstellen . Im Herzen der objektorientierten Software-Entwicklung sind die Konzepte der Datenkapselung und Abstraktion , zusammen mit den Vorstellungen von Vererbung und Polymorphismus . Kapselung
Beim Schreiben Klassen , erfordert eine gute objektorientierte Programmierung Praxis , dass Programmierer " kapseln " Daten vom Benutzer des Objekts. Dies bedeutet, dass alle Daten oder eine Funktion innerhalb einer Klasse sollte nicht für den Benutzer zugänglich , ohne Programmierer Modifikation . Ein gutes Beispiel hierfür sind "get" und "set "-Funktionen eingebaut in den meisten Klassen . Diese Funktionen steuern, wie ein Benutzer Daten Variablen in einem Objekt zugreifen , und sicherzustellen, dass alle Daten betrachtet werden legitim für den Einsatz werden. Dies schränkt die Sorge um beschädigte Daten oder illegale Daten Manipulation durch den Anwender.
Abstraction
Ein Vorteil der objektorientierten Programmierung ist, dass es den Benutzer entfernt von der Anforderung zu wissen, wie andere Code funktioniert . Dieser Vorteil , genannt Abstraktion, bedeutet, dass ein Benutzer zur Durchführung eines Objekts von einem anderen Programmierer erstellt, um eine bestimmte Aufgabe zu erfüllen braucht nicht zu wissen, wie das Objekt seine Aufgabe abgeschlossen . Auf diese Weise kann der Benutzer auf ihre eigenen Probleme konzentrieren , anstatt sich Gedanken über die Umsetzung eines Objekts sie verwenden wollen könnte . Dies ermöglicht es Programmierern, größer und komplexer Software über kleinere Objekte zu bauen.
Vererbung
Ein weiterer Vorteil der objektorientierten Programmierung ist die Vererbung , die auch ermöglicht Programmierern um komplexere Programme aus einfacheren Teilen zu bauen. Vererbung ist die Art und Weise , in der Objekte " erben "-Funktionalität von anderen Objekten , Tweaking sie ihre Bedürfnisse anzupassen . Zum Beispiel könnte ein "Lehrer" Objekt erben die Funktionalität von einer " Person " Objekt , weil der Lehrer ist eine Person, und verlangt, dass alle die Funktionalität des Objekt Person ( zusammen mit den zusätzlichen Funktionen eines Lehrers ) . Auf diese Weise muss der Programmierer des Lehrers Objekt nicht das Objekt Person umschreiben , nur um es für den Lehrer -Objekt verwenden , sie können nur noch der Lehrer Objekt erben seine Funktionen aus dem Objekt Person
. Polymorphismus
Polymorphismus knüpft an Vererbung , dass es sich um die Art und Weise , in der ein Objekt, das von einem anderen Objekt erbt interagiert mit dem "Basis" -Objekt. Zum Beispiel kann der Lehrer bestimmte Funktionen Objekt von seiner Basis Objekt (Person ) erben , verändern jedoch einer von ihnen. Der Lehrer Objekt können weiterhin die Basisklasse Funktionen zusammen mit seiner eigenen Version der Funktion sich ändert. Außerdem während der Programmausführung ein Benutzer kann eine Variable , ein Objekt Person halten , aber später das Programm entscheidet, dass es einen Lehrer Objekt muss genauer . In diesem Fall kann die Variable der Flächenstilllegung für das Objekt festgelegt Person halten einen Lehrer Objekt , weil ein Lehrer erbt von (oder ist ) eine Person, Objekt .