AGB  ·  Datenschutz  ·  Impressum  







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

Coding Style: Benennung von Parametern

Ein Thema von Jazzman_Marburg · begonnen am 4. Jan 2012 · letzter Beitrag vom 29. Okt 2012
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Benutzerbild von Jazzman_Marburg
Jazzman_Marburg

Registriert seit: 2. Aug 2004
359 Beiträge
 
#1

Coding Style: Benennung von Parametern

  Alt 4. Jan 2012, 21:33
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
--- Delphi XE Starter, Windows 8 ---

Geändert von Jazzman_Marburg ( 5. Jan 2012 um 13:33 Uhr) Grund: Beitragstitel präzisiert
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#2

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 22:08
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?

Geändert von Furtbichler ( 4. Jan 2012 um 23:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#3

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 22:15
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.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 4. Jan 2012 um 22:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#4

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 22:23
In der Prozedur selbst, sollen die Parameter nicht geändert werden
Wieso das denn?
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.380 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 22:35
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
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#6

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 22:44
Was ich aber nicht verstehe - wenn die Variablen intern nicht geändert werden sollen, warum diese dann kopieren?
Selbst wenn sie verändert werden, sollte das sich nicht außerhalb der Funktion auswirken.
Das Einzige, was ich mir vorstellen kann, ist dass die unveränderten Werte nochmal in der Funktion benötigt werden
  Mit Zitat antworten Zitat
Benutzerbild von implementation
implementation

Registriert seit: 5. Mai 2008
940 Beiträge
 
FreePascal / Lazarus
 
#7

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 22:46
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 )
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.

Achtung, nicht nachmachen, kann Augenkrebs verursachen!
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#8

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 22:50
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.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.380 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 23:38
Was ich aber nicht verstehe - wenn die Variablen intern nicht geändert werden sollen, warum diese dann kopieren?
Selbst wenn sie verändert werden, sollte das sich nicht außerhalb der Funktion auswirken.
Das Einzige, was ich mir vorstellen kann, ist dass die unveränderten Werte nochmal in der Funktion benötigt werden
Hä? Wenn ich einen Parameter einer Procedure/Function intern verändern will, mit entsprechender nachhaltiger Wirkung, dann kommt ein VAR davor. wenn ich den innerhalb der Proc/Func nicht verändern will, kommt nix davon - dann kann man den zwar intern immer noch verändern ist aber schlechter Stil (finde ich). Um das zu vermeiden und die Speicher-Schiebereien zu beschleunigen kann man noch ein Const davor schreiben.

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
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#10

AW: Coding Style: Benamsung von Parametern

  Alt 4. Jan 2012, 23:46
Wenn ich einen Parameter einer Procedure/Function intern verändern will, mit entsprechender nachhaltiger Wirkung, dann kommt ein VAR davor. wenn ich den innerhalb der Proc/Func nicht verändern will, kommt nix davon - dann kann man den zwar intern immer noch verändern
Das meinte ich doch
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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:35 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