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

19
Что делать, если новая команда руководит проектом с проблемами сопровождения?

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

19
Использование нового класса System.Tuple - плохой дизайн?

Мне нравится концепция System.Tuple в том смысле, что она позволяет мне возвращать несколько параметров в одном вызове функции без создания экземпляра нового класса, однако это игнорирует любые хорошие методы программирования, такие как Microsoft Patterns & Practices, SOLID Principles и т. Д. Я...

17
Это плохая практика, чтобы разрешить пользовательские поля?

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

16
Объединение геттеров и сеттеров

Библиотеки JavaScript, такие как jQuery, объединяют 'getters' и 'setters' в интерфейсе программирования, например: $('element').css({'color','blue'}); установит цвет или $('element').css(); получит CSS для элемента. Существует ли название для такого шаблона и является ли это хорошей практикой для...

15
Преимущества шаблона стратегии

Почему полезно использовать шаблон стратегии, если вы можете просто написать свой код в случаях if / then? Например: у меня есть класс TaxPayer, и один из его методов рассчитывает налоги, используя разные алгоритмы. Так почему же он не может иметь if / then случаев и выяснить, какой алгоритм...

14
В каком порядке определяются геттеры и сеттеры? [закрыто]

В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и,...

14
Является ли это использование условных выражений анти-паттерном?

Я часто видел это в нашей унаследованной системе - функции, которые работают примерно так: bool todo = false; if(cond1) { ... // lots of code here if(cond2) todo = true; ... // some other code here } if(todo) { ... } Другими словами, функция состоит из двух частей. Первая часть выполняет какую-то...

12
Как перенести мое мышление с C ++ на C #

Я опытный разработчик C ++, знаю язык очень подробно и интенсивно использую некоторые его особенности. Также я знаю принципы OOD и шаблоны проектирования. Сейчас я изучаю C #, но не могу избавиться от ощущения, что не могу избавиться от мышления C ++. Я так сильно привязался к сильным сторонам C...

12
Должен ли RESTful API возвращать файлы или просто местоположение

Это озадачивало меня некоторое время. Например, у нас есть REST API, который обеспечивает базовый контент для системы, потребляя и производя JSON. В этой конечной точке он создает URL-адрес для изображения и описания и находится следующим образом: // localhost / myApi / pictures / 1 { id: 1,...

11
Когда Efferent / Afferent сцепление хорошо или плохо

На этой неделе у меня экзамен по программным паттернам, и одной из тем, которые мы должны изучить, является эфферентная и афферентная связь. Я понимаю, что пакет имеет высокий Ce (эфферентное связывание), если это зависит от ряда других типов. Например: class Car{ Engine engine; Wheel wheel; Body...

11
Сокращение шаблонов в классе, который реализует интерфейсы посредством композиции

У меня есть класс: Aэто состав из нескольких меньших классов B, Cи D. B, CИ Dреализовывать интерфейсы IB, ICи IDсоответственно. Так как Aподдерживает все функциональные возможности B, Cи D, Aреализует IB, ICи IDтакже, но это, к сожалению, приводит к большой перенаправления в реализацииA Вот так:...

11
Подключение к базе данных - должны ли они быть переданы в качестве параметра?

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

10
Должен ли каждый класс, который я пишу, придерживаться интерфейса?

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

10
Избежать конфликтов версий зависимостей?

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

10
TDD с шаблоном хранилища

В своем новом проекте я решил попробовать с TDD. И в самом начале я столкнулся с проблемой. Первое, что я хочу сделать в своем приложении, это дать возможность читать данные из источника данных. Для этой цели я хочу использовать шаблон репозитория. И сейчас: Если тест предназначен для реальной...

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

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

9
Проекты и методы для защиты от ошибочных нулевых записей из базы данных

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

9
Когда происходит «оптимизация кода» == «структурирование данных»?

В недавней статье ycombinator перечислены комментарии с принципами великого программиста. #7. Хороший программист: я оптимизирую код. Лучший программист: я структурирую данные. Лучший программист: какая разница? Признание субъективных и спорных концепций - есть ли у кого-то позиция о том, что это...