Заниматься некоторым кодом Грея разрабатывает [закрытые] проблемы

Есть несколько возможностей:

  • Пометьте его с помощью прагмы #DEBUG - так что это будет только в режиме отладки
  • Переопределение ExecuteAsync и проверка на наличие флага функции (см. Условно отключите контроллер ASP.NET MVC )
  • Заблокируйте его на балансировщике нагрузки перед вашим приложением (многие базовые приложения dotnet размещаются самостоятельно и получают доступ через локальный хост. Например, служба приложений Azure )
  • Использовать пользовательскую аутентификацию
  • Использовать флаг функции (например, переменную среды config entry) и проверить его внутри заблокированного контроллера
  • Использовать флаг функции (как выше) и пользовательская политика с такой проверкой (подробнее: https://docs.microsoft.com/en-gb/aspnet/core/security/authorization/policies?view=aspnetcore-2.2 )
  • [1110 ]

6
задан 2 revs, 2 users 100% 18 February 2012 в 10:27
поделиться

14 ответов

Короче говоря, нет, если у Вас нет явных правил против этого в Вашем стандарте кодирования (Вы имеете один, правильно?). Изменение кода ради него просто напрашивается на неприятности (и натягивает в команде).

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

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

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

9
ответ дан 8 December 2019 в 03:14
поделиться

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

6
ответ дан 8 December 2019 в 03:14
поделиться

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

3
ответ дан 8 December 2019 в 03:14
поделиться

Я был в аналогичных ситуациях к этому дважды прежде.

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

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

В Вашем случае это не работа, что ему присваивают так, Вы можете

  • попросите, чтобы он не сделал это: это не его присвоение
  • скажите ему не осуществлять рефакторинг код, это не его (т.е., чужой код отпуска то же)
  • потребуйте, чтобы он запланировал задачи включая создание базовых модульных тестов на каждую стандартную программу/метод, которую он хочет изменить через существенные входные диапазоны и проверить вывод на пересмотренном коде. Можно ли сказать ему, что Вы пытаетесь сделать это горьким, потому что стоимость исправления ошибок, которые он представляет, конечно, будет больше, чем время для рефакторинга, и он не работал бы над базовыми функциями?
3
ответ дан 8 December 2019 в 03:14
поделиться

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

  1. Для снижения риска - "Эй это - Вы, кто ответственен, если что-нибудь повреждается".
  2. Рассмотрение кода будет более быстрым, так как это позволяет рецензентам только, чтобы сфокусироваться на коде, который на самом деле добавляется/изменяется.
2
ответ дан 8 December 2019 в 03:14
поделиться

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

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

3
ответ дан 8 December 2019 в 03:14
поделиться

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

Определенно 'люди' проблема, которая может быть решена быстро путем сообщения ему, как работают вещи. Никакая потребность быть противным, просто честным.

Кроме того, у кого есть время для питания с чужим кодом? Для него, очевидно, не полностью определяют задачу.:)

2
ответ дан 8 December 2019 в 03:14
поделиться

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

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

1
ответ дан 8 December 2019 в 03:14
поделиться

Заставьте его прокрутиться через обзор кода для всего, что он изменяет и все, чего он касается. Мне не нравится идея использовать обзор кода в качестве наказания, но он должен понять глубину того, что он делает.

Затем я заставил бы его сидеть с QA и объяснить им, как он изменил намного больше функциональности, чем он должен был. После того, как они сделаны, избив на нем некоторое время. Затем возьмите его менеджеру проектов и сделайте, чтобы тот человек объяснил, как он производит расписание.

Если это не работает, победите его, пока он не кричит.

1
ответ дан 8 December 2019 в 03:14
поделиться

код других

Если Вы верите в общественное владение кода, нет такой вещи.

стиль кода Грея

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


Существует два затрат для моего персонального правила.

"Мое время"

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

"Колебание кодовой базы"

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


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

Ага, задача программирования. Это должно быть присвоено.

0
ответ дан 8 December 2019 в 03:14
поделиться

Спросите, позволяет ли он, чтобы у других было различие в подходе. Если он идет на ту уступку, можно просто указать для каждой строки, он осуществляет рефакторинг кого-то, может прийти и вернуться код назад точно способ, которым это было, потому что их мнение отличалось. Таким образом обеспечение большого большого бесконечного цикла, который все мы знаем, плохо!:)

0
ответ дан 8 December 2019 в 03:14
поделиться

Так как это беспокоит Вас (и Вы являетесь главными), необходимо, по крайней мере, говорить с ним об этом. Так как у Вас есть веская причина, которая будет побеспокоена им (это могло повредить вещи), Вы, вероятно, хотите сказать ему не делать это. Бонусные очки, если можно заставить его на самом деле понимать, почему другие люди не возражают против нескольких запись/точки выхода, и мог бы на самом деле любить их.

0
ответ дан 8 December 2019 в 03:14
поделиться

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

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

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

Надежда, которая помогает!

0
ответ дан 8 December 2019 в 03:14
поделиться

Я немного смущен. Делает это означает, что он помещает a try {} catch (...){} (или эквивалент Вашего языка) вокруг всего кода в каждом методе? В противном случае затем исключения рассчитали бы как обходной путь из метода.

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

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

0
ответ дан 8 December 2019 в 03:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: