Objektorientierte Programmierung: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(35 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Objektorientierung''' ist ein Paradigma aus der Informationstechnik, das im Wesentlichen die Abstraktion über Daten und zugehörige Funktionalität darstellt.
{{Qualität
Durch eine solche Zusammenfassung unter einem Namen werden [[Objekt|Objekte]] gebildet.
|correctness        = 4
Objektorientierung erleichtert das strukturierte Erfassen von Problemen und eine Aufteilung der Komplexität. [[Objektorientierte Programmierung]] sowie [[objektorientierte Datenbanken]] sind die derzeit bekanntesten Anwendungsgebiete.
|extent              = 3
Objektorientierung gehört zu den großen 'Hypes' der letzten 10 Jahre und ist aus der heutigen Softwareentwicklung nicht mehr wegzudenken.
|numberOfReferences  = 2
|qualityOfReferences = 3
|conformance        = 5
}}
==Definition==
Die [[Objektorientierte Programmierung]] ist ein [[Programmierparadigma]] zur Analyse, zum Entwurf und zur Realisierung von (komplexen) [[Programmsystemen]]. Im Zentrum der objektorientierten Programmierung stehen [[Objekt]]e, die mittels [[Nachricht]]en miteinander kommunizieren.


==Zentrale Merkmale==
==Zentrale Merkmale==
[[Datei:Klassenbaum.png|right|Klassendiagramm mit Vererbung und Polymorphismus]]
Folgende Merkmale kann objektorientiertes Programmiersystem aufweisen:
; [[Kapselung (OOP)|Kapselung]]: Zusammengehörige Informationen werden in Objekten gekapselt. Der Zugriff darauf erfolgt ausschließlich über die Objekte und ist einschränkbar.
; [[Modul|Modulatrität]]: Objekte werden zu Modulen zusammengefasst, die bestimmte Aufgaben übernehmen.
; [[Klasse (OOP)|Klassen]]: Gleichartige Objekte können durch so genannte [[Klasse (OOP)|Klassen]] beschrieben werden. Die ist ein Spezialfall die Modularisierung.
; [[Vererbung (OOP)|Vererbung]]: Objekte können Eigenschaften von anderen Objekte übernehmen und gegebenenfalls modifizieren. Der Vererbungsmechanismus ist insbesondere dann von Bedeutung, wenn Objekte mit Hilfe von Klassen beschrieben werden.
; [[Polymorphismus (OOP)|Polymorphismus]]: Gleichbenannte [[Methode (OOP)|Methoden]] können für unterschiedliche Objekte unterschiedlich definiert werden. Das objektorientierte Softwaresystem ermittelt dann zur [[Laufzeit]] die jeweils richtige Methodenimplementierung.
; [[Datenabstraktion (OOP)|Datenabstraktion]]: Das Verhalten von Objekten wird durch [[Integritätsbedingung]]en beschrieben und eingeschränkt.


; Kapselung: Zusammengehörige Informationen werden in Objekten gekapselt. Der Zugriff darauf erfolgt ausschließlich über das Objekt und ist einschränkbar.
==Quellen==
; Vererbung: In Objektdefinitionen ([[Klasse|Klassen]]) können Eigenschaften von anderen Objektdefinitionen übernommen bzw. erweitert werden.
; Polymorphismus: Polymorphismus ist die Fähigkeit, virtuell deklarierte Schnittstellen einer Vaterklasse neu zu implementieren bzw. die Umsetzung einer Schnittstelle anzupassen.


#{{Quelle|Kowarschick, W.: Multimedia-Programmierung}}
#{{Quelle|Kowarschick, W. (2002): Multimedia-Programmierung - Objektorientierte Grundlagen}}
#{{Quelle|Kowarschick, W. (2002): Skriptum zur Vorlesung Multimedia Softwareentwicklung II}}


[[Wikipedia:Objektorientierung|Wikipedia: Objektorientierung]]
==Siehe auch==
[[Kategorie:Software-Entwicklung]]
*[[WikipediaEn:Object-oriented programming]]
[[en:object-oriented]]
 
*[[Wikipedia: Objektorientierung]]
 
[[Kategorie:Objektorientierte Programmierung]]
[[Kategorie:Glossar]]

Aktuelle Version vom 16. September 2018, 19:54 Uhr

Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen nur teilweise:

Korrektheit: 4
(großteils überprüft)
Umfang: 3
(einige wichtige Fakten fehlen)
Quellenangaben: 2
(wichtige Quellen fehlen)
Quellenarten: 3
(gut)
Konformität: 5
(ausgezeichnet)

Definition

Die Objektorientierte Programmierung ist ein Programmierparadigma zur Analyse, zum Entwurf und zur Realisierung von (komplexen) Programmsystemen. Im Zentrum der objektorientierten Programmierung stehen Objekte, die mittels Nachrichten miteinander kommunizieren.

Zentrale Merkmale

Klassendiagramm mit Vererbung und Polymorphismus

Folgende Merkmale kann objektorientiertes Programmiersystem aufweisen:

Kapselung
Zusammengehörige Informationen werden in Objekten gekapselt. Der Zugriff darauf erfolgt ausschließlich über die Objekte und ist einschränkbar.
Modulatrität
Objekte werden zu Modulen zusammengefasst, die bestimmte Aufgaben übernehmen.
Klassen
Gleichartige Objekte können durch so genannte Klassen beschrieben werden. Die ist ein Spezialfall die Modularisierung.
Vererbung
Objekte können Eigenschaften von anderen Objekte übernehmen und gegebenenfalls modifizieren. Der Vererbungsmechanismus ist insbesondere dann von Bedeutung, wenn Objekte mit Hilfe von Klassen beschrieben werden.
Polymorphismus
Gleichbenannte Methoden können für unterschiedliche Objekte unterschiedlich definiert werden. Das objektorientierte Softwaresystem ermittelt dann zur Laufzeit die jeweils richtige Methodenimplementierung.
Datenabstraktion
Das Verhalten von Objekten wird durch Integritätsbedingungen beschrieben und eingeschränkt.

Quellen

  1. Kowarschick (MMProg): Wolfgang Kowarschick; Vorlesung „Multimedia-Programmierung“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2018; Quellengüte: 3 (Vorlesung)
  2. Kowarschick (2002a): Wolfgang Kowarschick; Multimedia-Programmierung – Objektorientierte Grundlagen; Hrsg.: Michael Lutz und Christian Märtin; Reihe: Informatik interaktiv; Verlag: Fachbuchverlag Leipzig im Carl Hanser Verlag; ISBN: 3446217002; 2002; Quellengüte: 5 (Buch)
  3. Kowarschick (2002): Wolfgang Kowarschick; Vorlesung „Multimedia Softwareentwicklung II“ – Wintersemester 2001/2002; Hochschule: Fachhochschule Augsburg; Adresse: Augsburg; Web-Link; 2002; Quellengüte: 4 (Skript)

Siehe auch