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

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

7
Разработка REST API по URI против строки запроса
Допустим, у меня есть три ресурса, которые связаны следующим образом: Grandparent (collection) -> Parent (collection) -> and Child (collection) Выше показано отношение между этими ресурсами примерно так: каждый дедушка может сопоставить с одним или несколькими родителями. Каждый родитель может сопоставить одному или нескольким детям. Мне нужна возможность поддержки поиска по …
73 design  rest  api 

7
Должен ли я идти по обычному пути или рано провалиться?
Из книги « Полный код» приводится следующая цитата: «Положите нормальный случай после, ifа не после else» Это означает, что в elseслучае должны быть указаны исключения / отклонения от стандартного пути . Но Прагматичный Программист учит нас «рано падать» (стр. 120). Какому правилу я должен следовать?
73 design 

11
Советы по разработке веб-приложения со сроком службы более 40 лет
сценарий В настоящее время я занимаюсь проектом здравоохранения, основным требованием которого является сбор данных с неизвестными атрибутами с использованием пользовательских форм, предоставляемых поставщиками медицинских услуг. Второе требование заключается в том, что целостность данных является ключевой и что приложение будет использоваться более 40 лет. В настоящее время мы переносим данные клиента …

9
Зачем использовать частичные классы?
В моем понимании partialключевое слово делает только то, что позволяет разделить класс между несколькими исходными файлами. Есть ли причина для этого, кроме как для организации кода? Я видел, как это используется в сгенерированных классах пользовательского интерфейса. Кажется, плохая причина для создания целого ключевого слова. Если класс достаточно большой, чтобы требовать …

12
SQL: пустая строка против значения NULL
Я знаю, что эта тема немного противоречива, и в Интернете много разных статей / мнений. К сожалению, большинство из них предполагают, что человек не знает, в чем разница между NULL и пустой строкой. Таким образом, они рассказывают истории об удивительных результатах с объединениями / агрегатами и обычно делают более продвинутые …
72 design  database  sql  strings  null 

7
Когда использовать абстрактные классы вместо интерфейсов с методами расширения в C #?
«Абстрактный класс» и «интерфейс» являются похожими понятиями, причем интерфейс является более абстрактным из двух. Одним из отличительных факторов является то, что абстрактные классы предоставляют реализации методов для производных классов, когда это необходимо. Однако в C # этот дифференцирующий фактор был уменьшен недавним введением методов расширения, которые позволяют предоставлять реализации для …

10
Мой предложенный дизайн обычно хуже, чем у моего коллеги - как мне стать лучше? [закрыто]
Я программирую пару лет и в целом хорошо справляюсь с решением проблем и созданием сценариев для небольших и средних сценариев, однако, как правило, я не очень хорош в проектировании крупномасштабных программ объектно-ориентированным способом. Несколько вопросов Недавно коллега , имеющий столько же лет опыта, что и я, работал над проблемой. Я …

12
«Все это карта», я делаю это правильно?
Я смотрел выступление Стюарта Сьерры « Мышление в данных » и использовал одну из идей в качестве принципа дизайна в этой игре, которую я делаю. Разница в том, что он работает в Clojure, а я работаю в JavaScript. Я вижу некоторые основные различия между нашими языками в этом: Clojure - …

4
Почему коллекции Java были реализованы с помощью «дополнительных методов» в интерфейсе?
Во время моей первой реализации, расширяющей инфраструктуру Java-коллекции, я был очень удивлен, увидев, что интерфейс коллекции содержит методы, объявленные как необязательные. Ожидается, что разработчик выдаст исключение UnsupportedOperationException, если оно не поддерживается. Это сразу показалось мне плохим выбором дизайна API. Прочитав большую часть превосходной книги Джошуа Блоха «Эффективная Ява», а затем …

7
Если функции должны выполнить нулевые проверки перед выполнением намеченного поведения, это плохой дизайн?
Так что я не знаю, хороший это или плохой дизайн кода, поэтому я подумал, что лучше спросить. Я часто создаю методы, которые выполняют обработку данных с использованием классов, и я часто проверяю методы, чтобы убедиться, что я не получаю нулевые ссылки или другие ошибки заранее. Для очень простого примера: // …
66 c#  design  validation 

4
Что такое инверсия управления, и когда я должен ее использовать?
Я проектирую новую систему и хочу знать, что такое инверсия управления (IOC) и, что более важно, когда ее использовать. Это должно быть реализовано с помощью интерфейсов или может быть сделано с помощью классов?

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

11
Уточнить принцип единой ответственности
Принцип единой ответственности гласит, что класс должен делать одно и только одно. Некоторые случаи довольно ясны. Другие, однако, сложны, потому что то, что выглядит как «одна вещь» при просмотре на данном уровне абстракции, может быть множественным при просмотре на более низком уровне. Я также опасаюсь, что если принцип «Единой ответственности» …

14
Разве MVC не против ООП?
Основная идея ООП заключается в объединении данных и поведения в единую сущность - объект. В процедурном программировании есть данные и отдельно алгоритмы, модифицирующие данные. В шаблоне Model-View-Controller данные и логика / алгоритмы размещаются в разных объектах, модели и контроллере соответственно. При эквивалентном подходе ООП модель и контроллер не должны находиться …

6
Разница между классом обслуживания и классом Helper [закрыто]
Я хотел бы знать, что отличает класс Service от служебного класса или вспомогательного класса? Класс только с базовыми методами вызывает dao's является службой? Разве использование классов Helper не нарушает SRP?

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