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

Шаблон проектирования - это общее многократно используемое решение часто встречающейся проблемы в разработке программного обеспечения.

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

12
Насколько точна «бизнес-логика должна быть в сервисе, а не в модели»?
ситуация Ранее этим вечером я дал ответ на вопрос о StackOverflow. Вопрос: Редактирование существующего объекта должно быть сделано на уровне хранилища или в сервисе? Например, если у меня есть Пользователь, у которого есть задолженность. Я хочу изменить свой долг. Должен ли я сделать это в UserRepository или в сервисе, например, …

17
Почему Глобальное Государство так Зло?
Прежде чем мы начнем, позвольте мне сказать, что я хорошо знаю концепции абстракции и внедрения зависимости. Мне не нужно, чтобы мои глаза открылись здесь. Ну, большинство из нас (слишком) часто говорят, не понимая: «Не используйте глобальные переменные» или «Синглтоны - это зло, потому что они глобальны». Но что на самом …


18
Как можно управлять тысячами правил IF… THEN… ELSE?
Я рассматриваю возможность создания приложения, которое по своей сути будет состоять из тысяч операторов if ... then ... else. Цель приложения - уметь предсказывать, как коровы передвигаются в любом ландшафте. На них влияют такие вещи, как солнце, ветер, источник пищи, внезапные события и т. Д. Как можно управлять таким приложением? …

16
Мой босс просит меня прекратить писать небольшие функции и делать все в одном цикле
Я прочитал книгу под названием « Чистый код » Роберта Мартина. В этой книге я видел много методов для очистки кода, таких как написание небольших функций, тщательный выбор имен и т. Д. Это, безусловно, самая интересная книга о чистом коде, которую я читал. Однако сегодня моему боссу не понравилось, как …

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

10
Зачем нам нужно так много классов в шаблонах проектирования?
Я младший разработчик среди пожилых людей и много борюсь с пониманием их мышления, рассуждений. Я читаю доменно-управляемый дизайн (DDD) и не могу понять, почему нам нужно создавать так много классов. Если мы будем следовать этому методу проектирования программного обеспечения, мы получим 20-30 классов, которые можно заменить максимум двумя файлами и …

14
«Никогда не делайте в коде то, что вы можете сделать, чтобы SQL-сервер работал хорошо для вас» - это рецепт плохого дизайна?
Это идея, которую я слышал, повторил в нескольких местах. Некоторые более или менее признают, что однажды попытка решить проблему исключительно в SQL превышает определенный уровень сложности, вы действительно должны обрабатывать ее в коде. Логика этой идеи заключается в том, что в большинстве случаев ядро ​​базы данных будет делать лучшую работу …

10
Что такое MVC, на самом деле?
Как серьезный программист, как вы отвечаете на вопрос, что такое MVC? На мой взгляд, MVC - это своего рода туманная тема, и поэтому, если ваша аудитория - ученик, вы можете описать ее в общих терминах, которые вряд ли будут противоречивыми. Однако, если вы разговариваете с хорошо осведомленной аудиторией, особенно с …

9
Почему я должен использовать фабричный класс вместо прямого создания объекта?
Я видел историю нескольких проектов библиотек классов С # и Java на GitHub и CodePlex, и я вижу тенденцию перехода к фабричным классам в отличие от непосредственного создания объектов. Почему я должен широко использовать фабричные классы? У меня есть довольно хорошая библиотека, где объекты создаются старомодным способом - путем вызова …

4
Что такое антикоррупционный слой и как он используется?
Я пытаюсь понять, что на самом деле означает антикоррупционный слой. Я знаю, что это способ перехода / работы с устаревшим кодом или плохими API. Я не понимаю, как это работает и что делает его чистым отделением от нежелательного слоя. Я провел некоторый поиск, но не могу найти простых примеров или …

14
Банда Четырех тщательно исследовала «Пространство Образца»?
С тех пор, как я впервые узнал о шаблонах проектирования Gang of Four (GoF) , по крайней мере 10 лет назад, у меня сложилось впечатление, что эти 23 шаблона должны быть лишь небольшим образцом чего-то гораздо большего, что мне нравится называть Пространством шаблонов . Это гипотетическое пространство шаблонов состоит из …

13
Шаблоны дизайна не одобряются?
У меня была беседа с одним из наших старших разработчиков, который работает в этом бизнесе уже 20 лет. Он очень хорошо известен в Онтарио по блогам, которые он пишет. Странная вещь состоит в том, что он сказал мне: он сказал, что есть кусок кода, с которым кошмарно работать, потому что …

17
Лучше ли возвращать NULL или пустые значения из функций / методов, где возвращаемое значение отсутствует?
Я ищу рекомендацию здесь. Я борюсь с тем, лучше ли возвращать NULL или пустое значение из метода, когда возвращаемое значение отсутствует или не может быть определено. Возьмите следующие два метода в качестве примера: string ReverseString(string stringToReverse) // takes a string and reverses it. Person FindPerson(int personID) // finds a Person …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.