Олександр Соловйов про Фасилітатор покращення якості коду
Цікавий пост Олександра Соловйова, Head of Product в Kasta, в його телеграм-каналі Bite the Byte 👇
Дратують люди, які вважають 80 символів неважливим обмеженням через недосконалість терміналів у древності (тут маються на увазі часи
Це ж невимовно круте обмеження! Фасілітатор покращення якості коду! І все таке. Чому, запитає допитливий читач (ггг).
• Найпростіша причина: так легше читати. Коли автор не може дозволити собі всі думки в цілому світі запхати в одну строку — це знижає шанси на виникнення піків складності (за відсутністю сталого терміну). Можна сказати, що гарний програміст уникає їх у коді самостійно, але ж це веде до того, що він свою енергію втрачає не туди, куди треба — а на самообмеження. А сила волі — дуже кінечний ресурс. Тож ок, воно обмежує автора для користі читача.
• Це наче продовження попередньої думки, але під іншим кутом: обмеження змушує автора подумати над тим, як краще структурувати код, як розділити його і все таке. Типу годі вже грязюку розводити, подумай, де чекпоінти. Рядок — він як регекс, якщо в ньому забагато символів, ти вирішуєш проблему невірно!
• Найцікавіше: це допомога самому автору. Сумніваюся, що хтось образу з голови пише код в редактор і все. Набагато більше часу ми витрачаємо на редагування і, відповідно, на повторне читання того коду! Тож не смітить одразу і легше буде перероблювати і прибирати потім.
Раптовий поворот: стаття про те, що чувак обмежив собі ширину у редакторі і йому стало простіше писати тексти.
Воно трохи емпіричне, але збігається з моїм досвідом: з телефона пишеш простіше, коротше, а отже, краще. :) І менше відволікаєшся, але це про інше. ;)
Ви можете згадати мої думки про поради, тож думайте самі. У сенсі думайте про те, як краще виконувати це правило. 😬
А як ви ставитеся до такого правила/обмеження? Чи виконуєте? Обговорімо в коментарях!
Дивіться також інтерв’ю Володимира Рожкова з Олександром Соловйовим про Clojure, як стати CTO, складність бізнесу та Дія Сіті.
13 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів