Вопросы по теме 'anti-patterns'

Приводит ли ООП с одной парадигмой к инверсии абстракции?
Для тех из вас, кто не знаком с этой концепцией, инверсия абстракции — это реализация низкоуровневых конструкций поверх высокоуровневых, и обычно считается плохой вещью, поскольку добавляет ненужную сложность и ненужные накладные расходы. Конечно,...
727 просмотров
schedule 21.12.2023

Какой самый ЗЛОЙ код вы когда-либо видели в производственной корпоративной среде?
Какой самый злой или опасный фрагмент кода вы когда-либо видели в производственной среде компании? Я никогда не сталкивался с производственным кодом, который я бы счел намеренно вредоносным и злым, поэтому мне очень любопытно посмотреть, что нашли...
59714 просмотров
schedule 03.03.2023

Что такое антипаттерн?
Я изучаю паттерны и антипаттерны. У меня есть четкое представление о закономерностях, но я не понимаю антипаттернов. Определения из Интернета и Википедии меня сильно смущают. Кто-нибудь может простыми словами объяснить мне, что такое антипаттерн?...
85138 просмотров

Что опаснее: ненужный синглтон или Бог-объект?
Вот ситуация: у меня класс, который слишком много делает. Это в основном для доступа к информации о конфигурации, но также имеет соединение с базой данных. Он реализован как синглтон, поэтому это также затрудняет модульное тестирование, поскольку...
1399 просмотров

как вы называете это антипаттерном?
В базе данных у вас есть таблица с битовым полем, позвольте называть это поле Активным В приложении у вас есть логическая переменная, назовите ее NotActive . Каждый раз, когда вы получаете поле из таблицы, в приложении вы меняете значение...
539 просмотров
schedule 01.05.2022

Кто-нибудь распознает какой-либо шаблон / антипаттерн в прилагаемой диаграмме классов?
альтернативный текст http://img8.imageshack.us/img8/8558/classdiagram.png Краткое описание: я сомневаюсь, нормально ли, что AbstractCrudDaoImpl реализует интерфейс и абстрактный класс, унаследованные от одного и того же родителя ( ReadOnlyDao ).
362 просмотров
schedule 08.04.2024

Масштабирование синглетонов
После нескольких трудных часов обдумывания некоторых проблем архитектуры для моего серверного приложения я чувствую, что мне придется использовать синглтоны для достижения моей цели. Чисто по следующим причинам (оправдывая свой запах): Мне не...
306 просмотров
schedule 28.01.2023

Обертки/закон Деметры кажутся антипаттерном
Я читал об этом «Законе Деметры», и он (и чистые классы «обертки» в целом) кажутся обычно антипаттернами. Рассмотрим класс реализации: class FluidSimulator { void reset() { /* ... */ } } Теперь рассмотрим две разные реализации другого...
1092 просмотров

Есть ли возможность параметризации с использованием абстрактных классов, а не интерфейсов?
В настоящее время я разрабатываю API на основе компонентов, который сильно зависит от состояния. Компоненты верхнего уровня реализуют около дюжины интерфейсов каждый. Таким образом, стандартные компоненты верхнего уровня находятся поверх стека...
74 просмотров
schedule 28.10.2022

Является ли использование миксинов D-строки для повторного использования кода анти-шаблоном?
Для тех из вас, кто не знаком с примесями D-строки, они, по сути, оцениваются во время компиляции. Вы можете взять любую строку времени компиляции (будь то литерал или сгенерированный метапрограммированием шаблона или оценкой функции времени...
1500 просмотров
schedule 25.07.2023

Основная ассоциативная таблица?
Рассмотрим модель сопоставления клиентов и услуг. Клиенты могут быть как поставщиками, так и потребителями услуг в разное время. Клиентами могут быть отдельные лица или группы (компании), причем последние имеют несколько контактов. Контакты могут...
519 просмотров

`вернуть $this;` шаблон проектирования или анти-шаблон?
Я много раз видел, как Zend Framework использует стиль return $this; pattern , и с моей точки зрения: Pro: кажется, что это довольно неплохой стиль pattern для объединения множества действий с одним и тем же объектом и сокращения кода....
6455 просмотров
schedule 15.05.2022

Антипаттерн DI Control-Freak: проблемы с пониманием
Я читаю «Внедрение зависимостей в .NET» Марка Симанна, и я не могу на всю жизнь обдумать это: Хотя ключевое слово new является запахом кода, когда речь идет о VOLATILE DEPENDENCIES, вам не нужно беспокоиться об его использовании для STABLE...
1522 просмотров

Пример антипаттерна полтергейст
Я пытаюсь понять, что такое антипаттерн Полтергейста и чем он отличается от шаблонов Command или Delegate. Я прочел: http://en.wikipedia.org/wiki/Полтергейст_(computer_science) http://sourcemaking.com/antipatterns/poltergeists Но не понял...
2934 просмотров
schedule 01.06.2024

Когда использовать вложенные контроллеры вместо сервисов в angularjs?
Я только начал использовать AngularJS, поэтому я не эксперт. У меня есть div, который представляет правильную область моего представления html. В этом div у меня есть контроллер, т.е. <div class="rightContainer"...
4027 просмотров
schedule 26.10.2023

Как избежать циклических зависимостей в модуле проверки
Недавно я провел рефакторинг своего кода, чтобы поместить методы проверки ввода, общие для нескольких классов, в их собственный модуль validate.py . Некоторые из этих методов проверки проверяют, являются ли их входные данные экземпляром класса,...
285 просмотров
schedule 17.05.2023

Как НЕ использовать DependencyResolver.Current.GetService () в этой ситуации
Следуя совету, который я получил в этой ветке [ Ninject UOW шаблон, новая строка ConnectionString после аутентификации пользователя Теперь я понимаю, что мне не следует использовать следующую строку ... var applicationConfiguration =...
14691 просмотров

Какое значение имеет более высокий приоритет, updatePeriodMillis или значение, связанное с аварийным сигналом?
Я понимаю, что параметр updatePeriodMillis определяет, как часто приложение widget обновляется в соответствии со спецификацией в widgetproviderinfo.xml в /res/xml. <?xml version="1.0" encoding="utf-8"?> <appwidget-provider...
3156 просмотров
schedule 24.03.2024

Как называется этот антипаттерн?
Допустим, у меня есть функция с именем send_welcome_email() и класс с именем User (реализованный на Python, но, надеюсь, простой для понимания разработчиками, не использующими Python): class User: email = TextField() first_name =...
118 просмотров

Код очистки со слишком большим количеством условных выражений
Я нашел этот уродливый кусок кода некоторое время назад: @FXML private void buttSellAction(ActionEvent event){ InfoTip infoTip = new InfoTip(); if(comboPizza.getValue() != null){ if(comboPizzaSize.getValue() != null){...
92 просмотров