Одне, що я постійно бачу тут, - це обговорення "вишикування коду" та відступу. Я хотів би вказати на такі речі:
- вісім пробілів завжди будуть удвічі довшими, ніж чотири пробіли в будь-якому шрифті.
- дві вкладки завжди будуть удвічі довші, ніж одна вкладка будь-якого шрифту.
- будь-який ідентифікатор в одному рядку завжди буде однакової ширини в наступному рядку ... будь-яким шрифтом!
- звичайно, якщо ваші товариші по команді використовують монопростір, а ви ні, це буде виглядати інакше ... але вам слід стандартизувати щось - що б це не було - і якщо це правда, то це буде виглядати однаково для всіх. ..у будь-якому шрифті! Для сміху ви також можете спробувати тримати всіх на просторі та подарувати половині з них широкоформатні монітори ... подивіться, як це відбувається.
- Якщо ви робите щось, що покладається на вишикування коду на основі стовпчастого розташування цих символів на екрані, а не сфери використання ідентифікаторів, якими ви користуєтесь, я вважаю, що те, що ви робите, це хакерство. Ідентифікатори ніколи не повинні обмежуватися певною кількістю символів ціною якості їх імен. Окрім цього ... Ви все ще не малюєте ящики ASCII зірочками для коментарів у своєму коді, правда?
Тож намалювавши все це разом, якщо кожен рядок ви починаєте з одного місця, а послідовний інтервал має однакову ширину, а ідентифікатори не спонтанно змінюють ширину кожного рядка, тоді ваш код НАСАД вирівняється! ... поки щось не інше.
наприклад:
identifier.Method().Property.ToString();
identifier.Method().OtherGuy.ToString(); //how lined up and pretty!
identifier.Method().Sumthing.YouGetThePoint;
- ідентифікатор.Method (). Property.ToString ();
- ідентифікатор.Метод (). OtherGuy.ToString (); //о ні! неправильно вирівняні!
- ідентифікатор.Метод (). Sumthing.YouGetThePoint; //... але кого це цікавить? вони різні властивості!
Єдиний момент, за яким я визнаю, полягає в тому, що нелітерально-цифрові символи, як правило, не дуже широкі; до них належать) (] [} {,: | "; ',`! і. Однак це можна виправити в редакторі шрифтів ... просто зробивши їх ширшими. Це не проблема, властива немонопростору; просто немає На нього не було великого попиту, і тому це ще не зроблено.
Підводячи підсумок, особисті переваги - це нормально, але я думаю, що є мало практичних причин віддавати перевагу монопростору перед немонопростором. Вам подобається зовнішній вигляд? Звичайно, займіться монопростором. Ви хочете, щоб на вашому екрані було більше речей? Переходьте немоно. Але те, як люди ставляться до непросторового простору як до єресі, трохи перебільшено.