![]() |
Coding Style: Benennung von Parametern
Hallo.
Klingt vielleicht ein wenig komisch, aber ich würde gern wissen wie ihr es mit der Benamsung von Variablen in folgenden Fall haltet: Eine Prozedur hat viele Parameter, z.B. ein ganzes Dutzend (bitte kein Streit darüber, ob das sinvoll ist, oder das Schnittstellen klein sein sollten etc.). In der Prozedur selbst, sollen die Parameter nicht geändert werden, also werden 12 weitere Variablen in der Prozedur benötigt die mit den Werten der Eingangsparamter versorgt müssen. Wie haltet ihr nun die Eingangsparameter von den internen (oder besser: lokalen) Variablen auseinander? Schreibt ihr z.B. ein "prm_" vor jeden Eingangsparameter um diese Variable als "Eingangsparameter" zu kennezeichen? Also in etwa: procedure Tuwas(prm_Hoehe, prm_Breite: integer) var Hoehe, Breite: integer begin Hoehe := prm_Hoehe Breite:= prm_Breite Kann ja schon unübersichtlich werden, wenn wie gesagt, die Schnittstelle viele (z.T. lange) Variablennamen hat. Auf der anderen Seite ist folgende Lösung ja auch nicht gerade sinnvoller: procedure Tuwas(H, B: integer) var Hoehe, Breite: integer begin Hoehe := H Breite:= B Habt ihr da einen Tipp, wie man es macht, dass man a) die Dinger auseinanderhalten kann, aber sich auch nicht 'nen Wolf schreibt? Danke & Gruß Jazzman |
AW: Coding Style: Benamsung von Parametern
Es gibt Leute, die packen ein 'a' vor einen Parameter. Aber heutzutage braucht man das eigentlich nicht.
Wenn Du nämlich richtig sauber programmierst, hast du nur 0-4 Parameter und so kleine Prozeduren, das man sofort sieht, was Parameter ist und was nicht. Wenn du Parameter kennzeichnen willst, tust du das dann auch für Prozeduren, Funktionen, Methoden, globale Variablen, lokale Variablen, Felder usw? |
AW: Coding Style: Benamsung von Parametern
Und ich würde es andersrum machen.
Die öffentlichen Schnittstellen bekommen eine ordentliche Benamung, also hier wären es die Parameter und nicht die lokalen Variablen. Wenn sich der Typ der Parameter nicht ändert, dann kann man diese doch intern weiterbenutzen und muß keine sinnlose Kopie verwenden. Ich weiß nicht, aber mit S finde ich den Namen irgendwie komisch. :gruebel: |
AW: Coding Style: Benamsung von Parametern
Zitat:
|
AW: Coding Style: Benamsung von Parametern
Hi,
Übergabem erhalten ein großes A davor - da habe ich mich in langen Jahren an Delphi angeglichen. Innerhalb der Procedure gibt es dann lokale Variablen mit ungarischer Notation. Was ich aber nicht verstehe - wenn die Variablen intern nicht geändert werden sollen, warum diese dann kopieren? Spätestens hier würde ich mir echt überlegen ob das so korrekt ist was da abgeht... Grüße |
AW: Coding Style: Benamsung von Parametern
Zitat:
Das Einzige, was ich mir vorstellen kann, ist dass die unveränderten Werte nochmal in der Funktion benötigt werden :gruebel: |
AW: Coding Style: Benamsung von Parametern
Wenn es eine öffentliche Methode ist, bekommen die Parameter bei mir in der Regel einen aussagekräftigen Namen und ein A davor. Bei internen schlamp ich öfter mal rum, und kürze so ab, dass ich es nur noch selbst verstehe (manchmal sogar das nicht mehr :oops:)
Variablen heißen bei mir eh meist sowas wie i, j, x, y, m, n, s, t, s1, s2, idx, str, dx, a3 und so 'nen Kram halt, und die verwende ich innerhalb der Methode auch gern für unterschiedliche Zwecke wieder.:mrgreen: Achtung, nicht nachmachen, kann Augenkrebs verursachen! :stupid: |
AW: Coding Style: Benamsung von Parametern
Ich halte es im Prinzip so, dass ich private Klassenvariablen mit F "markiere", also F also Präfix verwende, Beispiel FHeight, und bei Parametern (meistens) ein A voranstelle.
Ich muss hier allerdings dazu sagen, dass, nachdem ich neulich das Buch Clean Code (ISBN-13: 978-3826655487) gelesen habe, eher dazu tendieren würde das A wegzulassen! Das hat den Grund, dass ich in der Zwischenzeit dazu tendiere wesentlich kompaktere Klassen und Methoden zu programmieren, ebenso darauf achte, welche Namen ich für Methoden und Variable benutzt. Allein aufgrund dieses Programmierstils komme ich eigentlich nie in die Versuchung eine lokale Variable wie einen Parameter benennen zu wollen. |
AW: Coding Style: Benamsung von Parametern
Zitat:
Ich verstehs einfach nicht - vielleicht liegts an der Uhrzeit - warum übergeb ich Parameter an eine Proc/Func ohne die Absicht diese zu verändern und kopiere die in lokale Variabeln (mit dem selben Namen) um diese doch zu verändern? Wenn es darum ginge z.B. einen String auseinander zu nehmen in einer Schleife, könnte ich das noch ein winzig kleines Stück nachvollziehen - wobei der Arbeitsstring lokal in der Proc/Func definitiv anders heißt als der Übergabeparameter, einfach schon aus dem Grund weil da mit der Zeit einfach was anderes drin steht... Grüße |
AW: Coding Style: Benamsung von Parametern
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:53 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