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

11
ООП ECS против чистого ECS

Во-первых, я знаю, что этот вопрос связан с темой разработки игр, но я решил задать его здесь, поскольку он действительно сводится к более общей проблеме разработки программного обеспечения. В прошлом месяце я много читал о Entity-Component-Systems, и теперь я вполне доволен этой концепцией. Тем не...

11
Разве Entity-Component System ужасна для развязки / сокрытия информации?

Название намеренно гиперболично, и это может быть просто моя неопытность с шаблоном, но вот мои рассуждения: «Обычный» или, возможно, простой способ реализации сущностей состоит в том, чтобы реализовать их как объекты и создать подклассы общего поведения. Это приводит к классической проблеме...

10
Рефакторинг в доменном дизайне [закрыто]

Закрыто . Этот вопрос нуждается в деталях или ясности . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Добавьте детали и проясните проблему, отредактировав этот пост . Закрыто 6 лет назад . Я только начал работать над проектом, и мы используем управляемый доменом проект...

10
Когда клей или класс управления делают слишком много?

Я склонен к созданию централизованных классов, которые управляют другими классами в моих проектах. Он не хранит все сам, но большинство запросов данных сначала идут к «менеджеру». Глядя на ответ на этот вопрос, я заметил термин «Объект Бога». Википедия перечисляет это как антипаттерн, понятно. Где...

10
Какие шаблоны проектирования GOF уже реализованы как первоклассные языковые функции в C #?

(Этот вопрос был закрыт из-за переполнения стека из-за того, что он «слишком широкий» и «не настоящий вопрос», так что, может быть, он более уместен здесь?) Вдохновлен этим вопросом . Мы знаем, что события - это реализация шаблона Observer на уровне языка. Существуют ли другие шаблоны...

10
Как вы должны объяснять шаблоны проектирования людям за пределами мира программного обеспечения

Я хочу объяснить шаблон дизайна моей племяннице, но всегда борюсь за это. Во многом это связано с отсутствием у меня четкого понимания шаблонов проектирования. Как вы предлагаете объяснять шаблоны, такие как MVC, Singleton, Factory, Repository и т. Д., В таких простых терминах, которые могут понять...

10
Как я могу практиковать шаблоны проектирования и рефакторинг преднамеренно? [закрыто]

Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения в стеке. Закрыто 4 года назад . Я читал книгу « Рефакторинг к шаблонам» и удивлялся, как я могу получить шанс...

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

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

10
Шаблон наблюдателя; зная * что * изменилось?

Я создал два абстрактных класса Subject и Observer, которые определяют классический интерфейс шаблонов Observer. Я извлекаю из них реализацию шаблона Observer. Наблюдатель может выглядеть так: void MyClass::Update(Subject *subject) { if(subject == myService_) { DoSomething(); } else if(subject ==...

10
Грамотное программирование, методология хорошего / плохого дизайна

Недавно я нашел концепцию грамотного программирования . И я нашел это довольно интригующим. И все же я не сталкивался с утверждениями, что это плохой способ структурировать программу. Кажется, не во многих местах. Даже здесь я не смог найти никаких вопросов по этому поводу. Мой вопрос не о его...

10
Почему подклассы слишком плохи (и, следовательно, почему мы должны использовать прототипы, чтобы покончить с этим)?

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

10
Шаблон проектирования для обработки ответа

Большую часть времени, когда я пишу некоторый код, который обрабатывает ответ для определенного вызова функции, я получаю следующую структуру кода: пример: это функция, которая будет обрабатывать аутентификацию для системы входа class Authentication{ function login(){ //This function is called from...

10
Статья Питера Норвига, цитируемая Бренданом Эйхом

Я читаю Coders at Work, а Брендан Айх цитирует статью Norvig, написанную еще в то время, когда он был в Арлекине, «о том, как шаблоны проектирования действительно являются недостатками в вашем языке программирования». Кто-нибудь может предоставить ссылку на этот...

10
Как выполнить модульное тестирование функции, которая подвергается рефакторингу к шаблону стратегии?

Если у меня есть функция в моем коде, которая выглядит следующим образом: class Employee{ public string calculateTax(string name, int salary) { switch (name) { case "Chris": doSomething($salary); case "David": doSomethingDifferent($salary); case "Scott": doOtherThing($salary); } } Обычно я...

10
Полезные шаблоны дизайна для работы с FragmentManager на Android

При работе с фрагментами я использовал класс, состоящий из статических методов, которые определяют действия над фрагментами. Для любого данного проекта у меня может быть класс с именем FragmentActions, который содержит методы, подобные следующим: public static void...

10
Является ли использование условий безопасности в представлении нарушением MVC?

Часто то, что отображается пользователю (например, на веб-странице), будет частично основано на проверках безопасности. Обычно я считаю, что безопасность на уровне пользователя / ACL является частью бизнес-логики системы. Если представление явно проверяет безопасность для условного отображения...

10
В MVC можно / нужно выполнять базовый поиск данных из модели в представлении?

Учитывая концепцию «тощих контроллеров, толстых моделей» и общее признание того, что представления могут напрямую вызывать модели, когда требуются данные для вывода, следует ли рассматривать обработку частей «получить и отобразить» запросов в представлениях, а не контроллер? Например (попытка...

10
Шаблон проектирования для полиморфного поведения при разрешении разделения библиотеки

Скажем , у меня есть иерархия Itemклассов: Rectangle, Circle, Triangle. Я хочу иметь возможность рисовать их, поэтому моя первая возможность - добавить виртуальный Draw()метод к каждому: class Item { public: virtual ~Item(); virtual void Draw() =0; }; Однако я хочу разделить функциональность...

10
Контекстный класс в шаблоне Стратегии

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

10
Как использовать Inpendency Injection в сочетании с шаблоном Factory

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