In dieser Arbeit möchte ich es vorziehen, die objektorientierte Denkweise zu unter-suchen und weniger auf die sprachlichen Elemente von Visual C# eingehen.
Den vollständigen Code zu den Ausschnitten sowie das Material zum Praxisteil stelle ich im Anhang zur Verfügung.
Die objektorientierte Programmierung setzte sich richtig in den 90-er Jahren durch.
Die wichtigsten Elemente der objektorientierten Programmierung sind Klassen, Ei-genschaften, Methoden und Objekte. Der Code, welcher die Funktionalität des Pro-grammes darstellt, wird in Klassen strukturiert.
Eine Eigenschaft ist eine Variable, welche in allen Methoden geändert werden kann. Methoden beinhalten die Funktionalität der Klasse. Sie besitzen also die Funktion, die Eigenschaften zu ändern.
Um nun den Code auszuführen, werden Objekte von den Klassen erstellt. Man kann von diesen alle Eigenschaften ändern beziehungsweise alle Methoden aufrufen, wel-che als „public“ gekennzeichnet sind.
Die objektorientierte Programmierung findet in allen technischen Bereichen Anwen-dung, welche eine gute Struktur und Performance des Codes voraussetzen.
Inhaltsverzeichnis
1 Begriffserklärungen und Erläuterungen
2 Entstehung der objektorientierten Programmierung
3 Untersuchung der Kernfunktionen
3.1 Klassen
3.2 Eigenschaften
3.3 Methoden
3.4 Funktionen
3.5 Zugriffsmodifikationen
3.6 Vererbung
3.7 Instanzen von Objekten
4 Entwicklung eines objektorientierten Programmes in Visual C#
5 Anwendungen der objektorientierten Programmierung in der Praxis
6 Zusammenfassung
7 Literatur – und Quellenverzeichnis
8 Anhang
1 Begriffsklärungen und Erläuterungen
„Die objektorientierte Programmierung (kurz OOP) ist ein auf dem Konzept der Objektorientierung basierender Programmierstil. Die Grundidee dabei ist, Daten und Funktionen, welche auf diese Daten angewandt werden können, möglichst eng in einem sogenannten Objekt zusammenzufassen und nach außen hin zu kapseln, so dass Methoden fremder Objekte diese Daten nicht versehentlich manipulieren können.“[1]
Aus dieser Definition kann man entnehmen, dass jeder einzelne Sachverhalt in einem Programm als Objekt betrachtet wird.
Ein Objekt ist eine Sammlung zueinander in Beziehung stehender Informationen und Funktionen.[2] Dieses Objekt kann einen Zusammenhang mit der Wirklichkeit darstellen (z.B. einer Person mit Namen, Adresse, etc.), eine virtuelle Bedeutung haben (z.B. ein Fenster auf dem Bildschirm) oder einfach ein Element innerhalb eines Programmes verdeutlichen (etwa eine Sammlung zu erledigender Aufgaben).
In der OOP besteht der erste Schritt nun darin, den einzelnen Objekten eine Bedeutung zuzuweisen. Dies erscheint einfach, wenn man ein natürliches Objekt, wie beispielsweise eine Person betrachtet. Bezieht man das Objekt jetzt jedoch auf ein virtuelles Problem, so verschwimmen die Grenzen.
Wenn das Ziel zum Beispiel die Entwicklung eines Programms zur Nummerierung mehrerer Bilder in einem Ordner darstellt, so könnte man das einzelne Bild als Objekt betrachten mit den Eigenschaften Name, Speicherort, Format und Abmessungen. Der Programmierer könnte sich jedoch auch dafür entschieden, dass er den Ordner mit den beinhaltenden Bildern als Objekt annimmt und der Ordner verschiedene Bilder als Eigenschaften besitzt.
2 Entstehung der objektorientierten Programmierung
Zu Beginn wurde ein Programm linear programmiert. Es enthielt ein „begin“, ein „end“ und eventuell Anweisungen wie „goto“. Die populärste Programmiersprache dieser einfachen Art von Programmierung ist BASIC.
In den 60-er und 70-er Jahren folgten dann erste neue Konzepte, allen voran erste Ansätze zur objektorientierten Programmierung. Die erste Sprache diesbezüglich war Simula 67.
Der Begriff „objektorientiert“ entstand jedoch erst in den 80-er Jahren. In dieser Zeit erhielten viele herkömmliche Programmiersprachen, wie beispielsweise Pascal (dann Objekt Pascal/Turbo Pascal), objektorientierte Funktionen. Ganz zum Durchbruch verhalf der objektorientierten Programmierung dann C++.
In den 90-er Jahren kamen dann zahlreiche weitere objektorientierte Sprachen auf den Markt, wie beispielsweise Java, welches sich hauptsächlich im Internet etablierte. Durch die wachsende Bedeutung von Internetanwendungen entwickelten sich auch Skriptsprachen mit objektorientierten Funktionen (PHP, Perl).
Heute sind die bekanntesten objektorientierten Sprachen C#, C++ und Java. Diese unterstützen jedoch auch noch den alten prozeduralen Ansatz.
Die einzige Sprache, welche sogar aus Zahlen Objekte macht, ist Smalltalk.
3 Untersuchung der Kernfunktionen
3.1 Klassen
„Eine Klasse ist ein abstrakter Oberbegriff für Dinge (Objekte), die eine gemeinsame Struktur und/oder ein gemeinsames Verhalten haben.“[3]
Bezieht man eine Klasse auf reale Objekte, so kann man eine Person zum Beispiel als Klasse definieren. Eine Klasse wird in Visual C# wie folgt definiert:
Abbildung in dieser Leseprobe nicht enthalten
Die Klasse stellt die wichtigste Grundlage der objektorientierten Programmierung dar.
3.2 Eigenschaften
Eigenschaften bezeichnet man auch als Attribute. Unter diesen Merkmalen versteht man markante Merkmale einer Klasse. Eine Eigenschaft der Klasse Person wäre zum Beispiel ein Vorname, ein Nachname oder ein Alter. Diese Eigenschaften werden global definiert. Aufgrund dieser globalen Definition können alle Methoden auf diese Eigenschaften zugreifen.
Abbildung in dieser Leseprobe nicht enthalten
3.3 Methoden
Die einer Klasse von Objekten zugeordneten Algorithmen bezeichnet man auch als Methoden.[4]
Methoden sind die wichtigsten Elemente in der objektorientierten Programmierung. Sie können Attribute verarbeiten, ändern und vieles mehr. Eine Einschränkung dieses Zugriffes erfolgt durch die Zugriffsmodifikationen. Die Methoden werden durch die Funktionen (à3.4) umgesetzt.
3.4 Funktionen
Funktionen sind sehr nützliche Elemente. Sie kapseln Prozesse, welche immer wieder auftreten können. Hierbei muss der Code nur einmal geschrieben werden und muss bei einer Änderung nur an einer Stelle geändert werden. Funktionen sind angewandte Methoden, welche durch Zugriffsmodifikationen gesteuert werden.
Abbildung in dieser Leseprobe nicht enthalten
Beim Schreiben eines größeren Programmes mit mehreren Entwicklern ist eine klare Strukturierung des Codes notwendig. Hierzu gehört auch, welche Eigenschaften und Methoden von außen gesetzt werden können. Dies kann durch die Zugriffsmodifikationen realisiert werden.
Abbildung in dieser Leseprobe nicht enthalten
3.6 Vererbung
Die Vererbung ist ein fundamentales Leistungsmerkmal eines objektorientierten Systems. Sie stellt die Fähigkeit dar, Daten und Funktionen von einem übergeordneten Objekt an ein untergeordnetes weiterzugeben, also zu vererben.[5]
Eine Klasse kann von einer anderen Klasse erben. Hierbei stehen in der erbenden Klasse alle Eigenschaften und Methoden der Ausgangsklasse zur Verfügung, welche als „public“ oder als „protected“ gekennzeichnet sind. Die Ausgangsklasse sollte daher immer die Allgemeinere darstellen und die erbende Klasse die speziellere.
Abbildung in dieser Leseprobe nicht enthalten
[...]
[1] http://de.wikipedia.org/ (19.09.2010), verschiedene Autoren: Objektorientierte Programmierung. Erscheinungsdatum: 10.09.2010. http://de.wikipedia.org/wiki/Objektorientierte_Programmierung
[2] http://openbook.galileocomputing.de/ (19.09.2010), verschiedene Autoren: C#. Erscheinungsdatum 2002. http://openbook.galileocomputing.de/csharp/kap01.htm
[3] http://www.math.tu-berlin.de/ (19.09.2010), Thomas Slawig: Objektorientierte Programmierung – Grundlagen und –Begriffe. Erscheinungsdatum: Wintersemester 03/04. http://www.math.tu-berlin.de/Vorlesungen/WS03/Programmiermethoden/oo.pdf
[4] http://www.math.tu-berlin.de/ (19.09.2010), Thomas Slawig: Objektorientierte Programmierung – Grundlagen und –Begriffe. Erscheinungsdatum: Wintersemester 03/04. http://www.math.tu-berlin.de/Vorlesungen/WS03/Programmiermethoden/oo.pdf
[5] http://openbook.galileocomputing.de/ (19.09.2010), verschiedene Autoren: C#. Erscheinungsdatum 2002. http://openbook.galileocomputing.de/csharp/kap01.htm
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X.