Vorteile Objektorientiert??
(Autor: Α х l, Frage gestellt am Do, 27. Jan 2005)
Hallo,
wo sind die genauen Vorteile der Objektorientierung gegenüber der prozeduralen Programmierung??
Zum einen (denk ich mal) die Modularisierung, d.h. die Wiederverwendbarkeit des Quellcodes.
Welche der folgenden Sprachen sind OO??
- Delphi
- .NET <-- was ist das eigentlich genau für eine Sprache, habe das grad zum erstenmal gelesen?
- C++
- VB
- Java
und zu guter letzt noch eine Frage zum Thema Softwarearchitekturen:
Was sind Architekturen allgemein, was ist folgende Architektur, wer kann Sie mir erklären und was gibts noch für welche?
- Client-Server Two-/Three-Tier-Architektur
So viele Fragen ;)
Danke für Hilfe.
Axl
wo sind die genauen Vorteile der Objektorientierung gegenüber der prozeduralen Programmierung??
Zum einen (denk ich mal) die Modularisierung, d.h. die Wiederverwendbarkeit des Quellcodes.
Welche der folgenden Sprachen sind OO??
- Delphi
- .NET <-- was ist das eigentlich genau für eine Sprache, habe das grad zum erstenmal gelesen?
- C++
- VB
- Java
und zu guter letzt noch eine Frage zum Thema Softwarearchitekturen:
Was sind Architekturen allgemein, was ist folgende Architektur, wer kann Sie mir erklären und was gibts noch für welche?
- Client-Server Two-/Three-Tier-Architektur
So viele Fragen ;)
Danke für Hilfe.
Axl
Artikelbaum anzeigen
Re: Vorteile Objektorientiert??
(Autor: R e і n һ а r d K е r n, Antwort nach 55 Min)
Hallo Axl,
Tier sind ähnlich zu verstehen: v.a. bei Datenbanken sollen Frontend (die Bedienermasken) und Backend (die tatsächliche Datenspeicherung) möglichst unabhängig voneinander gemacht werden, indem auf einer Zwischenebene ein Standard wie SQL verwendet wird. Ich würde also für eine von mir geschriebene Datenbank-Anwendung anstreben, dass sie unabhängig davon arbeitet, ob ein MS-SQL-Server auf Windows oder Oracle auf Unix oder sonstwas dahintersteht.
Gruss Reinhard
wo sind die genauen Vorteile der Objektorientierung gegenüber
der prozeduralen Programmierung??
Zum einen (denk ich mal) die Modularisierung, d.h. die
Wiederverwendbarkeit des Quellcodes.
Das ist Stoff für ganze Lehrbücher, daher fange ich lieber mit der Erklärung der Vorzüge garnicht erst an, ich müsste i.A. ja immer ein Beispiel dazu liefern - aber jeder ist verrückt, der OO nicht benutzt, wenn er mehr programmiert als Küchenherde.der prozeduralen Programmierung??
Zum einen (denk ich mal) die Modularisierung, d.h. die
Wiederverwendbarkeit des Quellcodes.
Welche der folgenden Sprachen sind OO??
- Delphi
- .NET <-- was ist das eigentlich genau für eine Sprache,
habe das grad zum erstenmal gelesen?
- C++
- VB
- Java
Alle - ohne OO sind die älteren Sprachen wie Basic, Fortran, C usw.- Delphi
- .NET <-- was ist das eigentlich genau für eine Sprache,
habe das grad zum erstenmal gelesen?
- C++
- VB
- Java
und zu guter letzt noch eine Frage zum Thema
Softwarearchitekturen:
Was sind Architekturen allgemein, was ist folgende
Architektur, wer kann Sie mir erklären und was gibts noch für
welche?
- Client-Server Two-/Three-Tier-Architektur
Auftrennung der Aufgaben: wenn du die Fläche eines Vierecks berechnen willst, kannst du dir ein Programm herunterladen, oder aber du füllst ein Web-Formular o.ä. aus und die Berechnung erfolgt auf dem Webserver. Das hat den Vorteil, dass auf der Clientseite keine besondere Rechenleistung erforderlich ist (heute kein Problem mehr) und fast jedes Betriebssystem verwendet werden kann. Ausserdem ist die Wartung einfacher: wenn sich in der Lohnbuchhaltung etwas ändert, ist meist nur die Server-Software zu ändern. Das ganze steht verständlicherweise in einem natürlichen Feindverhältnis zur Microsoft-Philosophie.Softwarearchitekturen:
Was sind Architekturen allgemein, was ist folgende
Architektur, wer kann Sie mir erklären und was gibts noch für
welche?
- Client-Server Two-/Three-Tier-Architektur
Tier sind ähnlich zu verstehen: v.a. bei Datenbanken sollen Frontend (die Bedienermasken) und Backend (die tatsächliche Datenspeicherung) möglichst unabhängig voneinander gemacht werden, indem auf einer Zwischenebene ein Standard wie SQL verwendet wird. Ich würde also für eine von mir geschriebene Datenbank-Anwendung anstreben, dass sie unabhängig davon arbeitet, ob ein MS-SQL-Server auf Windows oder Oracle auf Unix oder sonstwas dahintersteht.
Gruss Reinhard
Re^2: Vorteile Objektorientiert??
(Autor: M а r k u ѕ L а һ r, Antwort nach 5 h, 11 Min)
Auch hallo.
Einige Info's möchte ich auch noch geben:
Das Wissen um prozedurale Sprachen ist auch heute noch nicht so veraltet, dass man es schon vergessen müsste (COBOL). Aber gegenüber den linear ablaufenden Programmiersprachen haben die OO-Sprachen einige Vorteile, die der Vorposter schon genannt hatte. Und Nachteile, denn OO-Sprachen sind ohne richtiges Fundament bei den Prozeduralsprachen schwerer zu erlernen.
Eine objektorientierte Sprache erkennt man u.a. dem Umstand, dass Klassen gebildet werden können (aber nicht müssen: C++)
.NET (sprich: dot net)ist übrigens eine Laufzeitumgebung auf M$ Windows Basis. Wird vorrangig von C# (sprich: c sharp) und VB .NET verwendet, Visual Basic mit .NET Routinen. Ist so was wie Java, nur anders ;-)
HTH
mfg M.L.
Einige Info's möchte ich auch noch geben:
Das Wissen um prozedurale Sprachen ist auch heute noch nicht so veraltet, dass man es schon vergessen müsste (COBOL). Aber gegenüber den linear ablaufenden Programmiersprachen haben die OO-Sprachen einige Vorteile, die der Vorposter schon genannt hatte. Und Nachteile, denn OO-Sprachen sind ohne richtiges Fundament bei den Prozeduralsprachen schwerer zu erlernen.
Eine objektorientierte Sprache erkennt man u.a. dem Umstand, dass Klassen gebildet werden können (aber nicht müssen: C++)
.NET (sprich: dot net)ist übrigens eine Laufzeitumgebung auf M$ Windows Basis. Wird vorrangig von C# (sprich: c sharp) und VB .NET verwendet, Visual Basic mit .NET Routinen. Ist so was wie Java, nur anders ;-)
HTH
mfg M.L.
Re^3: Vorteile Objektorientiert??
(Autor: A х l, Antwort nach 5 h, 57 Min)
hallo,
interessant. wie ist das jetz zb. mit VB? man kann doch VB sowohl prozeduarl als auch oo programmierewn, oder?? wie merk ich den unterschied ;)
wenn man module erstellt, ist das schon oo??
axl
wenn man module erstellt, ist das schon oo??
axl
Re^4: Vorteile Objektorientiert??
(Autor: J о . . ., Antwort nach 8 h, 41 Min)
Hi axl,
Das OO Konzept setzt auf dem prozeduralen Konzept auf. Es ist mehr als das. Alle OO Sprachen, die ich kenne erlauben natürlich auch (mehr oder weniger) rein prozedurale Lösungen oder wenigstens einen Mischmasch. In der Tat ist eine OO Lösung nicht für alle Probleme das Beste. Manches (allerdings nicht allso vieles) läßt sich prozedural einfacher und schlellen und, ja, auch eleganter lösen.
Den Unterschied merkst du an der Verwendung von OBJEKTEN. Ein Objekt ist ein programmiertechnisches Konstrukt, welches sowohl Daten als auch Code "besitzt". Objekte sind Instanzen von sog. Klassen, die eben ganz speziell definieren was für Daten und was für Code die Objekte ausmacht. Objekte (bzw. Klassen) sind KEINE Module (bze. umgekehr: Module sind KEINE Klassen).
Um einer Verwirrung um die Begriffe Klasse und Objekt vorzubeugen diese Aussage: Ich bin ein Objekt vom Typ "Mensch", also eine Instanz der Klasse "Mensch". Die Klasse "Mensch" hat ganz bestimmte Eigenschaften (zwei Beine, einen Kopf, Blutdruck, Augen, Stoffwechsel, ...). Die Summe aller dieser Eigenschaften definiert die Klasse "Mensch". Ich als Instanz dieser Klasse habe alle diese Eigenschaften, die für mich ganz zT spezielle Werte haben, zB. ist _mein_ Blutdruck gerade xy und meine Augen sind kurzsichtig usw usw.
Gruß and die anderen Instanzen meiner Klasse,
Jochen
Das OO Konzept setzt auf dem prozeduralen Konzept auf. Es ist mehr als das. Alle OO Sprachen, die ich kenne erlauben natürlich auch (mehr oder weniger) rein prozedurale Lösungen oder wenigstens einen Mischmasch. In der Tat ist eine OO Lösung nicht für alle Probleme das Beste. Manches (allerdings nicht allso vieles) läßt sich prozedural einfacher und schlellen und, ja, auch eleganter lösen.
Den Unterschied merkst du an der Verwendung von OBJEKTEN. Ein Objekt ist ein programmiertechnisches Konstrukt, welches sowohl Daten als auch Code "besitzt". Objekte sind Instanzen von sog. Klassen, die eben ganz speziell definieren was für Daten und was für Code die Objekte ausmacht. Objekte (bzw. Klassen) sind KEINE Module (bze. umgekehr: Module sind KEINE Klassen).
Um einer Verwirrung um die Begriffe Klasse und Objekt vorzubeugen diese Aussage: Ich bin ein Objekt vom Typ "Mensch", also eine Instanz der Klasse "Mensch". Die Klasse "Mensch" hat ganz bestimmte Eigenschaften (zwei Beine, einen Kopf, Blutdruck, Augen, Stoffwechsel, ...). Die Summe aller dieser Eigenschaften definiert die Klasse "Mensch". Ich als Instanz dieser Klasse habe alle diese Eigenschaften, die für mich ganz zT spezielle Werte haben, zB. ist _mein_ Blutdruck gerade xy und meine Augen sind kurzsichtig usw usw.
Gruß and die anderen Instanzen meiner Klasse,
Jochen
Re^2: Vorteile Objektorientiert??
(Autor: M a n f r е d T e ѕ s i n, Antwort nach 5 h, 52 Min)
Hallo Axl,
Gruß, Manfred
Das ist Stoff für ganze Lehrbücher, daher fange ich lieber mit
der Erklärung der Vorzüge garnicht erst an, ich müsste i.A. ja
immer ein Beispiel dazu liefern - aber jeder ist verrückt, der
OO nicht benutzt, wenn er mehr programmiert als Küchenherde.
Wobei ganz wichtig ist zu bemerken: Die Verwendung einer objektorientierten Programmiersprache heißt nicht automatisch, dass auch objektorientiert programmiert wird.der Erklärung der Vorzüge garnicht erst an, ich müsste i.A. ja
immer ein Beispiel dazu liefern - aber jeder ist verrückt, der
OO nicht benutzt, wenn er mehr programmiert als Küchenherde.
Gruß, Manfred
Buchtipp
(Autor: M о r і t z, Antwort nach 5 h, 40 Min)
Hallo,
Grüße,
Moritz
wo sind die genauen Vorteile der Objektorientierung gegenüber
der prozeduralen Programmierung??
Ein klasse Buch dazu ist "Object Oriented Software Construction" von Bertrand Meyer.der prozeduralen Programmierung??
Grüße,
Moritz
Du kannst auf diesen Artikel nicht antworten.
Dieser Artikelbaum ist im Archiv des Experten-Forums von wer-weiss-was zum Thema "Programmierung allgemein" archiviert. Es handelt sich um keine aktuelle Diskussion, daher kann auf die Artikel nicht mehr geantwortet werden.
Folgende Artikel könnten Dich auch interessieren:
Frameworks lohnen sich nicht oder?Architektur Bewerbung und wo?
was ist ia64
hilfe ! wer ist prozessorspezialist?
historismus
x86- und Netburst-Architektur
Grundlegender Unterschied zwischen AMD & Intel
Automatisch Meistertitel durch Dipl.-Ing.?
Stahltrapezblech / Alublech u.ä.
Info Service zum Thema Architektur im Internet
Info Service zum Thema Architektur im Internet
Technikgeschichte
vorheriger Artikelbaum
(Perl, Python oder PHP unter Linux mit GTK?)
(Laufzeitabschätzung von Regex)
nächster Artikelbaum















