Какой антипаттерн делает эта распространенная ошибка программирования - PullRequest
1 голос
/ 22 ноября 2011

Для проекта программирования,

скажем, программист по-разному называл похожие функции стилей во многих местах, например ...

int ask_bro_4_data();

и еще один как

int ask_mom_for_data();

Какой антипаттерн это представляет? По сути, это отсутствие стандартизации правильно? Как и в случае, одна функция использует для, другая использует 4.

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

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

Ответы [ 2 ]

1 голос
/ 22 ноября 2011

Это будет считаться скорее соглашением по синтаксису, чем шаблоном.

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

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

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

Если решение тогда создает больше проблем, чем решает;тогда это становится анти-паттерном.

В этом примере;Синглтоны сложны для юнит-теста;так что это одна из причин, почему многие считают это анти-паттерном.

0 голосов
/ 22 марта 2012

Anti-Pattern: Переименовать позже

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

С этим можно справиться:

  • ясно руководящих указаний от команды о том, к чему следует стремиться при соблюдении соглашений об именах,
  • признавая, что рефакторинг - это текущий процесс , параллельный кодированию.
  • простые команды IDE , которые дают пользователю возможность подумать о, мы использовали здесь «4» и «здесь», это беспокоит * Ctrl + R Ctrl + R * ах это лучше * продолжает кодирование. *
...