Frage, schreibweise verschiedener Variablen - Typen

Übersicht Sonstiges Smalltalk

Neue Antwort erstellen

Trust

Betreff: Frage, schreibweise verschiedener Variablen - Typen

BeitragFr, Mai 28, 2010 19:09
Antworten mit Zitat
Benutzer-Profile anzeigen
(Hoffe das ist hier richtig, wüsste nicht wo es sonst reinpassen könnte)

Hallo liebe Gemeinde,

habe mal eine kleine und vielleicht ungewöhnliche Frage:

Welche Schreibweisen für Variablen-typen, Konstanten, Präprozessor- anweisungen und Namenskonventionen sind am häufigsten bzw. am gängigsten anzutreffen.

Mir geht es einfach nur darum das ich mir die gängigste Schreibweise
angewöhne um mich später in meinem und vor allem auch fremden code besser zurechtzufinden.

Um Beispiele zu nennen was ich meine:

viele schreiben Lokale Variablen meistens mit einem kleinen Anfangsbuchstaben um auf den ersten Blick zu erkennen das es sich um eine Lokale Variable handelt : Code: [AUSKLAPPEN]
int meineVar;


Für Präprozessor directiven meistens alles Gross: Code: [AUSKLAPPEN]
#define BEISPIEL




zu den Namenskonventionen:


werden diese häufig benutzt?

und wenn ja welche sind am gängisten?

also zb. für floatwerte ein f vor dem Namen der Variablen : Code: [AUSKLAPPEN]
float fmeineVar
oder doch besser: Code: [AUSKLAPPEN]
float f_meineVar;
?

oder für Zeiger ein p : Code: [AUSKLAPPEN]
int  *pZeiger;



ich glaube Ihr wisst was ich meine Very Happy

würde mich über Eure Ratschläge und Meinungen freuen

Liebe Grüße Trust
  • Zuletzt bearbeitet von Trust am Fr, Mai 28, 2010 19:59, insgesamt einmal bearbeitet
 

MasterK

Betreff: Re: Frage, schreibweise verschiedener Variablen - Typen

BeitragFr, Mai 28, 2010 19:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Trust hat Folgendes geschrieben:
zu den Namenskonventionen:

werden diese häufig benutzt?

Ja.

Trust hat Folgendes geschrieben:
und wenn ja welche sind am gängisten?

Am "gängigsten" sind eher keine. Es gibt nur gewisse sachen, die man NICHT machen sollte.

Trust hat Folgendes geschrieben:
oder doch besser: Code: [AUSKLAPPEN]
float f_meineVar;
?

Nein

Trust hat Folgendes geschrieben:
oder für Zeiger ein p : Code: [AUSKLAPPEN]
int  *pZeiger;

Nein
+++ www.masterk.de.vu +++
Lila FTW!

Trust

BeitragFr, Mai 28, 2010 19:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke für die Antwort.

Also wie wäre es dann richtig?

bei Zeigern und was es sonst noch so alles gibt.

Bei tracking Handles würde mich das zb. sehr interessieren
da sie sich in der Schreibweise in einem Ausdruck zb. bei Berechnungen garnicht von Zeigern unterscheiden.

in beiden fällen ist der dereferenzierungs Operator vor dem Bezeichner
zwingend erforderlich.

Wenn man nach längerem wieder auf seinen Code schaut, oder eben fremden Code durchließt, wäre es für mich wichtig gleich zu wissen ob es ein Zeiger an sich ist oder ein tracking Handle.

Da man tracking Handles nicht direkt eine Addresse zuweisen kann würde man sich da viel Ärger ersparen wenn man es gleich auf anhieb sieht um was es sich handelt.


Vielen Dank

Trust

Thunder

BeitragFr, Mai 28, 2010 20:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe bis jetzt noch nie (wirklich nie) öffentlichen Code gelesen, bei dem diese Präfixtechnik angewandt wurde, außer von den Leuten, die voll darauf schwören und sagen, dass ohne dem nichts geht. Die Präprozessordirektiven werden normalerweise großgeschrieben.

mfg Thunder

Edit: kA was Tracking Handles sind
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

FireballFlame

BeitragFr, Mai 28, 2010 22:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Codekonventionen hängen von der Programmiersprache ab.
In Java beispielsweise ist es üblich, Konstanten in Großbuchstaben zu schreiben, sowie Funktionen mit einem Klein- und Klassennamen mit einem Großbuchstaben zu beginnen.
In BlitzMax wiederum fängt man Funktionen normalerweise groß an und schreibt vor Klassennamen ein T...

Abgesehen davon kommt es aber immer auch darauf an, wer programmiert, schließlich ist es großteils eh Geschmackssache.
Leg dir einfach bestimmte Codekonventionen fest, wichtig ist nur, dass du innerhalb eines Projektes dabei bleibst. Wink
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit

Silver_Knee

BeitragSa, Mai 29, 2010 12:48
Antworten mit Zitat
Benutzer-Profile anzeigen
also ich hab eigene konventionen:
Konstanten Groß mit:

ABC_NAME

wobei ABC so ne art klasse an gibt zb die Spetzialfertigkeiten von raumschiffen sind so:
BlitzBasic: [AUSKLAPPEN]
Const SP_SHOP=1, SP_CREATE_WP=2, SP_CREATE_LP=4, SP_CREATE_TURRET=8, SP_CREATE_SHIP_LIGHT=16 
Const SP_CREATE_SHIP_MID=32, SP_CREATE_SHIP_HEAVY=64, SP_CREATE_SHIELD=128, SP_OPEN_SHIELD=256


temporäre variablen heißen bei mir tmp für integer und temp$ für stringwerte. Schleifenzähler immer count countcount countcountcount usw. Banks kennzeichne ich mit nem b präfix und Types mit nem großen T.

Sonst schreibe ich noch Funktionen mit nem Großbuchstaben am Anfang und Variablen klein.

du wirst dir schon deinen Stil suchen.

Trust

BeitragSa, Mai 29, 2010 13:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok da es scheinbar mehr oder weniger eine Frage des eigenen Geschmacks
ist werde ich mir mal Gedanken über die eigenen Schreibweisen und
Konventionen machen Smile

Denn grade in Blitz3D bei größeren Projekten ist es mir vor allem am Anfang
meiner "Hobbyprogrammierer-carriere" sehr schwer gefallen den Überblick über den eigenen Code zu behalten, was eben auch daran lag.

Vielleicht wäre mal eine kleine Anleitung hier im Forum nicht schlecht, speziel für
die Leute die ihre ersten Programmier-gehversuche mit Blitzbasic starten (was meiner Meinung nach doch recht viele sind, mich damals eingeschlossen).

So in etwa mit dem Titel: Wie schreibe ich übersichtlichen Code...

Was haltet ihr davon?

Gruß Trust
 

Blitzjockey

BeitragSa, Mai 29, 2010 13:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, auch wenn's vom Name her "nicht so richtig passt," der Tutorial von Midimaster könnte man da schon recht gut als Anfang nemen:

Fehler Suchen Tut.

Ansonsten ist dass hier: Applied Object Based Programming auch nicht schlecht. Für der totale Anfänger, zugegebenermaße, etwas heftig. Aber es zeigt auch ein paar Methode für structuriertes Namens-geben.

Im Algemeine wäre es, von der Ansatz her, nicht slecht wenn es so was wie ein "algemeine empfohlene BB-Portal Schreibstill"-Vorlage geben würde.
Nur als Vorlage.
Versteht sich...
Aber da hier ohnehin viel Code getauscht wird (Ist ja auch Sinn der Sache) und man es dementsprechend als einen Art Arbeitsgemeinschaft betrachten könnte, wäre ein bestimmte Still gar nicht so schlecht.

Sg,
BlitzJ.

Trust

BeitragSa, Mai 29, 2010 13:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Eben das ist genau das was ich meinte. Wenn man sich hier noch auf einen <ungefähren Stil> einigermaßen einigen könnte, bzw. man ein kleines Tutorial schreibt bezüglich dessen.
Täten sich vieleicht einige der Anfänger etwas leichter.
Zumal BlitzBasic ja nicht Case Sensitiv ist, was eher nicht so mein Ding ist, da es zu einer "schmuddeligen" Schreibweise verleitet
 

Blitzjockey

BeitragSa, Mai 29, 2010 14:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Dazu kann ich Dir IDEal emfehlen.

Da hast Du sowohl automatische Indents, als auch ein (von IDEal versorgte) Case-Sensitivität. (bzw. IDEal ändert all Dein Variabelen und Functionen um, so wie Du sie deklariert hast)
Und vieles mehr. Und den Forum-hilfe-section läßt sich auch integrieren, sehr angenehm.

Trust

BeitragSa, Mai 29, 2010 14:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey das ist ja mal ne Klasse IDE, das ich die nicht kenne....

Habe bisher immer in BlitzEdit gearbeitet.

Danke für den Tipp Very Happy

Trust
 

Blitzjockey

BeitragSa, Mai 29, 2010 20:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Kein Problem!

Einzige nachteil: Er wird leider nicht weiter entwickelt. Macht soweit nichts, da eigentlich alles was die meiste Leute brauchen, drin ist.
Es soll mit Windows 7 ab und zu schwierigkeiten geben, da ich aber immer noch bei XP hange, kenne ich mich da nicht so aus. Gibt aber ohnehin viel Lösungen dafür ins Forum.

Blitzj.

Jolinah

BeitragSa, Mai 29, 2010 21:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Am sinnvollsten finde ich es Variablen und anderes so zu benennen dass man weiss wofür sie verwendet werden. In der heutigen Zeit wo einem die IDE sowieso meist den Datentyp anzeigt wenn man mit der Maus drüber geht finde ich Namen wie "fFactor" eher hinderlich. Stattdessen würde es hier Sinn machen zu beschreiben was das für ein Faktor ist, z.B. "reibung" oder "reibungsFaktor" etc... So Variablen wie "temp" finde ich daher auch nicht so toll, lieber sagen was denn gespeichert wird, als nur zu sagen dass es temporär ist. Das ist aber nur meine Meinung dazu Wink

Im Prinzip ist es reine Geschmackssache. Es soll ja vor allem der Übersichtlichkeit und Verständlichkeit dienen. Innerhalb eines Projekts ist es empfehlenswert bei der gleichen Konvention zu bleiben. Und wenn die Sprache selbst schon eine offizielle Konvention hat wäre es auch schöner diese zu verwenden - dann haben andere Programmierer es leichter - vorausgesetzt dass andere den Code überhaupt jemals zu sehen bekommen.

FireballFlame

BeitragSo, Mai 30, 2010 1:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Silver_Knee hat Folgendes geschrieben:
temporäre variablen heißen bei mir tmp für integer und temp$ für stringwerte. Schleifenzähler immer count countcount countcountcount usw.
Ihh, von sowas würd ich unbedingt abraten. Wink

Wenns hilft, kann ich ja mal meine persönlichen Codekonventionen für BlitzMax posten:
Ich schreibe z.B.:
  • alles englisch
  • Types, Typefelder/-globals und Funktionen/Methoden mit großem Anfangsbuchstaben und in CamelCase
  • Konstanten ganz in Großbuchstaben
  • lokale Variablen ganz in Kleinbuchstaben
  • Types mit vorangestelltem T
  • alles, was privat sein soll (richtiges "Private" hat BMax ja nicht) mit vorangestelltem Unterstrich
  • Leerzeichen vor und nach Zuweisungsoperatoren, z.B. "="
  • Funktionen und Methoden mit bestimmten Präfixen, je nachdem, was sie machen sollen (Get, Set, Create, Update, ...)
  • Namen möglichst aussagekräftig und
  • lieber lang als kurz ("Tmp" oder "i" hab ich fast nie, aber häufig sowas wie "TInitializationException" oder "RunAlgorithmThreaded")

Das sind so die Regeln, die ich einhalte, wenn ich in BMax programmiere, und sie funktionieren recht gut. Ich habe zwar noch einige andere, aber die hier sind die wichtigsten und fallen mir grad spontan ein Wink
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit

Neue Antwort erstellen


Übersicht Sonstiges Smalltalk

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group