AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Observer-Pattern

Ein Thema von oki · begonnen am 5. Sep 2006 · letzter Beitrag vom 5. Sep 2006
Antwort Antwort
Seite 2 von 2     12   
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#11

Re: Observer-Pattern

  Alt 5. Sep 2006, 11:12
Zitat von oki:
somit scheint es Sinn zu machen in das Thema Intervaces rein zu schauen.
Da geb ich Dir und generic auch völlig recht (dem marabu sowieso immer ), ich habe die nur so weit aussen vor gelassen, weil die in Delphi etwas Stiefmütterlich behandelt werden. Das liegt wiederum nur daran, dass Delphi keine "nativen" Interfaces hat sondern auf die von COM zurückgreift. In Java kannst du Variablen die vom Typ ein Interface sind genauso behandeln wie jedes andere Objekt auch, in Delphi ist das Casten (Objekt -> Interface) nicht so ohne weiteres möglich.

Aber auch da findest du sicherlich eine Menge in der DP.

Ansonsten freut es mich, wenn es dir geholfen hat!
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#12

Re: Observer-Pattern

  Alt 5. Sep 2006, 11:17
ohne jetzt genau (aus Zeitgründen) alles gelesen zu haben, möchte ich sagen, dass viele Design Patterns ihre Berechtigung haben, das Observer Pattern aber gerade in Delphi nicht !
Es macht den Quelltext schlechter änderbar, ist umständlich und bei näherer Betrachtung sinnlos.
Ich würde es nur in Sprachen verwenden, wo Mehrfachvererbungen möglich sind.
Um den gleichen Zweck zu erfüllen (eine Benachrichtigung) , würde man in Delphi einfache Event Multicaster nehmen.
(und in .NET ja schon fester Bestandteil des Konzeptes)
Event Multicaster sind sehr simpel und nicht so starr im Konzept, wie ein festes Observer Pattern mit der Vererbungslösung ..
(auf Deutsch, Du verteilst die Events einfach auf mehrere Objekte, die von irgendeinem Event benachrichtig werden sollen und wollen)

Gruß stoxx
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.174 Beiträge
 
Delphi 10.4 Sydney
 
#13

Re: Observer-Pattern

  Alt 5. Sep 2006, 11:18
Zitat von Der_Unwissende:
Das liegt wiederum nur daran, dass Delphi keine "nativen" Interfaces hat sondern auf die von COM zurückgreift.
Da bist du etwas unwissend. Interfaces wurden in Delphi zwar wegen COM ergänzt, aber man kann auch mit Interfaces arbeiten ohne mit COM zu arbeiten.

Zitat von Der_Unwissende:
In Java kannst du Variablen die vom Typ ein Interface sind genauso behandeln wie jedes andere Objekt auch, in Delphi ist das Casten (Objekt -> Interface) nicht so ohne weiteres möglich.
Versteh ich jetzt nicht ganz? Wenn eine Klasse ein Interface besitzt kann man doch genauso damit arbeiten.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#14

Re: Observer-Pattern

  Alt 5. Sep 2006, 11:29
Zitat von Bernhard Geyer:
Da bist du etwas unwissend. Interfaces wurden in Delphi zwar wegen COM ergänzt, aber man kann auch mit Interfaces arbeiten ohne mit COM zu arbeiten.
Steh ich doch zu Wieder was gelernt, nur finde ich werden Delphi Interaces schon anders verwendet als andere Delphi Konstrukte.

Zitat von Bernhard Geyer:
Versteh ich jetzt nicht ganz? Wenn eine Klasse ein Interface besitzt kann man doch genauso damit arbeiten.
Hm, sehe auch gerade nicht mehr, wo ich mal ein Problem hatte. Müsste ich noch mal raussuchen, jetzt geht es auch hier gerade. War mir sicher da schon mal eine Fehlermeldung über nicht kompatible Typen bekommen zu haben. Dabei war es definitiv kein Interface dass an zwei Stellen gleich definiert wurde (o.Ä.). Auch eine GUID war drin usw. Komisch, ich nehm jedenfalls erstmal alles zurück was ich gesagt habe! Sorry, mein Fehler!!!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz