Gibt es einen "Coding-Standard-Converter"



  • Ich soll jetzt für die Uni einen Coding-Standard einhalten, der komplett das Gegenteil zu meiner bisherigen Arbeitsweise ist.

    Speziell die Formatierung ärgert mich. Ich habe bis jetzt immer versucht, den Code möglichst kompakt zu gestalten. So ist bei mir die geschwungene Klammer nicht in einer eigenen Zeile und teilweise scheibe ich mehrere Befehle in eine Zeile, vor allem bei Switch-Case, wo ich versuche, pro Case nur eine Zeile zu brauchen.
    Bei meinem 15,4" habe ich sonst überhaupt keinen Inhalt am Bildschirm.

    Der Uni-Standard macht die Klammer in eine eigene Zeile und pro Zeile darf nur eine Anweisung stehen. Auch ist die Zeichenzahl pro Zeile limitiert.

    eigenes Codebeispiel:

    Vertex[0] = 1.f;   Vertex[1] = 1.f;   Vertex[2] = 0.f;
    Vertex[3] = 0.f;   Vertex[4] = 1.f;   Vertex[5] = 0.f;
    
    switch(bla){
        case 0:     mach_das();      mach_auch_das();      break;
        case 1:     mach_das1();     mach_auch_das1();     break;
        default:    mach_nix();
    }
    

    Unistandard:

    Vertex[0] = 1.f;   
    Vertex[1] = 1.f;   
    Vertex[2] = 0.f;
    Vertex[3] = 0.f;   
    Vertex[4] = 1.f;   
    Vertex[5] = 0.f;
    
    switch(bla)
    {
        case 0: 
            mach_das();   
            mach_auch_das();   
            break;
        case 1: 
            mach_das1();  
            mach_auch_das1();  
            break;
        default: 
            mach_nix();
    }
    

    Ich finde meine Methode nicht nur platzsparender, sondern auch übersichtlicher, da ich mehr Möglichkeiten zum Gruppieren hab (kann dafür auch Tabulatoren verwenden, siehe die Vertexliste) und weil ich mehr sehe tu ich mir auch beim Lesen leichter.

    Wie findet ihr das, ist meine Methode schrecklich, ist die Unimethode ideal oder ist das einfach Geschmacksache?

    Und die eigentliche Frage, gibt es ein Programm, das die Formatierung an einen Codingstandard anpasst?



  • hol dir einen aus indien und lass den das umformatieren, kann ja so schwer nicht sein :p



  • Jede bessere IDE dürfte sowas können. Ansonsten gab es mal astyle und man: indent



  • So auf lange Sicht solltest du aber den Codingstandard der Uni übernehmen, deiner ist doch ein bisschen ungewöhnlich.



  • Senfti schrieb:

    Wie findet ihr das, ist meine Methode schrecklich, ist die Unimethode ideal oder ist das einfach Geschmacksache?

    Deine Methode ist schrecklich, 👍 für die Uni.



  • Senfti schrieb:

    Wie findet ihr das, ist meine Methode schrecklich

    Ja. Ob die Uni Methode ideal ist, ist Geschmackssache. Aber deine Methode find ich auf jeden Fall überhaupt nicht gut. Mehrere Befehle in einer Zeile würden mich gewaltig stören. Stell dir vor, du bist in einer Firma, wo dutzende Mitarbeiter an Millionen Zeilen Code arbeiten. Jeder kennt nur einen Bruchteil des Codes im Detail, vieles aber grob. Und oft muss man kurz überfliegen, was der fremde Code da eigentlich macht. Wirklich nur überfliegen, weil wirklich reindenken ist allein schon aus Zeitgründen unmöglich. Nach dem ersten Statement in der Zeile hören die meisten auf zu lesen. Dass da hinter noch irgendwas passiert, wird ganz schnell übersehen. Das ist sehr gefährlich. Dass dabei paar Zeilen weniger rauskommen spielt hingegen überhaupt keine Rolle.



  • Ich stimme auch für die Uni. Und was "Mechanics" schreibt, stimmt vollkommen.
    Die meisten Codings-Standards gehen eher in die Uni Richtung - somit auch eher das was man in den Firmen vorfindet. Aus eigener Erfahrung kann ich nur sagen, wenn sich einer nicht daran hält, stört es wahnsinnig beim schnell überfliegen.

    Achja bzgl. Vertex sollte das doch auch gehen?!?
    Ist schön kompakt und auch noch leserlich ...

    Vertex = { 1.0f, 1.0f, 0.0f
             , 0.0f, 1.0f, 0.0f };
    


  • deine formatierung ist auch schlecht, um schnell mal was auszukommentieren.





  • Du solltest lernen flexibel zu sein. Wenn die Uni das so vorschreibt, dann mache es so. Wenn du später beruflich programmierst, solltest Du Dich nicht wegen solchen Kleinigkeiten, wie die Formatierung aufhalten. Einfach den Projektstandard übernehmen und gut ist. Und wenn der Projektstandard in meinem Projekt so etwas grässliches Vorschreibt, wie Deine Formatierung, dann würde ich es auch so machen 😉 .



  • Gut, dann werde ich mich darauf einstellen.
    Es wird halt ein bisschen Zeit brauchen, bis mir das halbwegs natürlich erscheint 😉



  • Senfti schrieb:

    Wie findet ihr das, ist meine Methode schrecklich, ist die Unimethode ideal oder ist das einfach Geschmacksache?

    Deine Methode ist schrecklich.

    * Unüblich => die meisten anderen Programmierer sind nicht gewöhnt sowas zu lesen => schlecht
    * Braucht länger zu schreiben => schlecht
    * Formattierung geht beim Refactoring kaputt (z.B. wenn sich die Länge von Namen ändert weil man Dinge umbenennt) => hemmt Refactoring => ganz ganz schlecht
    * Wird gerne völlig von Auto-Formatter Tools zerstört => lästig in diversen IDEs => schlecht
    * Führt dazu dass man "nicht-so-smart" formatierten Code (=fast alles was so an Code existiert) nicht so gut lesen kann => man wird selbst langsame => schlecht


Log in to reply