Описание тега anti-patterns

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

Это антипаттерн - использовать Angular's $watch в контроллере?

В моем бесконечном стремлении сделать вещи "правильным" угловым способом, я много читал о том, как заставить контролеров наблюдать за изменениями в моделях, используемых в угловых сервисах. Некоторые сайты говорят, что использование $watch на контро…
29 янв '14 в 20:42
1 ответ

Шаблоны JS с замыканиями и производительностью

У меня есть сомнения по поводу шаблонов и производительности JS, после того, как Дуглас Крокфорд прочитал "Javascript: Хорошие части", вы получили представление о том, как работает Closures, и в первую очередь подумайте о написании такого кода (func…
2 ответа

Жестко закодированные вложенные массивы в PHP? Хорошая или плохая практика?

Недавно я обсуждал с одним человеком пример кода, где человек использует вложение массивов. И мы начали обсуждать использование вложенных массивов в коде вообще. Когда мы передаем параметры в генераторы и т. Д., Иногда проще использовать вложенные м…
25 дек '10 в 15:17
2 ответа

Потребитель / Производитель "своевременная" очередь

Я реализовал очередь приоритетов потребителя / производителя, где приоритетом фактически является отметка времени, представляющая, когда элемент должен быть доставлен. Это работает довольно хорошо, но я хотел бы знать, есть ли у кого-нибудь лучшая и…
05 дек '12 в 23:07
3 ответа

Является ли использование строковых миксинов для повторного использования кода антишаблоном?

Для тех из вас, кто не знаком с миксинами D-строк, они в основном являются компиляциями времени компиляции. Вы можете взять любую строку времени компиляции (литеральную или сгенерированную с помощью шаблонного метапрограммирования или оценки функции…
21 июл '10 в 14:40
1 ответ

ActiveRecord находит идентичный набор в моделях many_to_many

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

Когда можно использовать имя Enum ()

Имя переменной может быть изменено и не должно влиять на логику. Но name() Метод в Enum возвращает имя константы в качестве значения, чтобы он мог нарушить существующий код. Должен ли я избегать использования name()? Например, public enum Example1 {…
14 сен '18 в 06:43
6 ответов

Это анти-паттерн?

Ситуация такова: у вас есть два класса, которые реализуют один и тот же интерфейс, и оба класса работают вместе, чтобы завершить некоторый бизнес-процесс. Например networkUserManager а также localUserManager воплощать в жизнь IUserManager у которого…
20 янв '10 в 22:09
1 ответ

Является ли модалильность анти-паттерном в MVVM?

Там есть интересная статья, в которой обсуждаются модели общения между моделями представлений. Недавно я изо всех сил пытался реализовать модальное диалоговое окно в приложении WPF MVVM, но чем больше я об этом думаю, тем больше я вижу причин, почем…
24 апр '13 в 09:51
0 ответов

Пространство имен Python2 для самоанализа

Я пробую интроспекцию Python каким-то странным образом. Например, у меня есть Class LoggerManager, который инкапсулирует пул определенных классов логгеров для статистики. Я знаю, что это не стандартный способ сделать это, но я не могу использовать м…
6 ответов

Является ли проверка типа isInUnitTest() антипаттерном?

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

Угловые взаимозависимые услуги: предотвращение круговой зависимости

У меня есть два отдельных графических интерфейса, которые являются частью одной системы. Один вверху экрана (navEditor) и один сбоку (routeEditor). Они должны часто обновлять друг друга и вызывать функции друг друга. У каждого есть сервис, который с…
1 ответ

Украшение класса, который наследует защищенную наблюдаемую

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

Какое худшее злоупотребление вы видели в синтаксисе LINQ?

На недавнем подкасте Dot Net Rocks Джон Скит упоминал о возможных злоупотреблениях синтаксисом LINQ. Какие примеры видели люди, когда с LINQ совершаются безумные поступки?
29 окт '08 в 09:53
2 ответа

Значение по умолчанию для параметра функции Python импортируется из другого модуля

Давайте рассмотрим следующий пример: import module def function(param=module.value): pass Это хорошая практика, чтобы установить значение по умолчанию аргумента функции для идентификатора, импортированного из другого модуля? Я знаю, что это работает…
3 ответа

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

Я написал следующие строки кода: $this->validate($group); $this->em->persist($group); $this->em->flush(); Метод validate сгенерирует исключение, если $ group недопустим. Проблема в том, что она кажется "хрупкой". Если бы другой разраб…
12 мар '16 в 20:33
4 ответа

Почему Синглтон считается анти-паттерном?

Возможный дубликат: Что такого плохого в синглетонах? Шаблон проектирования синглтона: подводные камни Синглтон анти-паттерн Недавно я слышал, что синглтон является анти-паттерном. Я знаю, что это связано с тем фактом, что создание синглтона класса …
06 окт '12 в 00:07
2 ответа

Вызов статического метода для данного экземпляра

В этом ответе есть этот код: //in a main method somewhere Super instance = new Sub(); instance.method(); //... public class Super { public static void method() { System.out.println("Super"); } } public class Sub extends Super { public static void me…
2 ответа

jQuery (анти-) шаблон: построение селекторов со строковыми манипуляциями

Слишком часто я обнаруживаю, что строю селекторы с помощью строк (split, search, replace, concat, +, join). Хорошо или плохо?
1 ответ

Почему анти-шаблон позволяет компоненту реагировать редактировать свои реквизиты?

Я искал ответ на другую проблему, и я нашел этот ответ ( ссылка). Мне просто любопытно, почему модификация его собственных реквизитов является анти-паттерном, и почему это не то, что изменение его собственного состояния не является и анти-модель?
17 июл '16 в 13:22