Eine Sache, die ich hier immer wieder sehe, ist die Diskussion über "Aneinanderreihen von Code" und Einrückung. Ich möchte auf Folgendes hinweisen:
- Acht Leerzeichen sind in jeder Schriftart immer doppelt so lang wie vier Leerzeichen.
- Zwei Registerkarten sind in jeder Schriftart immer doppelt so lang wie eine Registerkarte.
- Jeder Bezeichner in einer Zeile hat in der nächsten Zeile immer die gleiche Breite ... in jeder Schriftart!
- Sicher, wenn Ihre Teamkollegen Monospace verwenden und Sie nicht, wird es anders aussehen ... aber Sie sollten sich auf etwas standardisieren - was auch immer es ist - und wenn das wahr ist, wird es für alle gleich aussehen. ..in jeder Schriftart! Zum Lachen könnten Sie auch versuchen, alle auf Monospace zu halten und die Hälfte von ihnen Breitbildmonitore zu geben ... sehen Sie, wie das geht.
- Wenn Sie etwas tun, das darauf beruht, Code basierend auf der Spaltenposition dieser Zeichen auf dem Bildschirm und nicht auf dem Umfang der von Ihnen verwendeten Bezeichner auszurichten, ist das, was Sie tun, ein Hack. Bezeichner sollten niemals auf Kosten der Qualität ihrer Namen auf eine bestimmte Anzahl von Zeichen beschränkt werden. Abgesehen davon ... zeichnen Sie immer noch keine ASCII-Felder mit Sternchen für Kommentare in Ihrem Code, oder?
Wenn Sie also all dies zusammen zeichnen, wenn Sie jede Zeile an derselben Stelle beginnen und der konsistente Abstand dieselbe Breite hat und die Bezeichner die Breite in jeder Zeile nicht spontan ändern, wird Ihr Code tatsächlich ausgerichtet! ... bis etwas anders ist.
zum Beispiel:
identifier.Method().Property.ToString();
identifier.Method().OtherGuy.ToString(); //how lined up and pretty!
identifier.Method().Sumthing.YouGetThePoint;
- identifier.Method (). Property.ToString ();
- identifier.Method (). OtherGuy.ToString (); //Ach nein! verstellt!
- identifier.Method (). Sumthing.YouGetThePoint; //...aber wen kümmert's? Sie sind verschiedene Eigenschaften!
Der einzige Punkt, den ich zugeben werde, ist, dass nicht alphanumerische Zeichen normalerweise nicht sehr breit sind. Dazu gehören) (] [} {,: | "; ',`! und. Dies könnte jedoch in einem Schrifteditor behoben werden ... einfach indem man sie breiter macht. Es ist kein Problem, das mit Nicht-Monospace verbunden ist; es gibt nur keine Es war keine große Nachfrage danach, und so wurde es noch nicht getan.
Zusammenfassend ist die persönliche Präferenz in Ordnung, aber ich denke, es gibt wenig praktischen Grund, Monospace gegenüber Nicht-Monospace zu bevorzugen. Du magst das Aussehen? Klar, mach Monospace. Sie möchten, dass mehr Dinge auf Ihren Bildschirm passen? Gehen Sie nicht mono. Aber die Art und Weise, wie Menschen Nicht-Monospace wie Häresie behandeln, ist etwas übertrieben.