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

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

4
Что такое «преждевременная абстракция»?
Я слышал, как фразу бросают вокруг, и для меня аргументы звучат совершенно безумно (извините, если я здесь играю, это не мое намерение), как правило, это звучит примерно так: Вы не хотите создавать абстракцию до того, как узнаете, каков общий случай, иначе (1) вы можете помещать в свои абстракции вещи, которые …

2
Архитектура системы оповещения
Я хотел бы создать систему, которая обрабатывает предупреждающие сообщения от различных программ и может обрабатывать эти оповещения для потребителей, использующих новейшие технологии, по электронной почте. Все это будет содержаться в одной внутренней сети. Я думаю, что я хочу, чтобы базовая архитектура выглядела примерно так: Основная проблема, с которой я столкнулся …

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

4
Как именно компилятор восстанавливается после ошибки типа?
Я прочитал несколько статей, статей и раздел 4.1.4, глава 4 « Компиляторы: принципы, методы и инструменты» (2-е издание) (он же «Книга Дракона»), в которых все обсуждается тема исправления синтаксических ошибок компилятора. Однако, после экспериментов с несколькими современными компиляторами, я увидел, что они также восстанавливаются после семантических ошибок, а также синтаксических …

6
Что такое простой процесс проектирования системы ООП перед ее кодированием?
Всякий раз, когда мне требовалось построить проект, мне всегда удавалось построить его, не заранее разработав план или проект, а после того, как сначала написал необходимый класс, конкретизировав весь проект, создавая его снизу вверх. Теперь я знаю, что это не правильный способ создания программного обеспечения, но мне нелегко обернуть голову вокруг …

2
Охват - недостаток в алгоритме - как избавиться от его использования?
Введение Многие из основных механизмов рендеринга векторной графики имеют алгоритмический недостаток. Они визуализируют каждую фигуру отдельно и сглаживают, вычисляя покрытие пикселей, а затем компонуют их друг на друга. Да, это просто, но правильные решения еще проще. Это приводит к проблеме смешения, так как прозрачность связывает покрытие. Альфа-смешение следует правилу, которое …

2
Кто проектирует базы данных в веб-разработке? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 3 года назад . В контексте веб-разработки, кто проектирует базы данных? Несмотря на целый ряд информации, связывающей …

1
Система уведомлений в социальных сетях
Фон Я работаю над приложением для клиента, которое включает в себя некоторые функции социальных сетей. Первоначально я разрабатывал мобильный интерфейс, но обстоятельства также оставили меня ответственным за разработку этого интерфейса. В целом, наша система позволяет пользователям следить за другими пользователями и получать уведомления о тех, за кем они следуют, как …

2
Должны ли объекты HTTP Request / Response быть неизменными?
Я думаю, можно с уверенностью сказать, что большинство веб-приложений основаны на парадигме запрос / ответ. В PHP никогда не было формальной абстракции этих объектов. Одна группа пытается изменить это: https://github.com/php-fig/fig-standards/blob/master/proposed/http-message.md Тем не менее, они в некотором роде отслеживаются в вопросе неизменности. С одной стороны, объект запроса / ответа обычно нуждается …

1
Как избежать болтливых интерфейсов
Справочная информация: я проектирую серверное приложение и создаю отдельные библиотеки DLL для разных подсистем. Для упрощения скажем у меня есть две подсистемы: 1) Users2)Projects Публичный интерфейс пользователя имеет такой метод: IEnumerable<User> GetUser(int id); И открытый интерфейс Projects имеет такой метод: IEnumerable<User> GetProjectUsers(int projectId); Так, например, когда нам нужно отобразить пользователей …

4
Почему генераторы и функции python используют ключевое слово «def»?
Учтите следующее: def some_function(): return 1 def some_generator(): yield 1 В приведенном выше коде some_functionэто функция, а some_generatorявляется генератором. Они выглядят очень похоже. Проблема, с которой я сталкиваюсь при чтении кода, заключается в том, что мне нужно просмотреть каждую строку в «функции» в поисках yieldключевого слова, прежде чем я смогу …

6
Разработка методов, связанных с базой данных, которые лучше возвращать: верно / неверно или затронуты строки?
У меня есть несколько методов, которые выполняют изменение данных в базе данных (вставка, обновление и удаление). ORM Я использую возврат строки , затронутые Int значение для этих типов методы. Что я должен вернуть для «моего метода», чтобы указать состояние успеха / неудачи операции? Рассмотрим код, который возвращает int: A.1 public …

2
Использование пакетов (драгоценных камней, яиц и т. Д.) Для создания разделенных архитектур
Основная проблема Видя хорошую поддержку, которую оказывают большинство современных программных платформ для управления пакетами (думаю gem, npmи pipт. Д.), Имеет ли смысл проектировать приложение или систему, состоящую из пакетов, разработанных внутри компании, чтобы продвигать и создавать слабосвязанную архитектуру? пример Примером этого может быть создание пакетов для доступа к базе данных, …

1
Экстремальное программирование для одного разработчика [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 4 года назад . Последние две недели я работал с некоторыми базовыми концепциями экстремального программирования …

2
Куда мы помещаем код «спрашивая мир», когда отделяем вычисления от побочных эффектов?
В соответствии с принципом разделения команд и запросов , а также мышлением в данных и DDD с презентациями Clojure следует отделять побочные эффекты (изменяющие мир) от вычислений и решений, чтобы было легче понять и протестировать обе части. Это оставляет без ответа вопрос: где относительно границы мы должны поставить «спрашивать мир»? …

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