Object orientierten Prinzipien


Advertisements


Grundsätze der objektorientierten Systemen

Der konzeptionelle Rahmen der objektorientierten Systemen ist basiert auf dem Objektmodell . Es gibt zwei Kategorien von Elementen in einem objektorientierten System:

Dur Elemente : Durch dur es ist gemeint, dass, wenn ein Modell nicht eines dieser Elemente haben, hört es auf sein objektorientiert. Die vier dur elemente sind:

  • Abstraktion
  • Encapsulation
  • Modularität
  • Hierarchie

Minor Elements : Durch minor es ist gemeint, dass diese Elemente sinnvoll sind, aber nicht unverzichtbarer Teil des Objektmodells. Die drei minor Elemente sind:

  • Typing
  • Concurrency
  • Persistence

Abstraction

Abstraktion bedeutet, sich auf die wesentlichen Merkmale eines Elements oder Objekt in OOP konzentrieren, ohne auf seinen fremden oder zufälligen Eigenschaften. Die wesentlichen Merkmale sind in Bezug auf den Kontext, in dem das Objekt verwendet wird.

Grady Booch hat Abstraktion definiert wie folgt:

"Eine Abstraktion zeigt die wesentlichen Merkmale eines Objektes, die es von allen anderen Arten von Objekten und somit scharf definierten Grenzen konzeptionellen, bezogen auf die Perspektive des Betrachters."

Beispiel: Wenn eine Klasse Schüler ist so konzipiert, die Attribute enrolment_number, Name, natürlich, und Adresse enthalten sind, während Eigenschaften wie Pulse_Rate und size_of_shoe werden eliminiert, da sie irrelevant in der Perspektive des Bildungs ​​sind Institution.

Encapsulation

Encapsulation ist der Prozess der Bindung beide Attribute und Methoden zusammen in einer Klasse. Durch Verkapselung können die internen Details einer Klasse von außen verborgen. Die Klasse hat Methoden, die Benutzerschnittstellen, mit denen die Leistungen der Klasse bereitgestellt werden, können verwendet werden kann.

Modularity

Modularität ist das Verfahren zur Zersetzung eines Problems (Programm) in einen Satz von Modulen, um die gesamte Komplexität des Problems zu verringern. Booch hat Modularität wie folgt definiert:

"Modularität ist die Eigenschaft eines Systems, das in eine Reihe von zusammenhängenden und lose gekoppelte Module zerlegt worden ist."

Modularität ist untrennbar mit Kapselung verlinkt. Modularität kann als eine Möglichkeit der Zuordnung eingekapselt Abstraktionen in reale, physische Module mit hoher Kohäsion innerhalb der Module und deren Zwischenmodul-Interaktion oder Kopplung ist gering visualisiert werden.

Hierarchie

In Grady Booch Worten, "Hierarchie ist das Ranking oder Bestellung der Abstraktion". Durch Hierarchie kann ein System aus miteinander verbundenen Teilsystemen, die ihre eigenen Teilsysteme können und so weiter, bis die kleinsten Level-Komponenten erreicht werden vorgenommen werden. Es arbeitet nach dem Prinzip des "Teile und herrsche". Hierarchie ermöglicht Wiederverwendbarkeit.

Die beiden Arten von Hierarchien in OOA sind:

  • "IS-A" Hierarchie : Es definiert die hierarchische Beziehung in Vererbung, wobei von einer Superklasse, eine Reihe von Unterklassen abgeleitet werden können, die wiederum haben können Unterklassen usw. Zum Beispiel, wenn wir leiten Sie eine Klasse Rose aus einer Klasse Blume, können wir sagen, dass eine Rose "ist-a" Blume.

  • "PART-OF" Hierarchie : Es definiert die hierarchische Beziehung in die Aggregation durch die eine Klasse kann von anderen Klassen zusammengesetzt sein. Beispielsweise ist eine Blume von Kelchblätter, Blütenblätter, Staubblätter, Fruchtblatt und zusammengesetzt. Es kann gesagt werden, dass ein Blütenblatt ist ein "Teil-von" Blume.

Typing

Nach der Theorie von abstrakten Datentyp ist ein Typ einer Charakterisierung einer Gruppe von Elementen. In OOP wird eine Klasse als eine Art mit Eigenschaften sich von allen anderen Arten visualisiert. Typing ist die Vollstreckung von der Vorstellung, dass ein Objekt eine Instanz einer einzigen Klasse oder Typ. Es erzwingt auch, dass Gegenstände von unterschiedlichen Arten können im allgemeinen nicht gegeneinander ausgetauscht werden; und kann nur in einem sehr eingeschränkten Weise ausgetauscht, wenn es unbedingt erforderlich ist, um dies zu tun

Die beiden Arten von Typisierung sind:

  • Strong Typing :. Hier wird die Operation an einem Objekt zum Zeitpunkt der Zusammenstellung überprüft wird, wie in der Programmiersprache Eiffel

  • Weak Typing : Hier können Nachrichten an die jede Klasse geschickt werden. Die Operation wird nur bei der Ausführung überprüft wird, wie in der Programmiersprache Smalltalk.

Concurrency

Concurrency in Betriebssystemen ermöglicht gleichzeitig mehrere Aufgaben oder Prozesse. Wenn ein einzelner Prozess in einem System vorhanden ist, wird gesagt, dass es einen einzigen Teilprozess der Kontrolle. Allerdings haben die meisten Systeme mehrere Threads, etwas aktiv, einige Warte für CPU, einige aufgehängt, und einige beendet. Systeme mit mehreren CPUs von Natur ermöglichen gleichzeitige Threads der Kontrolle; aber Systeme auf einer einzigen CPU ausgeführt werden, verwenden geeignete Algorithmen, um gerechte CPU-Zeit auf das Gewinde geben, um so die Parallelität zu ermöglichen.

In einer objektorientierten Umgebung, gibt es aktive und inaktive Objekte. Die aktiven Objekte haben unabhängige Threads der Steuerung, die gleichzeitig mit einem Gewinde von anderen Objekten ausführen können. Die aktiven Objekte synchronisiert miteinander als auch mit rein sequentiellen Objekten.

Persistence

Ein Objekt befindet sich in einem Speicherraum und existiert für einen bestimmten Zeitraum. In traditioneller Programmierung, die Lebensdauer eines Objekts war typischerweise die Lebensdauer der Ausführung des Programms, das sie erzeugt. In Dateien oder Datenbanken ist es die Aufgabe Lebensdauer länger als die Dauer des Prozesses der Erzeugung des Objektes. Diese Eigenschaft, durch die ein Objekt bleibt auch bestehen, nach seinem Schöpfer aufhört zu existieren als Persistenz bekannt.



Advertisements