AGB  ·  Datenschutz  ·  Impressum  







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

Warum ARC abgeschafft?

Ein Thema von stahli · begonnen am 29. Mai 2020 · letzter Beitrag vom 2. Jun 2020
Antwort Antwort
Der schöne Günther

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

AW: Warum ARC abgeschafft?

  Alt 29. Mai 2020, 14:30
Ich arbeite nur noch mit Interfaces und finde ARC extrem angenehm.
Da gilt ja auch weiterhin ARC, du hast also nichts verloren 😎

Einziger Nachteil ist das doppelte Schreiben von Interface- und Klassendeklarationen.
Interfaces haben auch so noch ganz andere Vorteile, außer der automatischen Freigabe. Keine Bange, es lohnt sich. Und wer nicht gerne viel tippt ist bei Pascal sowieso falsch

Was spricht gegen ARC?
Dass ein Großteil der Delphi-Bibliotheken (dazu gehört z.B. auch die komplette VCL) explizit auf ein manuelles Verwaltungssystem setzt? Code der mit irgendwelchen Ownern und manueller Freigabe von Objekten entstanden ist kannst du nicht auf ARC bringen. Den Aufwand tut sich niemand an.

Aber wie seht Ihr die Abschaffung von mobilem ARC?
Gut dass es endlich einheitlich ist. Ich hatte 2016 mal einen Versuch gewagt mit dem RAD Studio was für iOS/Android zu machen, viel Code ließ sich überhaupt nicht oder nur unter zu großem Aufwand wiederverwenden.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

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

AW: Warum ARC abgeschafft?

  Alt 29. Mai 2020, 14:53
Die Akzeptanz von ARC war von vornherein eher mau.

Das lag zum einen daran, dass man ebend nicht einfach seinen Krams nehmen konnte und es unter ARC lief sondern sich mitunter ein Arm und Bein ausreißen musste.

Zusätzlich war die Implementierung von ARC sauschlecht, was Performance angeht dazu nur 2 Dinge erläutert: 1. die ObjAddRef und ObjRelease Methoden waren virtuell, somit äußert schlecht zu Optimieren für die Häufigkeit der Aufrufe 2. viele Parameter in RTL und FMX waren nicht const, somit wurden die zuvor erwähnten Methoden öfter als notwendig aufgerufen.

Es fehlten wichtige Features, um ohne riesengroße Hacks fehlerfrei entwickeln zu können, wie z.B. die Möglichkeit, anzugeben, was in anonymen Methoden wie gecaptured werden sollte (siehe https://quality.embarcadero.com/browse/RSP-10176 und https://quality.embarcadero.com/browse/RSP-16251)
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (29. Mai 2020 um 14:56 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz