AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?
Thema durchsuchen
Ansicht
Themen-Optionen

Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

Ein Thema von Sherlock · begonnen am 29. Jul 2015 · letzter Beitrag vom 5. Aug 2015
Antwort Antwort
Seite 5 von 7   « Erste     345 67      
Dejan Vu
(Gast)

n/a Beiträge
 
#41

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 31. Jul 2015, 18:21
Wieso definierst Du dir nicht einfach eine Message ('WM_MyMessage') und sendest die per Broadcast an alle Fenster. Deine eigenen Fenster antworten dann auf diese message mit ihrem Handle und einer ID. Daran kannst Du dann im Sender genau den Empfänger ermitteln, den Du willst. Und zwar *ohne* die Caption zu verwenden.

Ich finde das sauberer als mit FindWindow. Aber wenn sich bei Dir die Caption eh nie ändert (oder das Fenster gar unsichtbar ist und nur als Kommunikationsplattform dient), dann ist das mindestens genauso gut.
Da ich mir das CN-Pack installiert habe, werden bei Komponenten auf der Form diese gleich automatisch umbenannt.
Das kann GExperts auch.
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.093 Beiträge
 
Delphi 12 Athens
 
#42

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 2. Aug 2015, 02:22
Nur mal ein Beispiel, damit ihr nicht ständig auf der Wolle-Klasse besteht.

Code:
Ein FormName beginnt immer mit dem Präfix "Frm", z.B. "FrmKunden". Ist es ein Hauptformular heißt die Unit "Main_Kunden.pas", ist es ein modaler Dialog entsprechend "Dlg_Kunden.pas". Bei DB-Anwendungen heißt die entsprechende Datenmodul-Unit "Dat_Kunden.pas". Die Interface-Procedure zum Anzeigen eines Formularess (ich erzeuge generell alle Formulare zur ....
Das wäre bei mir:
Code:
KundenFrm.pas
KundenDm.pas
KundenData.pas
Und schon habe ich lesbaeren Code, der sich auch noch sehr gut mit Codevervollständigung verträgt.
Das meinte ich mit "Klassenähnlich".

Ausserdem habe ich nicht immer die Zeit für jede mögliche Sub-Klasse diese auch auszugliedern.
Manchmal muss es Q&D gehen.
Über diese Schreibweise ist der Zusammenhang dann schonmal vorgemerkt, und ich kann dann später leicht eine Klasse draus machen.

Rollo
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#43

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 2. Aug 2015, 07:22
Leider ist das primäre Programmiermodel von Delphi (TDataModule, Komponenten) nur bedingt geeignet, bei komplexeren Projekten ein objektorientiertes Design durchzuziehen. Da muss man dann eben zu solchen Nomenklaturkrücken greifen.

Ähnlich ist das bei SQL, das auch keine Namespaces und Klassen vorsieht: Hier verwendet man Schemaspaces, um ein wenig Ordnung in das Chaos zu bringen. Das entspricht in etwa dem Bestreben, den Namen der Entität ("Kunde") als Präfix für die unterschiedlichen Objekte zu verwenden.

Leider ist das -zumindest bei SQL- nur bis zu einem gewissen Grad möglich, das man imho keine echten Namespacehierarchien("Foo.Bar.Blub.Bla") aufbauen kann. In Delphi geht das, zumindest bei den Unit-Namen()

Aber immerhin: Ordnung ist das halbe Leben.
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
640 Beiträge
 
Delphi 10.1 Berlin Professional
 
#44

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 2. Aug 2015, 10:43
Das wäre bei mir:
Code:
KundenFrm.pas
KundenDm.pas
KundenData.pas
Und schon habe ich lesbaeren Code, der sich auch noch sehr gut mit Codevervollständigung verträgt.
Das meinte ich mit "Klassenähnlich".
In der ".dpr" sortiere ich die Uses-Liste generell nach Dateinamen und da hab ich die Formulare, Dialoge und Datenmodule gerne schön beisammen. Das ist mir lieber als bei deiner Variante alle "Kunden-Units" beisammen zu haben.

Aber, das soll jetzt keine Kritik oder Abwertung sein. Wie schon mehrfach angemerkt, alles Geschmacksache. Macht jeder so wie er es gewohnt ist, und für richtig hält.

Manchmal muss es Q&D gehen.
Stimmt. Ich habe aber die Erfahrung gemacht, dass sich Q&D niemals lohnt, denn irgendwann geht einem dieser Q&D-Code auf den Geist und dann ändert man doch ab, und dabei passieren dann gerne Flüchtigkeitsfehler. Zumindest geht (bzw. ging) es mir früher so, und darum hasse ich Q&D wie die Pest. Hat unter'm Strich noch nie was gebracht. Außer im Nachhinein Mehrarbeit, Ärger und Stress.
Gruss Otto
Wenn du mit Gott reden willst, dann bete.
Wenn du ihn treffen willst, schreib bei Tempo 220 eine SMS
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.093 Beiträge
 
Delphi 12 Athens
 
#45

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 2. Aug 2015, 13:11
Hallo mm1256,

ich denke das ist alles eine Frage der Abwägung.
Weder das funktionale Konzept noch das Klassenkonzept ist richtig wenn man es übertreibt.
Die Mischung macht es eben.

Nimm z.B. eine StateMachine.
Die mache ich sehr oft mit einfachen
Code:
 case xx of
  1:;
  2:;
  3:;
  end
wenn es für mich noch überschaubar bleibt.
Das ist für mich lesbar genug, natürlich ist das total verpönt ...

Ich könnte natürlich bei jeder Kleinigkeit einen neue Klasse bauen und das mit Methodenpointern lösen, etc. etc.

Ich gebe dir Recht das diese "immer Klassen" Logik vielleicht richtig ist bei
- sehr grossen Projekten
- wenn viele Entwickler beteiligt sind
- wenn das z.B. in Packages benutzt wird die vertrieben werden sollen
etc.

Aber weil ich meistens meinen Code alleine pflegen muss, und weil die Module sehr selten irgendwo weiterverwendet werden können
muss ich halt abschätzen was nützt und was nicht.

Deshalb habe ich einen Mittelweg, der Klassenaufteilung per Namen schon vorzeichnet, und dann bei Bedarf schnell ausgegliedert
werden kann, weil alle zusammenhängenden Teile schnell gefunden werden.

Mich stört schon z.B. die IDE Automatic das GetVariable, SetVariable angelegt wird, und nicht VariableGet, VariableSet.
Letzteres würde die beiden Methoden untereinander platzieren, ersteres verteilt es wild im Unit.

Natürlich habt ihr nur Units die alle auf einen Bildschirm passen, aber soweit bin ich vielleicht noch nicht

Rollo
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#46

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 2. Aug 2015, 13:17
Die Bezeichnung ist aber korrekt. Ein Befehl ist immer ein Imperativ.

Kommando: SetValue
und löst bei Erfolg das
Ereignis: ValueChanged
aus.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.093 Beiträge
 
Delphi 12 Athens
 
#47

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 2. Aug 2015, 13:22
Ich sage ja das es gewöhnungsbedürftig ist, aber es listet mir bei autovervollständigung alles schön zusammen auf,
was sehr stark hilft die Übersicht zu behalten.

Für gutes englisch bekomme ich dann wohl keinen Preis.

Zitat:
Kommando: SetValue
und löst bei Erfolg das
Ereignis: ValueChanged
Genau das ist ein gutes Beispiel was ich meine:

Code:
ValueSet
ValueGet
ValueChanged
Rollo

Geändert von Rollo62 ( 2. Aug 2015 um 13:26 Uhr)
  Mit Zitat antworten Zitat
idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#48

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 4. Aug 2015, 11:39
Zitat:
weil die Module sehr selten irgendwo weiterverwendet werden können
muss ich halt abschätzen was nützt und was nicht.
Ob du da nicht Ursache und Wirkung verwechselst? Je kleiner und elementarer man die Prozeduren gestatet, desto wiederverwertbarer werden sie.
Wobei man es natürlich auch übertreiben kann.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#49

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 4. Aug 2015, 12:23
Zitat:
weil die Module sehr selten irgendwo weiterverwendet werden können
muss ich halt abschätzen was nützt und was nicht.
Ob du da nicht Ursache und Wirkung verwechselst? Je kleiner und elementarer man die Prozeduren gestatet, desto wiederverwertbarer werden sie.
Wobei man es natürlich auch übertreiben kann.
Ist vielleicht auch eine Frage der Sichtweise. Auf der einen Seite willst Du ein "EingangsdatumVerarbeiten" auf der anderen "KonvertUSdate2ISODate". Und die Grenze zwischen aufgabenbezogenen Prozeduren/Funktionen und allg. verwendbaren, ist manchmal sehr fließend.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.798 Beiträge
 
Delphi 12 Athens
 
#50

AW: Präfix oder Suffix - Wie haltet Ihr es mit der Namensgebung?

  Alt 4. Aug 2015, 13:23
Ich mag mich ja irren, aber mein XE2 bietet mir bei der Codevervollständigung alle Bezeichner an, die die von mir getippte Zeichenfolge enthalten, nicht nur die, die damit beginnen. Wo also was steht ist dem Delphi vollkommen egal. Ist das bei den neueren Delphis geändert worden?

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 5 von 7   « Erste     345 67      


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 09:52 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