Wie haben Sie Ihren Codierungsstil gefunden, verfeinert und beibehalten?

10

Vor kurzem habe ich zwischen mehreren Projekten und Entwicklungsumgebungen gewechselt. Die Erwartungen an den Codierungsstil sind jeweils unterschiedlich.

Nun, meine Frage besteht aus drei Teilen, dem ersten, nur aus Neugier:

  1. Wie haben Sie Ihren Codierungsstil definiert und gefunden?
  2. Wie können Sie es weiter erweitern und verbessern?
  3. Wie pflegen Sie es? (Aus mentalen Notizen, Aufbewahren eines Dokuments, Verwenden eines Tools wie StyleCop usw.)
Aredkid
quelle

Antworten:

7

№1. # Wie haben Sie Ihren Codierungsstil definiert und gefunden?

Durch Codebeispiele zuerst in Büchern, dann in MSDN-Texten und Artikeln, dann in Blogs und anderen Websites.

№2. Wie können Sie es weiter erweitern und verbessern?

Ich halte mein Auge offen für alle Vorschläge, die Leute machen. Ich probiere sie aus, wenn sie für mich arbeiten, bleiben sie. Ich experimentiere auch von Zeit zu Zeit, was die Dinge zu verbessern scheint, bleibt bei mir.

№3. Wie pflegen Sie es? (Aus mentalen Notizen, Aufbewahren eines Dokuments, Verwenden eines Tools wie StyleCop usw.)

Ich erinnere mich irgendwie an meinen Stil und wende ihn automatisch überall an.


Hinweis 1. Es ist äußerst wichtig, ein Auge offen und ein Ohr scharf zu halten, um auf dem Laufenden zu bleiben. Vor Jahren habe ich von anderen gelernt, dass die ungarische Notation ein Muss ist, also bin ich ihr gefolgt. Als die Community merkte, dass es nicht so toll war, habe ich mich mit allen verändert.

Hinweis 2. Oft ist es nicht so wichtig, welche bestimmten Stilelemente Sie übernehmen, sondern dass Sie Ihren Stil in allen Codes konsistent halten. Gleiches gilt für ein Team. Wählen Sie einen Stil, aber bleiben Sie dabei.

Hinweis 3. Die Codierungsstile für verschiedene Sprachen können variieren. C ++ verdient einen Stil, Java den anderen. HTML und CSS haben ihre Eigenschaften und erfordern wieder einen anderen Stil.

Hinweis 4. Welchen Stil Sie auch wählen, verstehen und akzeptieren Sie, dass er nicht zu 100% funktioniert. Manchmal haben Sie einen Code, der einen anderen Stil erfordert, entweder direkt vor Ort, entweder mehrzeilig geteilt, anders ausgerichtet oder was auch immer, um das bestimmte Codeteil besser lesbar zu halten. Schieben Sie Ihren Stil nicht überall hin, sondern konzentrieren Sie sich auf die Lesbarkeit des Codes. Wenn es offensichtlich ist, dass der Stil an diesem bestimmten Ort nicht funktioniert, machen Sie eine Ausnahme.

Hinweis 5. Befolgen Sie nicht den Code-Stil einer Religion. Tools, die einen Codestil erzwingen, sind gut, können Sie aber manchmal verrückt machen. Ich habe zum Beispiel die automatische Code-Formatierung von Visual Studio deaktiviert, weil sie mich verrückt gemacht hat. Wenn ein Tool zum Hindernis wird, fügen Sie einfach eine Ausnahme hinzu und sorgen Sie sich nicht, dass Ihr Code nicht 100% konform ist. Es ist wirklich nicht so wichtig und Perfektion ist sowieso nicht erreichbar.


quelle
+1 Nummer zwei ist genau, wie ich (d) meinen Stil verbessere.
Oliver Weiler
2
Guter Gott, Mann ... MSDN? Ich weine um deine Kollegen ...
Shog9
1
  • Wie haben Sie Ihren Codierungsstil definiert und gefunden?

Ich glaube nicht, dass es eine Zeit gab, in der ich sagte: "Ok, das wird mein Stil sein." Konzentrieren Sie sich auf eine bestimmte Umgebung oder Sprache. Ihr Stil sollte die Art und Weise widerspiegeln, wie Sie mit einem bestimmten Problem konfrontiert sind.

  • Wie können Sie es weiter erweitern und verbessern? Das Lesen von Entwicklerblogs kann hilfreich sein, um zu sehen, woran andere arbeiten, und um nach weit verbreiteter Software zu suchen (wenn diese so gut ist, können Sie möglicherweise einige ihrer Lösungen verwenden) usw.
  • Wie pflegen Sie es? (Aus mentalen Notizen, dem Speichern eines Dokuments, der Verwendung eines Tools wie StyleCop usw.) Diese Frage wirft eine andere auf: Könnten Sie Ihren Stil verlieren? Ich denke, es ist ein Teil von dir, also kannst du es nicht, oder?
Guiman
quelle
1

Ich habe in einem Team mit einem Closed-Source-Spiel gearbeitet, das ich geliebt habe, und der leitende Entwickler hat mich betreut und mir geholfen, meine Fähigkeiten zu verbessern, nachdem ich ihn auch gefragt hatte.

Er schlug vor, und ich übernahm den Codierungsstil des Zend Frameworks (http://framework.zend.com/manual/en/coding-standard.html).

Malfist
quelle
1

Am Ende habe ich Eigenschaften verschiedener Stile übernommen - einschließlich Stile, die sich in MSDN widerspiegeln. Ich habe dann Vorlagen in VS eingerichtet, die meine #region/#endregionBlöcke und alles andere, was vorzuziehen ist , bereitstellen .

Ich studiere weiterhin andere Stile, denen ich durch Recherche und Lesen begegne. Wenn ich denke, dass es etwas gibt, das auffällt und meinen Stil in Bezug auf Lesbarkeit, Wartung oder Organisation verbessern könnte, probiere ich es aus. Wenn eine neue Stilanpassung angebracht ist, werde ich Vorlagen in VS aktualisieren oder mentale Notizen machen.

IAbstract
quelle
1
  1. Lesen des DOOM-Quellcodes.
  2. Ich las alles andere, was ich in die Hände legen konnte, und suchte die Teile aus, die funktionierten.
  3. Funktionierender Alkoholismus.

Wenn ich alleine codiere, strebe ich die Kürze an; Die spartanische Programmierung mag vollständig sein, Wahnsinn ! ... Aber es ist wahrscheinlich das, was meinem Credo am nächsten kommt.

Wenn ich mit anderen codiere, insbesondere mit der Wartungscodierung, möchte ich ein Chamäleon sein - meine Änderungen sollten das verbessern, was sie ändern, ohne fehl am Platz zu sein.

Shog9
quelle
1

Wie haben Sie Ihren Codierungsstil definiert und gefunden?

Durch Konzentration auf Einfachheit und Lesbarkeit (Lesbarkeit! == Verständlichkeit, siehe Spartanische Programmierung )

Wie können Sie es weiter erweitern und verbessern?

Indem Sie den Code anderer und meinen eigenen Code (und sogar die Codierungsstandards selbst) überprüfen.

Wie pflegen Sie es? (Aus mentalen Notizen, Aufbewahren eines Dokuments, Verwenden eines Tools wie StyleCop usw.)

Ich benutze Dokuwiki , ein Kinderspiel beim Einrichten (keine Datenbank), hierarchische Struktur, granulare Steuerung (ACL out of the box), wirklich gutes Aussehen und es ist ein Wiki, so dass jeder dazu beitragen kann. Außerdem sind Beiträge / Änderungen immer im Konsens und gerechtfertigt, basierend auf Einfachheit und Lesbarkeit.

dukeofgaming
quelle
Interessanterweise hatte ich noch nie von spartanischer Programmierung gehört, aber das sind die Prinzipien, denen ich instinktiv gefolgt bin. Jetzt werde ich den Namen dafür kennen, toll :-)
Wildpeaks
0

Dies ist eine seltsame Antwort, aber ich habe sehr lange gebraucht, um mit dem Programmieren zu beginnen. Ich habe viel Zeit in der Kunst verbracht, bevor ich mich als Programmierer betrachtete.

Beim Codieren neige ich dazu, in Einheiten wie Schreiben zu denken - Absätze, Phrasen usw. Aus diesem Grund werde ich Code über mehrere Zeilen verteilen, um ihn wie eine Geschichte / einen Aufsatz / etc. Lesbar zu machen. Ich ärgere mich sehr, wenn Entwickler versuchen, so viel wie möglich in eine Zeile oder auf kleinstem Raum zu packen, weil dadurch nichts anderes erreicht wird, als dass sich der Autor schlau fühlt und zukünftige Leser nervt.

Wenn ich aus Gründen der Effizienz etwas Seltsames tun muss, werde ich es kommentieren, um zu erklären, warum es so ist.

Ich werde wahrscheinlich keine Gegenstimmen dafür bekommen, aber vielleicht wird dies trotzdem eine Diskussion auslösen.

Was die technische Seite betrifft, wie die Platzierung von Klammern und dergleichen, halte ich sie ausgerichtet, da das Ergebnis eine verbesserte Lesbarkeit ist.

Aaron Nemoyten
quelle
0

1. How did you define and find your coding style?

Ich nehme einen bereits entwickelten Styleguide an, der von einem großen Unternehmen / Projekt weitgehend entwickelt und weithin akzeptiert oder populär gemacht wird.

Ich mache das aus zahlreichen Gründen, aber hauptsächlich, weil solche Styleguides von Entwicklern sofort übernommen werden können. Ein Styleguide ist nur so viel wert, wie Entwickler bereit sind, sich daran zu halten.

Beispiele hierfür sind Pythons PEP 8 , Android's Style Guide für Java , jQuery Core Style Guide oder Googles Python Style Guide .

2. How do you keep augmenting and improving it?

Das größte Argument für solche Styleguides ist, dass sie hier nicht und nicht von mir erfunden wurden. Es dauerte Dutzende von Entwicklern, einschüchternde Codezeilen und mehr Zeit, als Ihr Unternehmen / Team jemals bereit wäre, in die Entwicklung und Pflege eines Styleguides zu investieren.

Was Verbesserungen betrifft, gab es noch nie einen Styleguide, der sofort alles beantwortet, was Sie wissen müssen. In den meisten Fällen waren die Verbesserungen, die ich gesehen habe, nur eine ausführlichere Version dessen, was der Styleguide bereits mit seinem Ansatz zum Schreiben von Code herausgearbeitet hat.

In solchen Fällen, wenn Sie auf einen Block der Seltsamkeit stoßen, sollten Sie ihn in einen Kern oder in ein anderes geeignetes Tool zum Teilen von Codefragmenten mit Unterstützung der Farbsyntax einfügen und irgendwo mit anderen Entwicklern diskutieren. Das Tolle daran ist, dass Sie in solchen Fällen nicht daran interessiert sind, was der Code tut, sondern nur daran, wie der Code angezeigt wird. Sie können diesen Block also aus dem Kontext nehmen und diskutieren, wie Sie ihn verbessern sollten, indem Sie ihn mit dem vergleichen, was bereits in angegeben ist der Styleguide als Hauptstartpunkt für Diskussionen.

3. How do you maintain it?

Das Tolle ist, dass Sie bereits über vorhandene Dokumente verfügen, die online öffentlich gepflegt werden.

Wenn es um die Formatierung von Code geht, können Sie auch noch einen Schritt weiter gehen und Ihrem Team Formatierungskonfigurationen für den bevorzugten Editor zur Verfügung stellen, mit denen Sie sich keine Mühe machen müssen, um das Erscheinungsbild von Spitzenwerten zu erhalten. Eigentlich würde ich es nicht als Extrameile bezeichnen, sondern als integralen Bestandteil der Entwicklung - es gibt nichts Schlimmeres, als einen Unterschied zu machen, bei dem 90% der Codeänderungen das Einchecken von richtig formatiertem / gestyltem Code waren, weil jemand es vergessen hat Bereinigen, bevor sie eine riesige neue Funktion begangen haben.

Filip Dupanović
quelle
0

Wenn Sie Teil eines Teams sind, sollten Sie sich immer an den Standard des Teams halten. Es gibt viel zu sagen, ein allgemeines Layout zu verwenden und nicht Ihr persönliches. Dies erleichtert das Lesen und Verstehen Ihres Codes für andere, was wichtig ist.

Sardathrion - gegen SE-Missbrauch
quelle