Что делать, если коллега редактирует ваш код, просто чтобы изменить внешний вид?

softwareengineering.stackexchange https://softwareengineering.stackexchange.com/questions/3918

Вопрос

Что вы должны делать, если коллега редактирует ваш код?

Без цели добавления функциональности или исправления ошибок, просто чтобы изменить то, как она выглядит ...

Это было полезно?

Решение

Поговорите с ними об этом. Вступайте в разговор с отношением «они не делают это, чтобы раздражать меня или потому, что у них есть какая-то форма обсессивно-компульсивного расстройства; они пытаются сделать мой код лучше».

Потому что ты можешь ошибаться. Это может быть тонкое исправление ошибки, и вы просто не заметили.

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

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

Но вы никогда не узнаете, если не спросите.

Другие советы

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

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

Если ничего не удается, верните регистрацию. ;)

РЕДАКТИРОВАТЬ: Все ставки не отключены, если желание внести косметические изменения внесли ошибку.

ИМО В любом случае, вы и ваша команда должны использовать стандарт кодирования. Если это так, то вопросы становятся: «Соответствует ли ваш исходный код стандарту?» Если «да», то ваш коллега не должен касаться вашего кода, если не изменить его функционально. Если «нет», то я боюсь, что ваш коллега имеет полное право подчеркнуть ваш код. В качестве ведущего проекта я все время делаю это.

Если вы не используете стандарт кодирования, то весь аргумент о том, что составляет «хороший код», становится слишком субъективным. Следовательно, почему вы должны использовать стандарт кодирования :)

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

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

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

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

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

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

IDE Like Visual Studio имеет вариант под названием Format Document Это будет форматировать код в соответствии с правилами, которые пользователь установил в IDE. Это может быть ваш коллега использует это (либо автоматически, не зная, либо преднамеренным применением). Возможно, их IDE использует пространства вместо вкладок, или наоборот, и они применяются автоматически, даже не зная? Но вам нужно поговорить с ними, чтобы узнать.

Между прочим, я часто буду переформировать код коллег, если он явно не следит за какой-то схемой форматирования (т.е. это повсюду). Надеюсь, это тонкий способ, чтобы они заметили. (Однако я бы не переформатировал бы это, если бы это было аккуратно, но не на мой взгляд).

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

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

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

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

Конечно это случайный Работа, когда это сломало функциональность «вины» в SVN.

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

Кодовые конвенции является а отвечать. У вас должен быть один на работе. Если вы этого не сделаете, начните прямо сейчас (хорошая отправная точка Руководство по стилю Google) Когда существуют написанные (или, по крайней мере, широко известные) правила, ответ на ваш вопрос тривиальен.

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

int myFunction( ) {

    int i ;
  return  0;

}

стать

int myFunction() {
    int i;
    return 0;
}

Итак ... я должен быть наказан из -за моих действий? В реальной жизни у меня на самом деле есть тонны журналов SVN, чтение «Форматирование». ;-)

Используйте инструмент проверки стиля

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

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

Это мысль, которую я видел в Интернете, говорящий о рефакторинг И, возможно, объясните, почему кто -то касается вашего кода, чтобы сделать его лучше:

Почему?

Есть две основные причины для рефакторов:

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

  2. Адаптироваться к изменениям в требованиях. Изменения происходят в разработке программного обеспечения; Чтобы быть отзывчивым на изменения, лучше иметь хорошую кодовую базу. У нас есть два варианта для обоих сценариев, путь код или рефактор его. Платание кодекса приведет нас к некачественному коду, и увеличит наш технический долг, всегда лучше рефактор.

Когда?

  1. Чем раньше, тем лучше, как легче.

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

Какая?

  1. Весь код и весь дизайн являются кандидатами на рефакторинг.

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

Вы просто должны позволить ему сделать все возможное, если бы это было бы здорово для обоих и сэкономить время в будущем!

ваше здоровье

Лицензировано под: CC-BY-SA с атрибуция
scroll top