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

35
Я ошибаюсь, думая, что необходимость чего-то вроде AutoMapper является признаком плохого дизайна?

Automapper - это «объект-объектный маппер» для .Net, что означает копирование объектов из класса в другой класс, представляющий то же самое. Почему это всегда полезно? Является ли дублирование классов полезным / хорошим...

35
Соглашения об именах DAL, BAL и UI Layer [закрыто]

Я разрабатываю типичное веб-приложение со следующими слоями UI Layer (MVC) Уровень бизнес-логики (BAL) Уровень доступа к данным (DAL) Каждый слой имеет свой собственный объект DTO, включая BAL и DAL. Мои вопросы по этому поводу следующие DTO, возвращенный DAL, просто преобразуется в соответствующий...

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

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

35
Это хорошая практика для создания ClassCollection другого класса?

Допустим, у меня есть Carкласс: public class Car { public string Engine { get; set; } public string Seat { get; set; } public string Tires { get; set; } } Допустим, мы создаем систему для парковки, я собираюсь использовать много Carклассов, поэтому мы создаем CarCollectionкласс, который может иметь...

35
Есть ли шаблон дизайна, который будет применяться к дисконтным моделям?

Существуют ли известные шаблоны проектирования для реализации дисконтных моделей? Под дисконтными моделями я имею в виду следующее: Если клиент покупает продукт X, продукт Y и продукт Z, он получает скидку в размере 10% или 100 долларов США. Если клиент покупает 100 единиц Продукта X, он получает...

34
Как мне протестировать систему, в которой объекты трудно подделать?

Я работаю со следующей системой: Network Data Feed -> Third Party Nio Library -> My Objects via adapter pattern Недавно у нас возникла проблема, когда я обновил версию библиотеки, которую использовал, что, помимо прочего, приводило к тому, что метки времени (которые возвращает сторонняя...

34
В разработке Java обычно используется больше подклассов, чем в C # / .NET?

Я недавно начал смотреть на разработку Android. Это вернуло меня в мир разработки программного обеспечения на Java. В прошлый раз, когда я работал с Java, я должен признать, что ООП я не понимал почти так же, как (я думаю), что я делаю сейчас. Поскольку я в основном использовал C # в своей карьере,...

34
лучшие практики для проектирования баз данных NoSQL

Я только начал использовать базу данных на основе документов NoSQL (MongoDB), и мне интересно узнать о передовых методах проектирования баз данных. Я предполагаю, что архитектура должна отличаться от реляционных баз данных? Должен ли я по-прежнему стремиться к нормализованной базе данных? Например,...

34
RESTful API стимулируют анемичные доменные модели?

Я работаю над проектом, в котором мы пытаемся применить как доменный дизайн, так и REST к сервис-ориентированной архитектуре. Мы не беспокоимся о 100% соблюдении REST; вероятно, было бы лучше сказать, что мы пытаемся создать ресурсно-ориентированные HTTP API (~ Уровень 2 модели зрелости REST...

34
Как улучшить шаблон Bloch's Builder Pattern, чтобы сделать его более подходящим для использования в расширяемых классах

На меня сильно повлияла книга Джошуа Блоха «Эффективная Java» (2-е издание), вероятно, больше, чем с любой книгой по программированию, которую я читал. В частности, его Образец Строителя (пункт 2) оказал наибольший эффект. Несмотря на то, что за последние несколько месяцев программист Блоха сделал...

34
СУХОЙ не связанный, но почти идентичный код

У меня есть некоторый код, который почти идентичен, но использует абсолютно разные типы, без наследования между ними, в основной переменной. В частности, я пишу анализатор с Roslyn для C # и VB.NET следующих типов: Microsoft.CodeAnalysis.CSharp.Syntax.AttributeSyntax...

34
Почему Clang / LLVM предупреждает меня об использовании default в операторе switch, где охватываются все перечисленные случаи?

Рассмотрим следующий оператор enum и switch: typedef enum { MaskValueUno, MaskValueDos } testingMask; void myFunction(testingMask theMask) { switch (theMask) { case MaskValueUno: {}// deal with it case MaskValueDos: {}// deal with it default: {} //deal with an unexpected or uninitialized value } };...

33
Являются ли шаблоны проектирования силой хорошего или плохого? [закрыто]

Я слышал, как утверждается, что шаблоны дизайна - лучшая вещь с нарезанного хлеба. Я также слышал, как утверждается, что шаблоны проектирования, как правило, усугубляют «Второй системный синдром», что они чрезмерно используются и заставляют пользователей думать, что они лучшие дизайнеры, чем они...

33
SOLID, избегая анемичных доменов, внедрение зависимости?

Хотя это может быть независимый от языка программирования вопрос, мне интересны ответы, нацеленные на экосистему .NET. Это сценарий: предположим, нам нужно разработать простое консольное приложение для публичного администрирования. Приложение о транспортном налоге. У них (только) есть следующие...

33
Должны ли представление и модель общаться или нет?

Согласно странице википедии по архитектуре MVC , представление может быть свободно уведомлено моделью, а также свободно запрашивать модель о ее текущем состоянии. Однако, согласно курсу Пола Хегарти по iOS 5 в Стэнфорде, лекция 1, стр. 18, все взаимодействие должно проходить через контроллер, с...

33
Как решить круговую зависимость?

У меня есть три класса, которые циклически зависят друг от друга: TestExecuter выполняет запросы TestScenario и сохраняет файл отчета, используя класс ReportGenerator. Так: TestExecuter зависит от ReportGenerator для создания отчета ReportGenerator зависит от TestScenario и параметров,...

33
Должен ли HTTP API всегда возвращать тело?

Есть ли какой-то стандарт в отношении ответов HTTP API? Прочитав эту беседу я начал задумываться. Мы разрабатываем наш общедоступный HTTP JSON API на моей работе, и мы ничего не возвращаем, когда это не является строго необходимым (например, PUT для / resource / {id} возвращает только 200, когда OK...

33
Почему база данных как очередь так плохо? [закрыто]

Я только что прочитал эту статью , и я в замешательстве. Давайте представим 1 веб-приложение и 1 отдельное приложение, выступающие в роли «работника», которые совместно используют одну и ту же базу данных . О, я сказал "делиться" .. но о чем статья предупреждает? : В-четвертых, разделение базы...

33
Должен ли я использовать одну базу данных для одного приложения или использовать одну базу данных для нескольких приложений [закрыто]

У меня есть несколько приложений, некоторые из которых используют данные из одних и тех же источников. Это лучшая практика (или каковы плюсы / минусы), чтобы: оставить данные в базах данных, совместно используемых несколькими приложениями экономит место, так как нужна только одна база данных...

32
Каков принцип наименьшего удивления?

В программировании то, что называется принципом наименьшего удивления? Как эта концепция связана с разработкой хороших API? Это применимо только к объектно-ориентированному программированию или оно проникает и в другие методы программирования? Связано ли это с принципом «делать что-то в своем...