• Liebe User mit web.de oder gmx.de E-Mail-Adressen: Bitte ändert eure Adressen, da wir nicht garantieren können das E-Mails vom Forum an euch ankommen. Genaueres dazu im Feedbackforum
  • Liebe Community,
    am 21.04.2021 wird unsere Domain in ein neues Rechenzentrum umziehen.
    Daher wird das Forum zwischen 00:00 und 04:00 Uhr nicht unter broodwar.net erreichbar sein,
    stattdessen könnt ihr das Forum unter https://85.214.102.212/forum/ ansurfen. Beachtet dabei bitte, dass ihr euch dafür extra einloggen müsst.
    Sobald alles erledigt ist, sind wir ganz normal wieder erreichbar.

Coding Konvention Punkt oder Unterstrich

Benrath

Community-Forum
Mitglied seit
19.05.2003
Beiträge
17.329
Reaktionen
31
Man liest ja immer das eine oder andere, aber was macht mehr Sinn beim Benennen von Funktionen und variablen

my_function oder my.function
my_dataset oder my.dataset

mal jenseits von Groß und Kleinschreibung und dass man z.B. Funktionen mit nem Großbuchstaben anfängt und variablen klein lässt.

Es gibt drölf Blogeinträge fürs eine oder das andere, aber was macht ihr?

Ich persönlich mag die Trennung mit dem Punkt lieber. Hab dafür aber keinen wirklichen Grund.
 

Gustavo

Doppelspitze 2019
Mitglied seit
22.03.2004
Beiträge
2.267
Reaktionen
35
Weil ich das meiste immer noch in R mache und mich sklavisch an den Google Style Guide halte: Immer Punkt.
 

Benrath

Community-Forum
Mitglied seit
19.05.2003
Beiträge
17.329
Reaktionen
31
https://google.github.io/styleguide/Rguide.xml

Don't use underscores ( _ ) or hyphens ( - ) in identifiers. Identifiers should be named according to the following conventions. The preferred form for variable names is all lower case letters and words separated with dots (variable.name), but variableName is also accepted; function names have initial capital letters and no dots (FunctionName); constants are named like functions but with an initial k.

https://www.r-bloggers.com/🖊-r-coding-style-guide/

•NEVER separate words within the name by . (reserved for an S3 dispatch) or use CamelCase (reserved for S4 classes definitions). Instead, use an underscore (_).

Ich finds halt geil, dass die diametral entgegen stehen. Das zweite gibt immerhin zwei Gründe an.
 

parats'

Tippspielmeister 2012, Tippspielmeister 2019
Mitglied seit
21.05.2003
Beiträge
15.552
Reaktionen
76
Ort
Hamburg
Für Funktionen nutze ich nichts dergleichen, also ein myFunction(). Liegt überwiegend daran, dass ich 70% SQL (T-SQL bzw D-SQL für die Microsoft APS) mache und so 30% .Net (VB oder C#).
Datenbankobjekte nutzen den . und für variablen wird ein _ verwendet.

Wichtig ist, dass es innerhalb der Ressourcen identisch und von allen Mitarbeitern so beibehalten wird. Ansonsten habe ich bisher noch nirgends identische Standards vorgefunden.
 
Zuletzt bearbeitet:
Mitglied seit
06.12.2003
Beiträge
5.027
Reaktionen
1
https://google.github.io/styleguide/Rguide.xml

Don't use underscores ( _ ) or hyphens ( - ) in identifiers. Identifiers should be named according to the following conventions. The preferred form for variable names is all lower case letters and words separated with dots (variable.name), but variableName is also accepted; function names have initial capital letters and no dots (FunctionName); constants are named like functions but with an initial k.

https://www.r-bloggers.com/🖊-r-coding-style-guide/

•NEVER separate words within the name by . (reserved for an S3 dispatch) or use CamelCase (reserved for S4 classes definitions). Instead, use an underscore (_).

Ich finds halt geil, dass die diametral entgegen stehen. Das zweite gibt immerhin zwei Gründe an.

das sind einfach hardcore nerds die sich um so nen kot streiten. Geht hundertpro beides und keins ist per se schlechter als das andere, ich nutze ne camelCase.
 
Mitglied seit
21.08.2010
Beiträge
6.047
Reaktionen
16
Punkt aus genau einem Grund: Mit Strg+Links/Rechts kann man Punkte ansteuern aber keine Unterstriche. Nachdem ich schon seit Jahren daran verzweifle Studenten auch nur die Grundlagen ordentlichen Codens beizubringen, bin ich da ohnehin abgehärtet. Eigentlich wäre ich gern Codeschönheitsnazi aber die Realität hat mich zum indifferenten "wenn's läuft und nicht zu hässlich ist, ist es auch okay"-Pragmatiker gemacht.
 
Mitglied seit
10.08.2000
Beiträge
12.908
Reaktionen
0
Ich programmiere zwar nicht mehr selbst aktiv aber ich fand Unterstriche immer besser. Im Wesentlichen weil es besser aussieht, kein wirklich wichtiger Grund. Ich behaupte einfach mal dass es nur wichtig ist, dass man sich einfach für irgendeine Konvention entscheidet und die firmenintern tatsächlich durchzieht, welche auch immer das nun sein mag. Das beschränkt sich dann auch nicht auf die Trennzeichen, allgemeine verpflichtende style guidelines dürften die Pflege fremden Codes deutlich vereinfachen und Einheitlichkeit/Konsistenz innerhalb der Firma ist bei den meisten Sachen wichtiger als die genaue Ausprägung der style guidlines selbst.
 

pinko

Administrator
Mitglied seit
21.10.2008
Beiträge
13.984
Reaktionen
669
Ort
München
Gehe mit Booty konform. Ist lange her, dass ich aktiv programmiert habe, an der FH wurde uns damals auch eher die Punkt-Konvention nahegelegt. Fand ich logischer und optisch ansprechender.
 

Benrath

Community-Forum
Mitglied seit
19.05.2003
Beiträge
17.329
Reaktionen
31
Persönlich find ich die Punkt Notation auch optisch ansprechender, weil die Trennung irgendwie sichtbarer erscheint als mit dem Underscore.

Mich haben einfach die Erfahrungen interessiert und warum Ihr euch dafür entscheidet.

Ich muss mich einfach auch mehr dazu zwingen bei einer Variante zu bleiben. Punkt it is.
 
Mitglied seit
06.12.2003
Beiträge
5.027
Reaktionen
1
Wieso kollidiert der Punkt eigentlich nicht mit dem Punktoperator bei Memberzugriff wie ihn z.B. C++ und Matlab nutzen? Schon deshalb find ich den behindert.
 
Mitglied seit
25.09.2014
Beiträge
2.467
Reaktionen
56
Das tut er. Deshalb benutzt man ihn in objektorientierten Sprachen auch nicht - entweder kompiliert es gar nicht (z.B. Java, C++, Python) oder es führt nicht zum gewünschten Resultat (z.B. Matlab).


Punkt aus genau einem Grund: Mit Strg+Links/Rechts kann man Punkte ansteuern aber keine Unterstriche. Nachdem ich schon seit Jahren daran verzweifle Studenten auch nur die Grundlagen ordentlichen Codens beizubringen, bin ich da ohnehin abgehärtet. Eigentlich wäre ich gern Codeschönheitsnazi aber die Realität hat mich zum indifferenten "wenn's läuft und nicht zu hässlich ist, ist es auch okay"-Pragmatiker gemacht.
Wie oft willst du denn in einen Variablennamen springen? Mich würde eher stören, dass ich mehrteilige Variablennamen nur mit mehrfachem Tastendruck überspringen kann. Und wenn du ohne nicht leben kannst, gibts da draußen bestimmt einen Editor, wo du die Funktion customizen kannst.

So oder so ist es ein schwacher Grund, weil er dem grundlegenden Readability-over-Writability-Paradigma widerspricht. Sowas zu tun ist schon fragwürdig, es zu lehren sollte verboten sein.



@Topic
Persönliche Vorliebe: Unterstrich > Camel > Punkt. Da ich heute eigentlich nur noch in Python und R schreibe, nutze ich ausschließlich Unterstriche.

Grundsätzlich sollte man natürlich nicht immer gleich schreiben, sondern abhängig vom Kontext: welche Sprache? für wen bzw. mit wem?



[edit]
Persönlich find ich die Punkt Notation auch optisch ansprechender, weil die Trennung irgendwie sichtbarer erscheint als mit dem Underscore.
Echt? Es gibt afaik Versuche, die die bessere Lesbarkeit von Unterstrichen gegenüber Camel nahelegen. Ich vermute, dass in puncto Lesbarkeit Unterstrich > Punkt > Camel gilt.

Hauptproblem mit dem Punkt ist, wie gesagt, dass er sich nicht gut mit Objektorientierung verträgt. Ich sehe daher keinen Grund, weshalb man ihn jemals dem Unterstrich vorziehen sollte und bin geradezu schockiert, dass Google ihn empfiehlt.
 
Zuletzt bearbeitet:
Mitglied seit
21.08.2010
Beiträge
6.047
Reaktionen
16
Ich hab in R häufig Gruppen von Variablen mit Untergruppen die jeweils in 4er 5er Spaltenblöcken im Datensatz selbst vorliegen. Da benutze ich dann häufig bla1.blub2 zur Strukturierung und genau da brauche ich genau diese Funktion auch. Außerdem funktioniert mein ganzer Desktop ja auch nach der Regel, weswegen ich ganz allgemein meine Dateinamen so strukturiere (mit Komma).

Was das Lehren angeht: Ich hab da 90% Studis für die absehbar Copy/Paste der einzige Shortcut sein wird den sie je konstant im Kopf behalten :rolleyes:
Das sind keine Coder, wenn ich anfang denen was von unterschiedlichen Konventionen zu erzählen sind die eingeschlafen bevor ich CamelCase sagen kann.

Benutze ansonsten halt auch (häufig) vim-style Commands weil ich mich irgendwann daran gewöhnt habe. Da ist das Springen meistens ein untergeordnetes Problem. Nur halt in RStudio nicht.

Heil vim.
 

Benrath

Community-Forum
Mitglied seit
19.05.2003
Beiträge
17.329
Reaktionen
31
Ich stell mir das irgendwann mit 4 oder 5 Blöcken etwas kompliziert vor, wobei ich es auch ähnlich versuche, aber wohl nicht ganz so viel code wie einige hier.

ich versuch eher im ersten Block die Art des Objekts zu benennen

df.raw oder df. consolidated oder ähnliches

oder par.new par.xyz

model.xyz

Nutz du die Projekte von R? oder gleich alles auf github?
 

FORYOUITERRA

TROLL
Mitglied seit
22.07.2002
Beiträge
4.086
Reaktionen
289
Website
www.frauentag.de
nutze immer unterstrich in R, damit man in seinem jupyter notebook mit r-kernel nicht mit python objekten in konflikt kommt. :gosu:

edit: achja, und ich muss es wissen, da ich eventuell älter als ihr bin. so ist es.
 
Zuletzt bearbeitet:
Mitglied seit
21.08.2010
Beiträge
6.047
Reaktionen
16
Nutz du die Projekte von R? oder gleich alles auf github?
ja, ist für vieles schon ganz praktisch. also eigentlich v.a. dann wenn man mehrere unterschiedliche sachen parallel laufen hat. sonst … who cares.

mir ist es beim naming v.a. wichtig, dass die variablennamen nicht so anfangen wie befehle im aktuellen namespace damit die autoergänzung nicht nervt bzw. nützlich ist.

hab selbst nen lokalen git-server via apache. also lokal im sinne von in meiner wohnung, nicht auf der gleichen maschine.
 
Oben