Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.476 Beiträge
 
Delphi 12 Athens
 
#4

AW: Units überkreuzt - ist das ok?

  Alt 6. Jun 2023, 15:50
Mit dem entsprechenden Design lässt sich so eine zyklischen Unit-Referenz in der Regel vermeiden. Obwohl sowas prinzipiell geht, versuche ich das weitestgehend zu vermeiden. Bei Projekten, in denen das über einen langen Zeitraum akzeptiert oder gar bewusst praktiziert wurde, kann das schon mal etwas aufwändiger werden. Bisher hat sich das Auflösen solcher Zyklen aber immer als vorteilhaft dargestellt. Deswegen würde ich hier gleich zu einem entsprechenden Design raten, bei dem keine Zyklen vorkommen.

Bill Meyer geht in seinem Buch Delphi Legacy Projects: Strategies and Survival Guide auf die Nachteile solcher UDC (Unit Dependency Cycles) ein. In einer Präsentation schreibt er:
Zitat:
Long Build Times
•At some point, large projects may begin to suffer long build times.
• These build times are the result of Unit Dependency Cycles (UDCs).
•A UDC is created when UnitA uses UnitB, which uses UnitA.
•In a large project with many UDCs, once the build times begin to
increase, the problem will multiply.
•UDC effect on builds is an exponential burden. The exponent is small,
but any exponent will eventually become a burden.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat