Вопросы с тегом «anti-patterns»

Анти-паттерн - это обычное поведение или практика, несмотря на то, что они неэффективны или контрпродуктивны.

554
Значит синглтоны плохие, тогда что?

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

209
Есть ли название для (анти) шаблона передачи параметров, который будет использоваться только на нескольких уровнях в цепочке вызовов?

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

164
Что не так с волшебными струнами?

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

129
Являются ли исключения в качестве контрольного потока серьезным антипаттерном? Если так, то почему?

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

118
Является ли генерация исходного кода анти-паттерном?

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

101
Как называется антипаттерн напротив «изобретать велосипед»? [закрыто]

Антипаттерн « Изобретай колесо » довольно распространен - ​​вместо использования готового решения напишите свое собственное с нуля. Кодовая база растет без необходимости, немного других интерфейсов, которые делают то же самое, но немного по- разному, тратится время на написание (и отладку!)...

98
Какие вещи мгновенно звонят в тревогу при взгляде на код? [закрыто]

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

68
Название этого антипаттерна? Поля как локальные переменные [закрыто]

В некотором коде, который я рассматриваю, я вижу вещи, которые морально эквивалентны следующему: public class Foo { private Bar bar; public MethodA() { bar = new Bar(); bar.A(); bar = null; } public MethodB() { bar = new Bar(); bar.B(); bar = null; } } Поле barздесь является логически локальной...

65
EAV - это действительно плохо во всех сценариях?

Я подумываю использовать модель сущность-атрибут-значение (EAV) для некоторых вещей в одном из проектов, но все вопросы об этом в Stack Overflow заканчиваются ответами, называющими EAV анти-паттерном. Но мне интересно, так ли это во всех случаях? Допустим, сущность продукта магазина, у него есть...

60
Является ли изменение входящего параметра антипаттерном? [закрыто]

Я программирую на Java, и я всегда делаю конвертеры вроде этого: public OtherObject MyObject2OtherObject(MyObject mo){ ... Do the conversion return otherObject; } На новом рабочем месте шаблон: public void MyObject2OtherObject(MyObject mo, OtherObject oo){ ... Do the conversion } Для меня это...

58
ORM - это анти-паттерн? [закрыто]

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

56
Является ли jQuery примером «божественного объекта» антипаттерна?

Я хочу спросить - я медленно изучаю jQuery. То , что я вижу , это точный пример из Бога объекта анти-паттерна . По сути, все идет к $функции, что бы это ни было. Прав ли я, и действительно ли jQuery является примером этого...

54
Термин (или «шаблон»?) Для «Сделай что-нибудь, если это еще не сделано» [закрыто]

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

46
Хорошая или плохая практика маскировать коллекции Java значимыми именами классов?

В последнее время у меня была привычка «маскировать» коллекции Java с понятными для человека именами классов. Несколько простых примеров: // Facade class that makes code more readable and understandable. public class WidgetCache extends Map<String, Widget> { } Или же: // If you saw a...

45
Ведение кода: сохранение плохого паттерна при расширении нового кода для обеспечения согласованности или нет?

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

44
Переменные ошибок - это анти-шаблон или хороший дизайн?

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

43
Являются ли так называемые «сквозные проблемы» действительным поводом для нарушения SOLID / DI / IoC?

Мои коллеги любят говорить «ведение журнала / кеширование и т. Д. - сквозная проблема», а затем везде использовать соответствующий синглтон. Все же они любят IoC и DI. Действительно ли это оправданное нарушение принципа SOLI D...

39
Являются ли служебные классы, содержащие только статические члены, антипаттерном в C ++?

Вопрос « Куда мне помещать функции, не связанные с классом », вызвал некоторые споры о том, имеет ли смысл в C ++ объединять служебные функции в классе или они просто существуют как свободные функции в пространстве имен. Я пришел из C # фона, где последний вариант не существует, и, таким образом,...