AGB  ·  Datenschutz  ·  Impressum  







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

[Beantwortet] Vererbung OHNE Design

Ein Thema von Mokus · begonnen am 4. Okt 2013 · letzter Beitrag vom 5. Okt 2013
Antwort Antwort
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.588 Beiträge
 
Delphi 12 Athens
 
#1

AW: [Beantwortet] Vererbung OHNE Design

  Alt 4. Okt 2013, 13:25
Aua, da schüttelt es mich aber.
Ist aber besser, als gleich die komplette Vererbung zu zerschießen.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

AW: [Beantwortet] Vererbung OHNE Design

  Alt 4. Okt 2013, 19:24
Man darf nicht Dinge vererben die dann in der abgeleiteten Klasse teilweise ausgehebelt werden!
Nehmen wir mal {Button}.Free - was passiert wohl wenn im übergeordneten Formular auf eben diesen Button zugegriffen wird?
Ok, dann eben nur {Button}.Hide bzw {Button}.Visible := False .
Aber auch hier - wenn im übergeordneten Formular das Property Visible verändert wird dann erscheint je nach äusseren Umständen ein Button wo er nicht hingehört.
Und nach Murphy tritt dieser Fall erst beim Endbenutzer auf und wird bei Tests nicht entdeckt.
Der Button könnte z.B. auch dynamisch über RTTI angesprochen werden ohne dass dies bei Anwendung dieses Tricks bekannt wäre.

Oder man stelle sich vor das Projekt von einem anderen Mitarbeiter übernommen.
Ich kann mir schon vorstellen welche Flüche er von sich gibt wenn er auf diesen unerwarteten Trick stösst.
fork me on Github
  Mit Zitat antworten Zitat
OlafSt

Registriert seit: 2. Mär 2007
Ort: Hamburg
284 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: [Beantwortet] Vererbung OHNE Design

  Alt 5. Okt 2013, 22:47
Ich habe so einen Fall in einem Projekt mit gefühlt 40k Formularen. Sie alle stammen von einem Basisformular ab, das leer ist - bis auf zwei Buttons (OK und CLOSE). An sich nicht schlecht gedacht, aber im Nachhinein dann schlecht gemacht: In 99% der Formulare werden im OnCreate eben diese Buttons unsichtbar gemacht, weil sie nicht benötigt werden (oder der Programmierer, der offensichtlich wenig Ahnung von OOP hatte, wußte es nicht besser).

Der nächste Nachteil zeigte sich dann, als ein Spinoff von diesem Monster gemacht werden sollte und ich zwei Formulare übernehmen wollte... In letzter Konsequenz habe ich dann das Basisformular entfernt, das war weniger Arbeit als ~40% des Monsterprojektes wegen der im Laufe der Jahre entstandenen Abhängigkeiten mit übernehmen zu müssen.

Ich würde hier also definitiv die Vererbung neu gestalten und die Berechnungen in eine eigene Klasse samt eigener Unit verschieben.
  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 15:33 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-2025 by Thomas Breitkreuz