AGB  ·  Datenschutz  ·  Impressum  







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

Bt=Button, Lb=Label, Ed=Edit

Ein Thema von Cöster · begonnen am 19. Sep 2006 · letzter Beitrag vom 5. Jan 2007
Antwort Antwort
Seite 5 von 6   « Erste     345 6      
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#41

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 21. Sep 2006, 21:16
Zitat von Lemmy1:
Wenn ich den Typen wirklich angeben MUSS, dann hinten angestellt. So heissen meine Controls z.B.
"NameLabel", "NameEdit", "OKButton". Das hat nebenbei den Vorteil, dass alle Name-Controls in der Intellisense zusammen erscheinen. Muss sich jemand anders den Code anschauen, so muss er außerdem keine Abkürzungen lernen, sondern versteht sofort, um welches Control es sich handelt.
Janz jenau so sieht's aus.
Bis auf Controls gibt es keinen Grund den Typ eines Bezeichners in seinem Namen mit hineinzuverschlüsseln. Das sieht nicht nur aus wie der neueste Appetitszügler von Ratiopharm, das liest sich auch so...
Bei Controls sollte der Grund klar sein, die Viecher benehmen sich einfach oftmals grundverschieden, auch wenn die Eigenschaften und Methoden gleich/ähnlich heißen. Und Controls benutzt man eh nur in GUI Code, so what?
"fileNameTextBox" liest sich doch viel schöner als "trshtbrsthcblaFileName". Mag wohl daran liegen dass es richtige Wörter sind und das Hirn nicht den ungarischen Decrypter anwerfen muss.
Bei Feldern bevorzuge ich ein kleines "f", da es sich nicht so aufdrängt. Bei einem großen "F" muss man eine 20-tel Sekunde länger drauf gucken...
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#42

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 21. Sep 2006, 21:20
Zitat von Mackhack:
Zitat von Cöster:
Zitat von MaBuSE:
Da man nie weiß, ob das Team später international wird, werden von vielen Teams gleich alle Benamungen in Englisch gehalten. Das macht die Sache auch einheitlicher, da die VCL ja auch komplett in Englisch ist.
Sehr interessanter Punkt, über den sich sicherlich auch Streiten ließe. Ich fühle mich nämlich auch immer hin- und hergerissen. Einerseits pro Englisch, Grund hast du ja genannt.
Aber das kann man ja auch anders sehen: Wenn man deutsche Namen nimmt, kann man leichter unterscheiden, was von einem selber kommt und was Delphi einem zur Verfügung stellt. Außerdem kommt es dann seltener zu Namenskonflikten.
Ich finde English in diesem Falle nur aus einem Grund besser. Du kommst in der Regel mit nur einem Wort aus um der Variablen zu sagen was sie tut. Im deutschen geht das oft nicht oder es ist ein irrsinnig langes Wort!
Ich finde es immer wieder amüsant, wie man krampfhaft (mit Wörterbuch oder dict.leo.org versucht), einen sinnvollen englischen Ausdruck für das zu finden, was man ja schon in Deutsch ausgedrückt hat. Natürlich bleibt es jedem selbst überlassen, aber mal im Ernst: Wie viele programmieren wirklich in einem internationalen Team?

Wichtig ist zunächst, das ICH das in einigen Jahren noch verstehe. Dann, das meine Kollegen das verstehen. Neulich las ich im Code eines Mitstreiters etwas von "AppendPosts". Klar, es geht um Posten, nur das 'Posts' Pfosten bedeutet. Stände "PostenHinzufuegen", hätte ich das sofort kapiert. Im leo.org steht unter 'Posten' natürlich auch das 'Post', sodaß der gute Mann einfach meinte, das würde schon hinhauen. Ich als halber Brite hab den Code so lange nicht verstanden, bis ich dann auch mal die darunterliegende DB analyisert habe.

Leute, es geht 1. ums Verständnis, 2. ums Verständnis und 3. darum, das Andere den Code verstehen. Dazu gehören gute Bezeichner (geht auch in Deutsch, man muss nur wollen) und sinnvolle Kommentare. Als beste Technik hat sich bei uns das Code-Review erwiesen. Dabei gleichen sich die Nomenklaturen mit der Zeit automatisch an. Gleichzeitig wird der Code übersichtich, weil man einfach keinen Bock mehr hat, dem Anderen zum 1000.ten mal den eigenen Frickelcode zu erklären.

Die 2-buchstabigen Prefixe für Komponenten verwenden wir auch, obwohl 3 besser wären, die haben sich aber nicht durchgesetzt. Dabei sind alle Eingabefelder 'edXXXX', egal ob es ne Checkbox, ein Edit, MaskEdit etc. ist, es wird also eher informativ und nicht so strikt gehandhabt.

Globale Variablen gibt es nicht. Und wenn, dann sind sie so lang, das man sofort weiss, das es ne Krücke ist. Lokale Variablen haben ein Zeichen, das den Typen angibt, mit der Ausnahme der Zählvariablen i,j,k, Pointern p und q, String s und t, sowie Floats a und b, sowie x und y.
Das mit dem 1-Zeichen-Präfix finde ich eigentlich blöd, aber es ist so übersichtlicher, da Methoden und Properties keinen Präfix besitzen und man so sofort weiss, das 'iValue' eine lokale Variable und 'Value' eine Property/Function ist.

Felder beginnen mit fXXXX, Typen mit 'T', Exception mit 'E'.

Nochwas? Enumerationen beginnen mit 3 Buchstaben, die den Enumerationstyp wiederspiegeln ('TMyEnumerations = (menOne, menTwo...')

Usw usw usw.

Wir machen das so seit 10 Jahren und bisher fahren wir ganz gut damit. Heute fällt eine Prämisse mal weg, dafür kommt dann morgen eine dazu. Ich lass mich gerne inspirieren und bringe neue Ideen in das Team ein. So entwickelt man sich ständig weiter.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von Lemmy1
Lemmy1

Registriert seit: 28. Nov 2004
Ort: Ismaning
184 Beiträge
 
Delphi 2006 Professional
 
#43

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 21. Sep 2006, 21:52
Zitat von Elvis:
Zitat von Lemmy1:
Wenn ich den Typen wirklich angeben MUSS, dann hinten angestellt. So heissen meine Controls z.B.
"NameLabel", "NameEdit", "OKButton". Das hat nebenbei den Vorteil, dass alle Name-Controls in der Intellisense zusammen erscheinen. Muss sich jemand anders den Code anschauen, so muss er außerdem keine Abkürzungen lernen, sondern versteht sofort, um welches Control es sich handelt.
Janz jenau so sieht's aus.
Bis auf Controls gibt es keinen Grund den Typ eines Bezeichners in seinem Namen mit hineinzuverschlüsseln. Das sieht nicht nur aus wie der neueste Appetitszügler von Ratiopharm, das liest sich auch so...
Bei Controls sollte der Grund klar sein, die Viecher benehmen sich einfach oftmals grundverschieden, auch wenn die Eigenschaften und Methoden gleich/ähnlich heißen. Und Controls benutzt man eh nur in GUI Code, so what?
"fileNameTextBox" liest sich doch viel schöner als "trshtbrsthcblaFileName". Mag wohl daran liegen dass es richtige Wörter sind und das Hirn nicht den ungarischen Decrypter anwerfen muss.
Bei Feldern bevorzuge ich ein kleines "f", da es sich nicht so aufdrängt. Bei einem großen "F" muss man eine 20-tel Sekunde länger drauf gucken...
Freut mich ja zu hören, dass ich nicht der einzige bin. Also ich nehm deshalb Großbuchstaben, da Pascal-Casing nach Pascal benannt ist und ich es somit als meine historische Pflicht sehe, dass auch zu verwenden...

Was mir noch eingefallen ist: Präfixe muss man natürlich auch bei Enums nehmen, da Enum-Members ja in Delphi leider kaum mehr als globale Konstanten sind (eine Syntax in der Art "TFileOpenMode.Create" gefällt mir besser als "fomCreate"; nebenbei würde sie vor Namensraumkonflikten schützen).
Daniel
www.nemu.com - The N64 Emulator
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#44

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 21. Sep 2006, 21:58
Zitat von Lemmy1:
Was mir noch eingefallen ist: Präfixe muss man natürlich auch bei Enums nehmen, da Enum-Members ja in Delphi leider kaum mehr als globale Konstanten sind (eine Syntax in der Art "TFileOpenMode.Create" gefällt mir besser als "fomCreate"; nebenbei würde sie vor Namensraumkonflikten schützen).
Wobei hier natürlich eh die Empfehlung gelten sollte, dass man Konstanten mit dem Namen der Unit aus der sie kommen qualifiziert, das vermeidet auf jeden Fall immer die versehentlichen (und nicht immer zu sehenden) Konflikte
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#45

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 4. Jan 2007, 14:15
Also ich nehme immer klein Buchstaben, und dann den Anfangsbuchstaben des Wortstamms. (das "T" wird weggelassen)
Ausnahme ist Form => frm
  • edit e
  • label l
  • TreeView tw
  • CheckBox cb
  • ComboBox cb
  • ValueListEditor vle
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#46

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 4. Jan 2007, 14:28
Zitat von xZise:
  • CheckBox cb
  • ComboBox cb
Und wie unterscheidest Du verschiedene Komponenten mit gleichem Prefix z.B. cb

Damit sind ja die Prefixe sinnlos. Und Du könntest sie auch weglassen, wenn sie kein eindeutiges Unterscheidungsmerkmal sind.
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#47

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 4. Jan 2007, 14:31
Zitat von xZise:
  • ...
  • CheckBox cb
  • ComboBox cb
    ...
also kann es sein, dass eine Combobox genauso heist wie eine Checkbox

ich hab mir mittlerweile angewühnt so zu beschriften:

CB_ = ComboBox
Chk_ = Checkbox
Lbl_ = Label
TV_ = Treeview
LV_ =ListView
Btn_ = Button
GrpBox_ = GroupBox
LB_ = ListBox
...

Gruß Frank
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#48

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 4. Jan 2007, 15:27
Also ich habe auch die Erfahrung gemacht, dass Komponenten-Identifizierung sehr wichtig sein kann.

Ich muss hier in der Firma ein Projekt weiterführen, das ich von einem Kollegen übernommen habe.
Es gibt zwar einen Styleguide (angelehnt an den von Borland) bei uns, aber eben dieser Kollege gehört zu den "Faulen" und meint, er sei etwas besseres. Daher heissen die Buttons Button1 bis Button23 und Labels heissen Label1 bis Label34. Da blickt keine Sau mehr durch. Vor allem wenn es dann eine Button7Click und eine Button17Click gibt. Im StyleGuide steht geschrieben, dass die Buttons z.B. BuSpeichern oder BuMachIrgendwas heissen sollen.
Ich würde am liebsten jedesmal wenn ich einen Button3 sehe, zu dem Kollegen laufen und ihm eine runterhauen. Aber dann hätte dieser Kollege lauter blaue Flecken im Gesicht.

Ich bin ja auch nicht der Tipp-Weltmeister, deshalb habe ich CnPack installiert mit dem NamingAssist (oder wie auch immer das Teil heissen mag). Der bringt mir einen Dialog, bei dem der Präfix schon drin steht. Die Präfixe kann man für jede Komponente konfigurieren, ist halt ein Bissle Arbeit.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#49

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 4. Jan 2007, 17:20
Ja ich weiß, dass cb mehrdeutig ist, aber das stört mich kaum, weil es bei mir nicht häufig mehrere "cb"s gibt.
Das Problem liegt nachher z.B. Bei den Labeln.

Beispiel:
Man hat 2 Labels untereinander.
im oberen steht z.B. "Name" und im unteren soll der Name stehen.

Aber wie bennent man sie jetzt
Ich machs da dann immer "lNameLabel" und "lName". Wobei dann "Label" als Suffix heißt, dass es eine art "Bezeichner" oder "Überschrift" ist.

@ Mabuse: sry, dass ich deinen Thread aufgewärmt habe ^^ Aber ich wollte das nochmal mit den Mehrdeutigkeiten klären
@ Mabuse2: Sie sind nicht 100% Eindeutig aber vielleicht 80-90% Und das reicht. Weil ich finde, Btn oder so kann man benutzten, wenn man nichts ständig "Button" schreiben will
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Balu der Bär
(Gast)

n/a Beiträge
 
#50

Re: Bt=Button, Lb=Label, Ed=Edit

  Alt 4. Jan 2007, 17:39
Vor diesem Problem mit dem Labels stehe ich auch grade. Ich habe es so gelöst das ich statischen Labels (dessen Eigenschaften ich nie ändere, z.B. Info-Texte) auch keinen Namen gebe. Da ich diese im Code nie verwende können sie auch Label14 heißen, stört mich ja dann nicht weiter.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 5 von 6   « Erste     345 6      


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 16:12 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