Zeige Ergebnis 1 bis 15 von 15
  1. #1
    Community-Forum Benutzerbild von Benrath
    Registriert seit
    Mai 2003
    Beiträge
    15.603
    Likes
    1282

    Coding Konvention Punkt oder Unterstrich

    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.
    "Wenn ihr nicht wisst wovon ihr redet, sprecht von einem System."


    "Wenn jeder an sich denkt, ist an alle gedacht !"

    "wollen wollen ist die höchste Form der Unterdrückung"


  2. #2
    Benutzerbild von Gustavo
    Registriert seit
    Mär 2004
    Beiträge
    1.580
    Likes
    3172
    Weil ich das meiste immer noch in R mache und mich sklavisch an den Google Style Guide halte: Immer Punkt.

  3. #3
    Community-Forum Benutzerbild von Benrath
    Registriert seit
    Mai 2003
    Beiträge
    15.603
    Likes
    1282
    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/%F0%9F%96...g-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.
    "Wenn ihr nicht wisst wovon ihr redet, sprecht von einem System."


    "Wenn jeder an sich denkt, ist an alle gedacht !"

    "wollen wollen ist die höchste Form der Unterdrückung"

  4. #4
    Tippspielmeister 2012
    Tippspielmeister 2019
    Benutzerbild von parats'
    Registriert seit
    Mai 2003
    Ort
    Hamburg
    Beiträge
    13.348
    Likes
    291
    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.
    Geändert von parats' (02. August 2019 um 23:26 Uhr)
    1887

  5. #5
    Benutzerbild von kingcools
    Registriert seit
    Dez 2003
    Beiträge
    4.661
    Likes
    133
    Zitat Zitat von Benrath Beitrag anzeigen
    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/%F0%9F%96...g-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.
    du findest alles lecker was rein geometrisch in deinen mund passt

  6. #6
    Benutzerbild von Bootdiskette
    Registriert seit
    Aug 2010
    Beiträge
    5.656
    Likes
    554
    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.
    Zitat Zitat von Photon Beitrag anzeigen
    ,kgjkea5ulöp8öswsw4

  7. #7
    Benutzerbild von MegaVolt
    Registriert seit
    Aug 2000
    Beiträge
    12.664
    Likes
    1102
    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.

  8. #8
    OT-Forum
    Tippspielmeister Snooker Fantasy 2014
    Benutzerbild von pinko
    Registriert seit
    Okt 2008
    Ort
    Meer
    Beiträge
    11.507
    Likes
    13482
    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.
    beer gives power
    #bärenhöhle

    stream

  9. #9
    Community-Forum Benutzerbild von Benrath
    Registriert seit
    Mai 2003
    Beiträge
    15.603
    Likes
    1282
    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.
    "Wenn ihr nicht wisst wovon ihr redet, sprecht von einem System."


    "Wenn jeder an sich denkt, ist an alle gedacht !"

    "wollen wollen ist die höchste Form der Unterdrückung"

  10. #10
    Benutzerbild von kingcools
    Registriert seit
    Dez 2003
    Beiträge
    4.661
    Likes
    133
    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.
    du findest alles lecker was rein geometrisch in deinen mund passt

  11. #11
    Benutzerbild von saistaed
    Registriert seit
    Sep 2014
    Beiträge
    1.386
    Likes
    679
    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).


    Zitat Zitat von Bootdiskette Beitrag anzeigen
    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]
    Zitat Zitat von Benrath Beitrag anzeigen
    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.
    Geändert von saistaed (08. August 2019 um 12:46 Uhr)

  12. #12
    Benutzerbild von Bootdiskette
    Registriert seit
    Aug 2010
    Beiträge
    5.656
    Likes
    554
    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
    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.
    Zitat Zitat von Photon Beitrag anzeigen
    ,kgjkea5ulöp8öswsw4

  13. #13
    Community-Forum Benutzerbild von Benrath
    Registriert seit
    Mai 2003
    Beiträge
    15.603
    Likes
    1282
    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?
    "Wenn ihr nicht wisst wovon ihr redet, sprecht von einem System."


    "Wenn jeder an sich denkt, ist an alle gedacht !"

    "wollen wollen ist die höchste Form der Unterdrückung"

  14. #14
    Benutzerbild von FORYOUITERRA
    Registriert seit
    Jul 2002
    Beiträge
    3.141
    Likes
    2909
    nutze immer unterstrich in R, damit man in seinem jupyter notebook mit r-kernel nicht mit python objekten in konflikt kommt.

    edit: achja, und ich muss es wissen, da ich eventuell älter als ihr bin. so ist es.
    Geändert von FORYOUITERRA (21. August 2019 um 00:44 Uhr)
    WinterSprinter.de http://wintersprinter.de

  15. #15
    Benutzerbild von Bootdiskette
    Registriert seit
    Aug 2010
    Beiträge
    5.656
    Likes
    554
    Zitat Zitat von Benrath Beitrag anzeigen
    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.
    Zitat Zitat von Photon Beitrag anzeigen
    ,kgjkea5ulöp8öswsw4

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.
  •