AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Interface "überladen" vorhandener Methoden?
Thema durchsuchen
Ansicht
Themen-Optionen

Interface "überladen" vorhandener Methoden?

Ein Thema von Mavarik · begonnen am 29. Jan 2014 · letzter Beitrag vom 31. Jan 2014
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#21

AW: Interface "überladen" vorhandener Methoden?

  Alt 30. Jan 2014, 13:19
Wenn bei aktivem ARC die Interfacereferenzen ans ARC weitergeleitet werden,
dann müsste man ja bei allen Interfaces, welche "anders" zählen, ja das ARC deaktiviert werden.
So gesehn, wurde das dann doch falschrum implementiert, weil das ARC hätte besser seine Referenzen ans Interface weitergeben müssen?
Wie soll ARC an Interfaces irgendwas weitergeben. Die Referenzzählung bei Interfaces ist ein Implementierungsdetail der implementierenden Klasse.
Wenn man es genau betrachtet und berücksichtigt, dass man seinen Code nicht von Implementierungsdetails abhängig machen soll, bewegt man sich bei der Referenzzählung und Programmierung gegen Interfaces genau genommen schon ziemlich in einer Grauzone.

Gegen ein grausames Design, in dem man Objekt und Interface Referenzen bunt vermischt und keinen Plan mehr über die genauen Lebenszyklen und Scopes der Dinger hat, ist noch kein Kraut gewachsen. Man könnte jetzt wieder für einen GC argumentieren, aber auch den kann man verwirren, so dass ohne ihm auf seltsamste Weisen unter die Arme zu greifen, Speicherlecks entstehen.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.158 Beiträge
 
Delphi 10 Seattle Enterprise
 
#22

AW: Interface "überladen" vorhandener Methoden?

  Alt 30. Jan 2014, 13:24
Oder anders herum. Es ist noch nicht allzu lange her, da hat der Java-GC immer gerne die Singletons gefressen
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.158 Beiträge
 
Delphi 10 Seattle Enterprise
 
#23

AW: Interface "überladen" vorhandener Methoden?

  Alt 31. Jan 2014, 18:57
Nja, wenn die Objktreferenzen und die Interfacerferenzen beide mitzählen ... wer hat dann die Kontrolle über die Freigabe des Objekts?
Wenn da keiner aufpasst, müsste doch zwangsläufig der freigeben, welcher zuerst bei 0 ankommt.
Hier noch O-Ton Marco Cantù aus White Paper: The Delphi Language for Mobile Development

Zitat:
In the past, given that interface variable and standard object variables used different memory management models, it was generally suggested to avoid mixing the two approaches (like using an interface and an object variable or parameter to refer to the same object in memory).

With the new ARM compilers with ARC, the reference counting between object and interface variables is unified, so you can mix the two easily. This makes using interfaces more powerful and flexible on Delphi ARC platforms than it is on Delphi non-ARC platforms.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 11:00 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