Подтвердить что ты не робот

Должен ли я совершать косметические изменения?

Существуют незначительные изменения стиля кодирования, которые я часто хочу передать исходному элементу управления, но теперь журнал изменений заполнен теми изменениями, которые не влияют на функциональность кода.

Что мне делать в следующий раз, когда я должен исправить такие незначительные вещи, как:

  • Удалить и отсортировать usings (в .NET, импорт в python, включает в С++)
  • Исправить отступы, интервалы и разрывы строк
4b9b3361

Ответ 1

Если вы меняете файл кода, я не понимаю, почему вы не захотите совершать и делиться этими изменениями. Если вы этого не сделаете, вы рискуете, что кто-то другой их исправит, а затем столкнется с вашим.

Если они не являются изменениями, которые другие пользователи хотят в кодовой базе, возможно, вы должны спросить себя, почему вы тратите время на их запись.

Ответ 2

Соблюдайте их, при условии, что комментарий фиксации помечен соответствующим образом, чтобы было проще игнорировать при просмотре списка изменений.

Не выполняйте их в той же операции, что и изменение функциональности. Таким образом, если вы что-то сломаете, легче сузить то, что сломало его, и легко восстановить при необходимости рефакторинг.

Ответ 3

Не связывайте их вместе с несвязанными исправлениями.

Я бы сделал их, но добавьте некоторое предопределенное ключевое слово в сообщение фиксации. Сообщения с этим ключевым словом можно было бы игнорировать при создании журналов изменений.

Например, вы можете использовать префикс типа [cleanup].

[cleanup] Removed some whitespace
[cleanup] Changed format
Fixed some major bug.
[cleanup] Corrected indentation

Ответ 4

В проектах, где я единственный разработчик, я стараюсь делать подобные исправления вместе с другими изменениями кода.

В проектах, где есть команда из нас, я стараюсь самостоятельно совершать подобные изменения, чтобы они не скрывали "настоящую работу".

Я чувствую, что важно исправить все, что "неправильно" с помощью кода, даже если это чисто второстепенные вещи, такие как отступы.

Ответ 5

Я думаю, что это зависит от вашей рабочей среды и того, как другие, работающие в одном проекте, хотят иметь дело с тем, что может отличаться.

Итак, моим общим предложением было бы спросить людей, работающих с одним и тем же кодом, и придумать руководство для подобных случаев. Возможно, вы обнаружите, что люди не возражают против регистрации из-за косметических изменений или что они предпочитают жить с немного "непринужденностью", а не с суматошными журналами изменений.

Окончательное руководство, которое является прозрачным для всех, является наилучшим способом решения этих вопросов и предотвращения путаницы в будущем.

Лично мне нравится убирать код и не против, если он будет проверять чистое косметическое изменение. Однако, если это всего лишь несколько интервалов и разрывов строк, я бы, вероятно, просто допустил это и изменил бы это только в том случае, если бы я работал над одним и тем же файлом кода. Я часто удаляю и сортирую, потому что я нахожу это сбивающим с толку, если есть целая куча привычек, которые не имеют смысла, но это только я.

Ответ 6

Я думаю, что когда у вас есть команда разработчиков, работающих над одним и тем же кодом, самое главное - договориться о косметическом стиле для кода. Итак, ваша первая задача - попытаться заставить всю команду согласиться на стиль кодирования.

Удачи.

Как только вы это сделаете, совершите косметические изменения так часто, как вы хотите, чтобы напомнить людям придерживаться стиля.

Theres отличный раздел в Code Complete о достоинствах разных стилей кодирования. Если вы можете заставить свою команду прочитать раздел перед вашей встречей в стиле кодирования, это может помочь вытащить вас из собрания в живую.

Ответ 7

Есть несколько проблем.

Во-первых, не делайте изменений в коде, потому что вам скучно и не хватает реальных задач. Если это так, поговорите с вашим менеджером проектов и получите некоторые реальные задачи, назначенные вам, что-то со значением.

Другими словами, не меняйте код для изменения. Всегда добавляйте некоторое значение в код в процессе.

Теперь, если эти изменения способствуют упрощению обработки кода, вам и другим, выполните их. Такие вещи, как обеспечение соблюдения стандартов именования, реформаторский критический код и т.д. Но возьмите задачу для этого, чтобы ваш менеджер проекта мог сказать "Да, это хорошо, потратьте 2 часа на это и вернитесь ко мне".

Завершите изменения, когда закончите с ними. Не ломайте их вместе с какой-либо реальной задачей, которую вы закончили непосредственно перед ними, или следующей, это позволит скомбинировать исправления между ветвями, обзорами кода и просто общим просмотром кода, трудно следовать.

"Хорошо, поэтому вы исправили ошибку 7711, а также изменили около 100 других файлов. Приятно, так что на самом деле это ошибка?"

Ответ 8

Определенно зафиксировать их. Если вы передадите их вместе с реальными изменениями кода, и вам придется откатить эти изменения, вы потеряете свои косметические исправления.

В идеале, фиксации должны быть похожими на транзакции базы данных: кусок соответствующего рабочего кода, который можно отбросить, не затрагивая остальную часть системы.

Ответ 9

Если изменения относятся к вещам, которые могут быть как-то противоречивыми (например, положение скобок), убедитесь, что вы согласовали стиль кода с остальной частью вашей команды. Не просто измените его на свой собственный предпочтительный стиль, а затем проверьте его. В противном случае кто-то другой может затем изменить его и проверить свои изменения, а затем изменить его на свой путь...

Ответ 10

Являются ли эти "незначительные" вещи исправлениями? Если да, зафиксируйте их. Если нет, не делайте этого.

Действительно, это зависит от того, что вы и ваша команда считаете важными.

Ответ 11

Мне нравится совершать часто. Конечно, в любое время происходят заметные изменения. Это легко. Если вы начнете разделять фрагменты кода и попытаться совершить некоторое действие раньше, чем позже, вы в конце концов забудете совершить что-то очень важное.

Вкратце: часто фиксируйте и ВСЕГДА записывайте изменения. Когда произойдет ОГРОМНОЕ изменение, пометьте его.

Ответ 12

Не совершайте только ради совершения. Я обычно добавляю те для кода, над которым я работаю. Например, если я исправляю ошибку в методе A, я также сделаю все косметические изменения.

ИМО, вы, ребята, не хватает инструментов для кодирования, таких как PMD, JIndent и т.д., которые заботятся об этих проблемах при кодировании. Некоторые IDE, такие как Netebeans, отображают эти "проблемы" как предупреждения. Поэтому его не случайное/личное изменение соответствует стандартам.

Ответ 13

Зафиксируйте их следующим большим изменением как sidenote. По крайней мере, что бы я сделал.