Программная инженерия

Q & A для профессионалов, преподавателей и студентов, работающих в жизненном цикле разработки систем

7
Зачем нам нужны как приоритет, так и серьезность?
Я понимаю, что они определяют, но действительно ли полезно назначать их найденным проблемам? Я имею в виду, это нужно исправить быстро или нет. Я знаю, как их устанавливать, классифицировать и т. Д. Я знаю, что IEEE / ISO требуют этого. Я просто не понимаю, почему.

3
Должны ли связанные списки всегда иметь хвостовой указатель?
Мое понимание... Преимущества: Вставка в конце O (1) вместо O (N). Если список является двусвязным списком, то удаление с конца также означает O (1) вместо O (N). Недостаток: Занимает тривиальное количество дополнительной памяти: 4-8 байт . Исполнитель должен следить за хвостом. Глядя на эти преимущества и недостатки, я не могу …

7
Когда использовать дженерики в дизайне интерфейса
У меня есть некоторые интерфейсы, которые я намерен внедрить сторонними разработчиками в будущем, и я сам предоставляю базовую реализацию. Я буду использовать только пару, чтобы показать пример. В настоящее время они определены как Вещь: public interface Item { String getId(); String getName(); } ItemStack: public interface ItemStackFactory { ItemStack createItemStack(Item …
11 java  generics 

3
Передача данных с сервера на клиент без запроса клиента?
Я заметил, просматривая Stack Exchange, что есть динамические уведомления, такие как «3 новых сообщения, нажмите, чтобы показать». Я хочу иметь такого рода динамическое обновление для того, что я собираюсь объяснить. Допустим, я хочу создать карусель / слайд-шоу из 10 последних новостей. Я хочу, чтобы эта карусель обновлялась ежечасно, в очереди. …
11 server  client 

2
СУХОЙ принцип в хороших практиках?
Я стараюсь следовать принципу СУХОЙ в своем программировании изо всех сил. Недавно я изучал шаблоны проектирования в ООП и закончил тем, что повторял себя довольно много. Я создал шаблон Repository вместе с шаблонами Factory и Gateway, чтобы справиться с моим постоянством. Я использую базу данных в своем приложении, но это …


2
Классы Python только с одним экземпляром: когда создавать (один) экземпляр класса и когда вместо этого работать с классом?
Данный класс Python, который будет создан только один раз, то есть будет только один объект класса. Мне было интересно, в каких случаях имеет смысл создавать отдельный экземпляр класса, а не работать непосредственно с классом. Есть похожий вопрос , но он имеет другую направленность: речь идет о группировании глобальных переменных и …

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

5
Разрешены ли «технические истории пользователей» в Scrum?
Разрешены ли технические истории пользователей в Scrum? Если да, то каков стандартный шаблон для написания технических пользовательских историй в Scrum? Это то же самое As a <user> I want to do <task> so that I can <goal>? Я читал в некоторых блогах, что « разработчик не для пользователя» , но …

2
Система типов для производительности
Существуют ли (статические) системы типов, которые пытаются формализовать характеристики производительности программ? Я не могу найти, кажется, найти такие попытки. Поскольку системы типов являются (одним из) наиболее мощными инструментами в арсенале программиста для создания заявлений о программах, и поскольку существует множество случаев, когда производительность имеет решающее значение, кажется, что не было …

5
Должен ли я предпочесть композицию или наследование в этом сценарии?
Рассмотрим интерфейс: interface IWaveGenerator { SoundWave GenerateWave(double frequency, double lengthInSeconds); } Этот интерфейс реализован рядом классов, которые генерируют волны различной формы (например, SineWaveGeneratorи SquareWaveGenerator). Я хочу реализовать класс, который генерирует SoundWaveмузыкальные данные, а не необработанные звуковые данные. Он получит имя заметки и длину в виде ударов (не секунд) и внутренне …

1
Почему невозможно перегрузить составной оператор присваивания в C #?
Название вводит в заблуждение, поэтому, пожалуйста, прочитайте весь вопрос :-) . Под «составного оператора присваивания» Я имею в виду конструкцию , как это op=, например +=. Оператор чистого присваивания ( =) не относится к моему вопросу. Под «почему» я имею в виду не мнение, а ресурс (книгу, статью и т. …

5
Ранняя подзадача в начале каждого спринта
Я присоединился к новой команде, которая использует Agile / Scrum, и их процесс разработки выглядит следующим образом: 1) разработчики просматривают каждую историю перед каждым спринтом, чтобы убедиться, что она не пропустила ничего критического. Для этого есть формальное состояние в рабочем процессе. 2) во время начала спринта вся команда оценивает (планирование …
11 agile  scrum 

5
Отдельный интерфейс для методов мутации
Я работал над рефакторингом некоторого кода, и я думаю, что, возможно, сделал первый шаг по кроличьей норе. Я пишу пример на Java, но я полагаю, что он может быть агностиком. У меня есть интерфейс, Fooопределенный как public interface Foo { int getX(); int getY(); int getZ(); } И реализация как …

5
Простой и понятный способ сравнения трех чисел
У меня есть некоторый код, который имеет последовательность ifs, которая работает, но просто чувствую себя грязно. По сути, я хочу выбрать наибольшее из трех целых чисел и установить флаг статуса, чтобы сказать, какой из них был выбран. Мой текущий код выглядит так: a = countAs(); b = countBs(); c = …
11 algorithms  c 

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