![]() |
Delphi-Version: 7
Konstantenlänge
Hallo,
mal eine Formfrage. Wie lang würdert Ihr eine Konstantebezeichnung machen oder was ist von sehr langen Konstantennamen zu halten? Ich habe hier ein Programm vorliegen, da ist keine Bezeichnung unter 70 Zeichen. Das alles in groß. Der Verfasser preist das als superrmoderner Programmierstil. Ich sehe es einfach nur als schlecht lesbar an. Beispiel:
Delphi-Quellcode:
Gruß
const
BENUTZER_EINSTELLUNG_VISUALISIERUNG_PLANUNG_VIRTUELLEAUFTRAEGEMITEINBEZIEHEN = 123; Peter |
AW: Konstantenlänge
Nunja, Großschreibung bei Konstanten verwende ich auch, außerdem sollte der Bezeichner auf den Zweck bzw. Inhalt der Konstanten schließen lassen. 70 Zeichen und mehr hingegen halte ich aber für nicht mehr zweckmäßig.
|
AW: Konstantenlänge
Hi,
und ich gebe dir damit recht. Ich empfinde das persönlich auch als bescheiden lesbar, sobald die Konstante irgendwo im Code, zB einer if-Abfrage, benutzt wird. Lediglich bei der Deklaration ist das schön, weil absolut eindeutig. Ich denke, dass ich schon Konstanten mit recht langen Namen vergebe, meine "Schmerzgrenze" liegt so bei ca 30Zeichen. Großschreibung und Unterstriche nutze ich allerdings auch! Gruß |
AW: Konstantenlänge
Konstanten eines bestimmten Bereichs werden bei mir in jeweils einer Unit zusammengefasst.
Die Namen bischen kürzen und schon ist es lesbar.
Delphi-Quellcode:
unit BENUTZER_EINSTELLUNG_VISUALISIERUNG_PLANUNG;
interface const VIRTUELLE_AUFTRAEGE_EINBEZIEHEN = 123; |
AW: Konstantenlänge
Was für die Namen von Variablen gilt, sollte auch für Konstanten gelten: möglichst kurz und aussagekräftig
|
AW: Konstantenlänge
Ich finde komplette Grossschreibung sehr unleserlich. Ich verwende Grosskleinschreibung ohne Unterstriche.
IchBinEineVariableOderEineKonstante finde ich besser lesbar als ICH_BIN_EINE_VARIABLE_ODER_EINE_KONSTANTE Ist aber letztendlich Geschmacksache. Maximale Länge ist ca. 40 Zeichen. Grade bei Zahlen, mit denen auch gerechnet wird, halte ich die Bezeichner kurz, weil damit ja auch gerechnet wird. Man stelle sich eine Formel vor, die 5 Variablen mit je einer Länge von je 70 Zeichen hat. Völlig unleserlich. |
AW: Konstantenlänge
Also im Prinzip ist alles über der halben "Bildschirmbreite" (standardmäßig so 80-120 Zeichen) unleserlich, denn man muß ja bedenken,
daß diese Konstantan auch irgendwo verwendet werden und wenn man nun 2 Konstantan an eine Prozedur übergibt, dann sollten die Einrückung, Leerzeichen, Prozedurname UND diese Konstanten in eine Zeile passen. Außerdem haben zu lange Konstantennamen, auch wenn sie "sprechender"/verständlicher und übersichtlicher zu scheinen mögen, dennoch einen unübersichtlich Beigeschmack.
Delphi-Quellcode:
.
MeineMachDiesesUndJenesProzedur(DerErsteParameterMitDenEinstellungen, BENUTZER_EINSTELLUNG_VISUALISIERUNG_PLANUNG_VIRTUELLEAUFTRAEGEMITEINBEZIEHEN, BENUTZER_EINSTELLUNG_VISUALISIERUNG_STEUERUNG_VIRTUELLEAUFTRAEGEMITEINBEZIEHEN);
Oder sieht hier jemand auf die Schnelle, was hier gemacht wird? Man stelle sich alles in einer Zeile vor und versuche möglichst schnell den Unterschied zwischen den fast gleich klingenden Konstanten zu finden, denn je mehr Zeichen, umso weniger fallen kleine Unterschiede auf.
Delphi-Quellcode:
.
MachDieses(Parameter, VIRT_BEN_PLAN, VIRT_BEN_STRG);
Im Notfall kann man bei der Deklaration und/oder in der Dokumentation eine ausführlichere Beschreibung zur Konstante angeben. Ansonsten nehm ich persönlich für Typen, Prozeduren, Variablen und Konstanten CamelCase, jenachdem mit einem passenden Präfix. (für Typen T und passend dazu das P und für Konstanten meist ein c) Diese ALLES_GROß_MIT_UNTERSTRICH-Variablen nutze ich eigentlich nur bei APIs, wo diese Konstanten irgendwo dokumentiert sind, um keine doppelten (verwirrenden) Bezeichner zu bekommen. Denn hier *_VIRTUELLEAUFTRAEGEMITEINBEZIEHEN hab ich immer Probleme dieses zu lesen und vorallem schnell zu verstehen, da es keine Übergänge gibt. |
AW: Konstantenlänge
Ansonsten mit ein wenig englisch
Code:
USER_SET_VIS_PLAN_INCLUDEVIRTUALORDER
|
AW: Konstantenlänge
Konstanten schreibe ich grundsätzlich mit Großbuchstaben, damit ich sie von Variablen unterscheiden kann. Und diese langen Bezeichnungen sind eher kontraproduktiv, da sie man nicht mit einem Blick erfassen kann. Und was sollen das für lange Zeilen werden, wenn sie im Code verwendet werden?
|
AW: Konstantenlänge
Ich halte es mal mit Martin Fowler, welcher meinte:
- Je größer der Scope einer Variablen / Konstanten / Funktion umso aussagekräftiger (und damit einhergehen auch umso länger) sollte der Name sein. - |
AW: Konstantenlänge
Eigntlich sollte es eher so sein:
aussagekräftig/verständlich und dennoch möglichst kurz und übersichtlich - je länger etwas ist, umso länger braucht man für das verstehen/erkennen - sind die Namen nicht aussagekräftig genug, dann weiß man nicht worum es geht (und müßte eventuell erst irgendwo nachlesen, worum es geht, falls es überhaupt irgendwo erwähnt wurde) Zitat:
|
AW: Konstantenlänge
@himitsu Muss das sein, dass du das Seitenlayout vergewaltigst?
Krieg ich ja Augenkrebs |
AW: Konstantenlänge
Man kann das ganze auch wie folgt zusammenfassen:
Zitat:
|
AW: Konstantenlänge
@Sir Rufo: Ja :stupid:
Man muß es doch ausnutzen, daß jetzt nicht mehr das komplette Seitenöayout geschrottet wird, sondern nur noch einzelne Beitragt. :angle2: Weißt du wie schwer das war dieses nicht umbrechen zu lassen und den sonstigen Text dennoch manuell umzubrechen? |
AW: Konstantenlänge
Auf meinem iPad muss ich hier jetzt aber ständig zoomen.
Bitte nimm da etwas Rücksicht auf mich ... :) |
AW: Konstantenlänge
Ich mache es auch wie hier allgemein schon öfter angesprochen wurde:
Ich schreibe Groß und mit _. Jedoch graust es mich schon, Konstanten zu nutzen, die länger als dieses hier sind:
Delphi-Quellcode:
_PAR_ENTERS_SHORT
|
AW: Konstantenlänge
Zitat:
Ich habe nicht den Eindruck, das
Delphi-Quellcode:
besonders sprechend ist. Das ist irgendwie der Namensraum mit in den Konstantennamen geschrieben.
const
BENUTZER_EINSTELLUNG_VISUALISIERUNG_PLANUNG_VIRTUELLEAUFTRAEGEMITEINBEZIEHEN = 123; Wie wäre es denn mit einer Unit BenutzerEinstellungVisualisierungPlanung, in der die Konstante VIRTUELLE_AUFTRAEGE_EINBEZIEHEN zu finden ist. In der Unit könnten dann alle Konstanten liegen, die im Moment mit BENUTZER_EINSTELLUNG_VISUALISIERUNG_PLANUNG_ beginnen. Sollte die Konstante allerdings nur in einer Unit benötigt werden, die sich mit Visualisierung der Planung befasst, dann könnte man sich doch auf BENUTZER_VIRTUELLE_AUFTRAEGE_EINBEZIEHEN einigen. @Himitsu: Man muss ja nicht alles in eine Zeile schreiben:
Delphi-Quellcode:
Außerdem wäre schon eine Funktion mit mehr als 2 Parametern suboptimal :twisted:
MeineMachDiesesUndJenesProzedur(
DerErsteParameterMitDenEinstellungen, BENUTZER_VIRTUELLE_AUFTRAEGE_EINBEZIEHEN, BENUTZER_VIRTUELLE_AUFTRAEGE_EINBEZIEHEN); |
AW: Konstantenlänge
Zitat:
(das war nicht zweimal die Selbe :mrgreen: ) |
AW: Konstantenlänge
Gemein :wall:
Delphi-Quellcode:
Nagut, besonders toll ist das immer noch nicht :mrgreen:
MeineMachDiesesUndJenesProzedur(
DerErsteParameterMitDenEinstellungen, BenutzerEinstellungVisualisierungPlanung.VIRTUELLE_AUFTRAEGE_EINBEZIEHEN, BenutzerEinstellungVisualisierungSteuerung.VIRTUELLE_AUFTRAEGE_EINBEZIEHEN); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:28 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