Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Klassendeklaration im implementation-Abschnitt (https://www.delphipraxis.net/152691-klassendeklaration-im-implementation-abschnitt.html)

RSE 2. Jul 2010 07:47

Delphi-Version: 2005

Klassendeklaration im implementation-Abschnitt
 
Hi!

Ich habe ein Formular, welches nur über eine Funktion aufgerufen werden soll, insofern vergleichbar mit Showmessage, aber wesentlich umfangreicher und mit ganz anderem Inhalt. Von außerhalb der Unit muss also nur die Funktion sichtbar sein. Meiner Meinung nach sollte also auch nur der Funktionskopf im interface-Abschnitt der Unit stehen und der komplette Rest (Uses, Klassendeklaration der Form, Implementierung) im implementation-Abschnitt. Bis jetzt ist mir nur aufgefallen, dass die Quelltextvervollständigung von Delphi 5 damit wohl ein Problem hat, sonst scheint alles zu laufen.

Sind jemandem noch weitere Gründe gegen eine Klassendeklaration im implementation-Abschnitt bekannt?

Deep-Sea 2. Jul 2010 08:15

AW: Klassendeklaration im implementation-Abschnitt
 
Zitat:

Zitat von RSE (Beitrag 1032979)
Sind jemandem noch weitere Gründe gegen eine Klassendeklaration im implementation-Abschnitt bekannt?

Man kann sie so in anderen Units nicht mehr ableiten und erweitern :wink: Etwas, was mich persönlich häufiger bei anderen Entwicklern (hauptsächlich Borland, ähm CodeGear, ... ay ihr wisst schon) extrem stört, wenn einem der Zugriff auf etwas verwehrt wird was man gerade braucht und man es komplett kopieren oder neu schreiben muss - Hauptsache alles sinnlos privat o.ä. deklariert :?

PS: Du kannst den Aufruf z.B. auch als Klassenmethode machen, sofern du das Objekt interface-Abschnitt deklarierst. (Die kennt D5 doch schon, oder? :gruebel:)

mkinzler 2. Jul 2010 08:39

AW: Klassendeklaration im implementation-Abschnitt
 
Man kann sie in anderen Units nicht mal mehr verwenden

mjustin 2. Jul 2010 09:47

AW: Klassendeklaration im implementation-Abschnitt
 
Ich fände es auch besser wenn die Dinge des Formulars, die nur der Designer benötigt, 'versteckt' sind. Da aber alles Published ist, erscheinen in einer Auswahlliste alle visuellen Komponente (und das können viele sein) und die wirklich interessanten Methoden sucht man in CodeInsight wie die Nadel im Heuhaufen :P - es müsste eine Option geben, alles mit published Sichtbarkeit von er Darstellung in CodeInsight auszuschliessen, das würde die Produktivität in der IDE geradezu dramatisch steigern.

RSE 2. Jul 2010 13:22

AW: Klassendeklaration im implementation-Abschnitt
 
Zitat:

Zitat von mkinzler (Beitrag 1033006)
Man kann sie in anderen Units nicht mal mehr verwenden

Genau das ist der Zweck. Die Verwendung soll ausschließlich über die Methode geschehen. Die Klasse soll auch nicht abgeleitet werden. Also alle die Argumente, die ihr anbringt sprechen aus meiner Sicht nicht dagegen es so zu lassen, wie es jetzt ist :-)

Falls sich die Anforderungen ändern, kann die Unit jederzeit entsprechend geändert werden, da sie nur in-House verwendet wird.

mkinzler 2. Jul 2010 13:31

AW: Klassendeklaration im implementation-Abschnitt
 
Über welche Methode?

uligerhardt 2. Jul 2010 14:02

AW: Klassendeklaration im implementation-Abschnitt
 
Wenn das Formular eine DFM besitzt (also ein ganz stinknormales ist), kommt der Formdesigner durcheinander, wenn er die zugehörige Klassendeklaration nicht im interface-Abschnitt findet (AFAIK).


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:20 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