Thema: "Naming Conventions" (mein Tip!)
-
... ich wieß, gehört nicht 100%ig hier rein, aber in die anderen foren auch nicht... (evt. in FAQs?)
mein bestreben beim programmiern liegt (auch) darin, den code möglichst übersichtlich und verständlich zu schreiben.
wer auf diese dinge auch wert legt, aber bisher nicht wirklich eine lösung gefunden hat, für den hab ich hier einen tip:ich habe nach möglichst weit verbreiteten, unverwechselbaren, und auch auf vb übertragbaren "naming conventions", "coding standards", etc. gesucht. da es scheinbar nicht wirklich "konventionen" bzw. "standards" gibt habe ich mir aus unterschiedlichen quellen in verbindung mit meiner programmiererfahrung eigene "naming rules" aufgestellt, und in einer übersichtlichen liste zusammengetragen.
das ganze nennt sich "TNConv - NamingRules" und ist unter http://home.arcor.de/thinux/files/myTNConv.pdf zu finden.
(wird bei interesse noch vervollständigt; fehler nicht ausgeschlossen)Also wer sich noch keinen "eigenen standard" angewöhnt hat,
was haltet ihr davon?mfg thinux
-
Schwachsinn.
-
Müll.
-
Hi
Ich mag keine Präfixe für Datentypen und Klassennamen, und auch kein CamlToe (oder wie das heisst).
Variabeln schreib ich immer klein und Wörter getrennt mit "_", find ich einfach lesbarer.things_stuff statt iThingsStuff.
für Klassen:
thing_object statt CThingObject
für Vererbungen:
base
base_derived
base_otherderivedaber das ist wohl geschmackssache.
Die Kürzel für Steuerelemente find ich gut, auch die für Funktionen (Min, Max..)
-
1310-Logik schrieb:
base
base_derived
base_otherderivedalso vogel und vogel_singvogel und vogel_singvogel_amsel? ich denke, darüber solltest du nochmal meditieren.
ein ganz guter trick ist, daß dinge so heißen, wie man auch außerhalb der programmierung gewonht ist, wie sie heißen. und da heisst der hund hund und die katze katze. nicht oClsKatze oder ocls_katze und nicht Wirbeltier.Säugetier.Katze.
-
..ich bin offen für andere vorschläge
volkard schrieb:
und nicht Wirbeltier.Säugetier.Katze.
frag mal nen biologen
Klasse->Gattung->Artim echten leben sag ich zu ner katze: "miez miez komm mal her"
[edit] im labor sag ich "Teststamm: E.Coli BL21(DE3) pTY12-ZsGreen" [/edit]
-
1310-Logik schrieb:
..ich bin offen für andere vorschläge
mein vorschlag: katze heißt katze.
volkard schrieb:
und nicht Wirbeltier.Säugetier.Katze.
frag mal nen biologen
Klasse->Gattung->Artwozu? ich denke schon, daß jede katze ein säugetier und jedes säugetier ein wirbeltier ist.
im echten leben sag ich zu ner katze: "miez miez komm mal her"
und wenn du pläne machst, sagste "ich fahre 2 wochen in urlaub. der nachbarsjunge füttert die katze."
-
volkard schrieb:
ich denke schon, daß jede katze ein säugetier und jedes säugetier ein wirbeltier ist.
Du denkst..ja aber weisst Du es auch?
Also konkretes Problem:
ich hab Basisklassen
individual und population
nun hab ich grass, rabbit und fox, jeweils indiv. und pop.
Wie unterscheid ich die Hasenpopulation von den Individuen rabbit/rabbits?
Schwammig weil rabbits könnte auch nur ein Array von rabbit sein.
Also schreib ich individual_rabbit_ und population_rabbit..in RealLife
volkard schrieb:
und wenn du pläne machst, sagste "ich fahre 2 wochen in urlaub. der nachbarsjunge füttert die katze."
ich hab gar keine katze
ich schrieb:
im labor sag ich "Teststamm: E.Coli BL21(DE3) pTY12-ZsGreen"
und wenn ich ferien plane, sag ich meiner kollegin "fütter bitte meine bakis", aber trotzdem muss ich die pulle mit dem richtigen stamm en detail beschriften, sonst hab ich kreuzkontaminationen wenn ich zurückkomme und meine ZsGreen leuchten dann rot.
-
Also hier mal meine naming_rules:
Methoden werden mit Verben benannt: read(), write()...
Variabeln mit Substantiven: counter, number, result...
const-Variabeln mit großen Substantiven: PI, MWST...
Klassen embenfalls mit Substantiven allerdings der erste Buchstabe groß: Car, House, Question...Ansonsten alles wie es einem passt, wenns geht aber auf englisch und mit höchstens 2-silben.
Jedes größere Regelwerk verwirrt nur anstatt das es hilft.
-
1310-Logik schrieb:
volkard schrieb:
ich denke schon, daß jede katze ein säugetier und jedes säugetier ein wirbeltier ist.
Du denkst..ja aber weisst Du es auch?
scherzkeks. wie doof willste mich denn darstellen? und unerheblich isses auch, denn am ende programmiere ich ja nur ein modell und nicht die welt selbst. eine kleine welt, wo wale fische sind und pinguine keine vögel.
im übrigen schließe ich mich Storm.Xapek.de an.
-
volkard schrieb:
eine kleine welt, wo wale fische sind und pinguine keine vögel.
aber ne katze ist ein säugetier, ja?
Nein im ernst, ich will Dir keine Dummheit unterstellen.
Aber wenn Gott einem Programmierkollegen seine Schöpfung zeigt, weiss der nicht dass ne Katze ein Säugetier ist, ausser in der Dokumentation ist ein Stammbaum drin. (aus dem DNA Code wär das noch ersichtlich, doch besonders Lesbar ist der nicht ATGGTGCTG..)Und was ist nun mit dem Hasen Problem? Ich bin gerne einsichtig, aber wenn ich statt Hasenpopulation Rotte, und statt Graspopulation Wiese schreib, hab ich spätestens bei Füchsen das Problem, das die keine Rudeltiere sind.
-
Dieser Thread wurde von Moderator/in estartu aus dem Forum MFC (Visual C++) in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
1310-Logik schrieb:
volkard schrieb:
eine kleine welt, wo wale fische sind und pinguine keine vögel.
aber ne katze ist ein säugetier, ja?
Ja, siehe Basisklasse. Da gibts nix rumzudeuten. Wo kommen wir denn da hin, wenn ich ne Basisklasse Säugetier hab, die ne Basisklasse Tier hat, die ne Basisklasse Lebewesen hat. Ich nenn keine Klasse lebewesen_tier_saeugetier_katze_wildkatze_tiger_saebelzahntiger.
Aber wenn Gott einem Programmierkollegen seine Schöpfung zeigt, weiss der nicht dass ne Katze ein Säugetier ist, ausser in der Dokumentation ist ein Stammbaum drin.
Oder er schaut sich die Definition an. Wo ist das Problem?
Und was ist nun mit dem Hasen Problem? Ich bin gerne einsichtig, aber wenn ich statt Hasenpopulation Rotte, und statt Graspopulation Wiese schreib, hab ich spätestens bei Füchsen das Problem, das die keine Rudeltiere sind.
Mehrere Hasen sind ein Array von Hasen, dafür gibts keine eigene Klasse.
-
1310-Logik schrieb:
(aus dem DNA Code wär das noch ersichtlich, doch besonders Lesbar ist der nicht ATGGTGCTG..)
OT: Gibts auch Viecher die als DNA nur TGGCTGGCTGGC haben? Wie heißen die?
Ansonsten find ich es auch überflüssig die Basisklasse vorneanzuhängen... is sehr unübersichtlich... va. wenn man sowieso ne doxygen doku hat *tipp*
-
Michael E. schrieb:
Und was ist nun mit dem Hasen Problem? Ich bin gerne einsichtig, aber wenn ich statt Hasenpopulation Rotte, und statt Graspopulation Wiese schreib, hab ich spätestens bei Füchsen das Problem, das die keine Rudeltiere sind.
Mehrere Hasen sind ein Array von Hasen, dafür gibts keine eigene Klasse.
ein Hasen-Array ist noch keine Rotte, ansonsten kannst Du mir vielleicht da weiterhelfen..
-
Tja, dann gibts halt keine Fuchsrudel-Klasse. Ich seh immer noch nicht dein Problem.
-
Rudel_Fuchs != Füchse
-
ja und? Warum heißt die Klasse dann in dem Fall net einfach fuchs_rudel? Anstatt lebewesen_tier_***********_rudel_fuchs bzw. wie machst des überhaupt bei mehreren Basisklassen?
-
hä????
von was redet ihr da? rudel, füchse... bleiben wir doch bei realitätsnahen Beispielen. Es ist ja klar das bei rudel_füchsen und füchsen keiner durchblcikt!
-
sorry..das ist mein realproblem (siehe da)
ausserdem schreib ich nur population_fox und lifeform_fox.
mehrfachvererbung mach ich grad noch nicht.
kritisieren und irgendwelche satanarchäolügenialkohöllischen wortverkettungen erfinden kann jeder. ich versuch mich nur in meinem filechaos zurecht zu finden.
ich sagte aber auch, bin für vorschläge einsichtig genug, und warte auf vorschläge!...sorry ist nur meine meinung. nicht
sein