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

Шаблоны проектирования (повторяемые решения часто возникающих проблем) и лучшие практики в разработке программного обеспечения

11
Что случилось с шаблоном «Хирургическая бригада» из «Мифического человека-месяца»?
Несколько лет назад, когда я читал «Мифический человеко-месяц», я обнаружил много вещей, которые я уже знал из других источников. Однако там были и новые вещи, несмотря на то, что книга 1975 года. Одним из них было: Хирургическая бригада Миллс предлагает, чтобы каждый сегмент большой работы решался командой, но чтобы команда …

13
Исключение по сравнению с пустым набором результатов, когда входные данные технически действительны, но не удовлетворяют
Я занимаюсь разработкой библиотеки, предназначенной для публичного выпуска. Он содержит различные методы для работы с наборами объектов - генерация, проверка, разбиение и проецирование наборов в новые формы. Если это уместно, это библиотека классов C # с включенными расширениями в стиле LINQ IEnumerable, которая будет выпущена в виде пакета NuGet. Некоторые …

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

2
Существуют ли какие-либо ОО-принципы, которые практически применимы для Javascript?
Javascript - это объектно-ориентированный язык на основе прототипов, но он может быть основан на классах различными способами: Написание функций для самостоятельного использования в качестве классов Используйте изящную систему классов в фреймворке (например, mootools Class.Class ) Создайте его из Coffeescript Сначала я писал код на основе классов в Javascript и очень …

4
Разработка функции, единственная цель которой будет устранена? [закрыто]
Как называется модель, в которой отдельные участники (программисты / дизайнеры) разработали артефакт с единственной целью - служить отвлечением, чтобы руководство могло удалить эту функцию в конечном продукте ? Это фольклор, который я слышал от бывшего коллеги, который работал в крупной компании по разработке игр. В этой компании хорошо известно, что …

4
Когда и для каких целей в C следует использовать ключевое слово const для переменных?
При рассмотрении моего кода здесьconst возникла проблема использования ключевого слова. Я понимаю, что он используется для реализации поведения переменных только для чтения. Я не понимаю, какие существуют ситуации, когда это может быть полезно. Должно ли оно использоваться для ясности в прототипах функций? Должно ли оно использоваться в качестве меры безопасности …

8
Термин (или «шаблон»?) Для «Сделай что-нибудь, если это еще не сделано» [закрыто]
Звучит довольно просто, я знаю, но недавно мой коллега сказал мне, что вызываемый метод startHttpServerслишком сложен для понимания, потому что он запускает сервер, только если он еще не запущен. Я обнаруживаю, что попадаю в неприятности, когда отвечаю: «Серьезно? Я занимаюсь этим десятилетиями - это обычная практика в программировании» Чаще, чем …

5
Разве «соглашение над конфигурацией» не нарушает основные принципы программирования?
Я смотрел на инфраструктуру WPF MVVM Caliburn.Micro и читал, что многие стандартные вещи основаны на соглашениях об именах . Например, автоматическое связывание свойств в представлении со свойствами в ViewModel. Хотя это кажется удобным (удаляет некоторый шаблонный код), моя первая реакция на инстинкт заключается в том, что это не совсем очевидно …

11
Переменные ошибок - это анти-шаблон или хороший дизайн?
Для обработки нескольких возможных ошибок, которые не должны останавливать выполнение, у меня есть errorпеременная, которую клиенты могут проверять и использовать для создания исключений. Это анти-паттерн? Есть ли лучший способ справиться с этим? Для примера этого в действии вы можете увидеть PHP mysqli API. Предположим, что проблемы видимости (средства доступа, открытая …

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

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

4
Должна ли директива angularjs напрямую взаимодействовать со службами или она считается анти-паттерном?
Какой из них считается лучше: имея директиву, которая напрямую взаимодействует со службами или иметь директиву, которая выставляет определенные ловушки, с которыми контроллер может связывать поведение (включая службы)?

3
Как представить (перечислить) типы в публичном API
Я работаю над простым API-интерфейсом, который хочу использовать для собственного клиента и который будет открыт для публики в будущем. У меня есть объекты «Предмет», которые могут иметь разные «типы». Тип является C "typedef enum", на данный момент у меня есть: typedef enum { ItemTypeBool, ItemTypeNumber, ItemTypeDate, } ItemType; (Я могу …

6
Должен ли я поместить функции, которые используются только в одной другой функции, в эту функцию?
Конкретно я пишу на JavaScript. Допустим, моя основная функция - это функция A. Если функция A делает несколько вызовов функции B, но функция B больше нигде не используется, то я должен просто поместить функцию B в функцию A? Это хорошая практика? Или я все еще должен поместить функцию B в …

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

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