Na, geht das? Gilt es als schlechte Praxis?
IMO ist es weniger lesbar. Ich hasse es, nach rechts zu scrollen, dann wieder nach links, rechts, links und so weiter. Das macht das Codieren schmerzhafter und verwirrt mich manchmal.
Wenn ich zum Beispiel eine lange Zeichenfolge codiere, gehe ich wie folgt vor ...
bigLongSqlStatement = "select * from sometable st inner join anothertable at" +
"on st.id = at.id" +
"and so on..." +
"and so on..." +
"and so on..."
coding-standards
Mr. Ant
quelle
quelle
Antworten:
Ja, in der Tat, sowohl im wörtlichen als auch im allgemeinen Sinne.
Ich mache gerne Side-by-Side-Code-Unterschiede, und zu breite Linien erschweren dies:
Sprachen wie Scala mit Strings in dreifachen Anführungszeichen ermöglichen es Ihnen, einen String aus vielen Zeilen zu konstruieren, ohne dass Laufzeitaufwand, unansehnliche Anführungszeichen und Pluszeichen (wie in Ihrem Beispiel gezeigt) beim Zusammenfügen von Teilen eines Strings entstehen.
quelle
Ja, ich halte 80 Zeichen pro Zeile für sinnvoll und gebräuchlich.
quelle
Das ist eine sehr wichtige Frage für mich! Ich habe 7 Monate an einem 13-Zoll-Laptop mit Kollegen mit 24-Zoll-Desktop-Monitoren gearbeitet und dabei viel Zeit damit verbracht, die Zeilen zu verkürzen, um etwas Lesbares zu erhalten.
80 Spalten sind in vielen Fällen etwas klein (außer wenn Sie an einem Terminal mit der einzigen Option vi arbeiten;)), aber mehr als ~ 150 sind zu viel (siehe unten).
Das ist für die reine "Lesbarkeit" Frage.
Jetzt finde ich für den Teil 'gute Praxis' sehr oft, dass so lange Zeilen fehlerhaft sind, dh einen Teil, der in eine temporäre Variable extrahiert werden sollte oder der zum Beispiel dupliziert wird (ObjectiveC, allgemeines Snippet in der iPhone-Programmierung). :
Bitte beachten Sie, dass dies bei der Arbeit mit dreidimensionalen Vektoren oder Matrizen noch schlimmer werden kann.
Umgeschriebenes Beispiel:
Dies passt jetzt auf einen kleineren Bildschirm, ist einfacher mit einer IDE zu debuggen oder in die Standardausgabe zu schreiben und kann je nach den Kosten für den Methoden- / Eigenschaftsaufruf sogar schneller sein. Das ist natürlich etwas erzwungen, die meisten Beispiele aus der Praxis sind viel komplexer ...
quelle
Nicht immer.
Um nur eine alternative Ansicht hinzuzufügen: Wenn ich Code lese, kann ich oft den Kern der Codezeile abrufen, ohne die gesamte Zeile lesen zu müssen. Wenn ich den Methodennamen lesen kann, aber die Methodenparameter nicht auf dem Bildschirm erscheinen, bin ich normalerweise nicht zu aufgeregt, da ich anhand des Methodennamens allein erkennen kann, was die Absicht dieser Codezeile ist. Wenn ein paar Codezeilen auf dem Bildschirm erscheinen, ist es meiner Meinung nach für den kompakteren Code sinnvoll, gelegentlich (da ist ein wichtiges Wort) horizontal zu scrollen. Ich finde manchmal mehrzeiligen Code mit einer Anweisung ablenkend, da ich mental zusammensetzen muss, welcher Code zu welcher Anweisung gehört.
Häufig haben die horizontal überlaufenden Codezeilen ihre wichtigen Bits links (sichtbar) und die weniger wichtigen Bits rechts (außerhalb des Bildschirms). Für mich verbessert dies die Lesbarkeit, da ich den Code meistens nach unten scannen kann, wobei ich das sehe wichtige Bits in jeder Zeile im Gegensatz zu der Alternative, dass die weniger wichtigen Codebits aus einer zu langen Zeile den visuell wichtigen Platz auf der linken Seite der folgenden Zeile (n) einnehmen.
Abgesehen davon würde ich sicherlich nicht sehr oft horizontal scrollen wollen, aber ich finde dies in diesen Tagen mit Breitbildmonitoren weniger problematisch.
quelle
Ja tut es.
Übrigens ein Tipp. Wenn Sie eine Sprache mit mehrzeiligen Zeichenfolgen verwenden (praktisch alle Skriptsprachen haben diese Zeichenfolgen) und SQL mit langen Zeilen enthalten, ist es sehr hilfreich, wenn Sie die SQL mit konsistenten Formatierungsregeln für SQL in eine mehrzeilige Zeichenfolge einfügen. Informationen zum verwendeten Formatierungsstil finden Sie unter http://bentilly.blogspot.com/2011/02/sql-formatting-style.html .
quelle
Nein, das tut es nicht.
Ich habe einen Redakteur. Es hat nicht nur Zeilenumbruch, sondern auch Zeilenumbruch-Einrückungen , die (wenn der Bildschirm 100 Zeichen breit ist) dazu führen würden
erscheinen als
oder mit einer beliebigen Einrückungsstufe, die als Standard für die aktuelle Sprache festgelegt ist.
Zeilen, die breiter als mein Bildschirm sind, machen Code nie weniger lesbar als manuell eingerückter Code.
edit: ooooh, ich wusste, dass diese Antwort unbeliebt sein würde :)
quelle
Sicher ist es. Es gibt einen Grund, warum Zeitungen und Zeitschriften Spalten verwenden. Die Lesbarkeit ist ein wichtiger Faktor. Beim Lesen scannen unsere Augen mit relativ geringen seitlichen Bewegungen nach unten. Der Effekt besteht darin, dass unsere Augen das, was wir lesen, schnell scannen können.
Selbst wenn sie auf dem Bildschirm sichtbar sind, zwingen breite Spalten unsere Augen, schnell hin und her zu scannen. Beim Zurückscannen verstehen wir eigentlich nichts. Dies wird das Lesen und Verstehen erheblich verlangsamen. Der Effekt ist ähnlich wie bei alten mechanischen Druckern. Diese erforderten häufig das Einfügen mehrerer Nullzeichen nach einem Wagenrücklauf, damit der Wagen oder der Druckkopf Zeit für die Neupositionierung für die nächste Zeile hat.
Darüber hinaus erfolgt die vertikale Anordnung normalerweise so, dass die Gruppierung der Inhalte in der Zeile verdeutlicht wird. Dies sollte normalerweise nur für zusammengesetzte logische Bedingungen gelten. Lange Formeln lassen sich besser als eine Reihe von Anweisungen strukturieren. (Der Optimierer behebt zusätzlichen Aufwand, und einige Optimierer geben bei komplexen Formeln auf oder arbeiten schlecht.)
Bezeichner mit mehreren Punkten, die große Linien erfordern, geben Codiertechniken an, die korrigiert werden sollten.
quelle
Mäuse-Räder machen es einfach, vertikal schnell zu scrollen ... horizontal zu scrollen ist im Vergleich zu teuer.
quelle
~ Interaktionsrichtlinien für die Windows-Benutzererfahrung S. 112
Ja.
Engländer lesen von links nach rechts, was zu ständigem Scrollen = unproduktiv führt
Aus diesem Grund aktiviere ich in meiner IDE immer den Zeilenumbruch mit visuellen Linienzeichen.
quelle