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

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

1
шаблон для обмена объектами между API и приложением
У меня есть серьезные сомнения по поводу дизайна для моего веб-приложения. Я хотел отделить бизнес-логику от интерфейса, поэтому я создал Web API, который обрабатывает все запросы к базе данных. Это ASP.NET Web API с платформой Entity, единицей работы и общим шаблоном хранилища. Пока все хорошо. ПРОБЛЕМА Там, где мне нужна …

6
Должен ли менеджер пакетов изменить ваш файл .bashrc?
Я пишу пакет для чего-то, что требует правильной установки переменной среды. Должен ли шаг установки диспетчера пакетов изменить среду пользователя или просто предложить пользователю сделать это самостоятельно? Моя интуиция была бы второй, но я вижу аргументы для первой.

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

4
Этот метод чистый?
У меня есть следующий метод расширения: public static IEnumerable<T> Apply<T>( [NotNull] this IEnumerable<T> source, [NotNull] Action<T> action) where T : class { source.CheckArgumentNull("source"); action.CheckArgumentNull("action"); return source.ApplyIterator(action); } private static IEnumerable<T> ApplyIterator<T>(this IEnumerable<T> source, Action<T> action) where T : class { foreach (var item in source) { action(item); yield return item; …

3
Хранить редактируемый контент сайта?
У нас есть веб-сайт на основе Django, для которого мы хотели сделать часть контента (текстовой и бизнес-логики, такой как тарифные планы) легко редактируемой внутри компании , и поэтому мы решили хранить его вне кодовой базы. Обычно причина заключается в одном из следующих: Это то, что нетехнические люди хотят редактировать. Одним …

2
Git альтернатива полвсету в TFS
Я использую git для своих личных проектов, поэтому я никогда не сталкивался с какими-либо проблемами с Git, однако сегодня у меня была дискуссия на работе, и я не думал об этом. В TFS вы можете сохранить свой набор изменений в наборе полок, этот набор полок может быть просмотрен другими разработчиками, …

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

5
Ежедневная встреча Scrum: Пунктуальность из-за полного присутствия команды?
Насколько я понимаю, встреча Daily Scrum должна быть очень быстрой, проходить в дружеской обстановке и требовать присутствия всех членов команды. Потому что цель состоит в том, чтобы все были в курсе того, что делают все остальные. Мне нравятся ежедневные встречи Scrum, которые проводятся таким образом. В моем последнем проекте наши …
9 agile  scrum 

2
Разработка приложений Javascript MVC (холст)
Мне трудно понять, как структурировать / спроектировать приложение Canvas, используя MVC-подобный подход в Javascript. Пользовательский интерфейс будет довольно плавным и анимированным, игры довольно упрощенными, но с большим акцентом на анимацию и анимацию. Я понимаю, как MVC работает в принципе, но не на практике. Я погуглил эту ошибку, прочитал очень много …

2
Предотвращает ли сериализация использование инъекций зависимостей?
Простой вопрос: я понимаю, что сериализация в C # требует конструкторов по умолчанию. Это исключило бы возможность использования встроенного DI конструктора (который обычно является предпочтительным стилем DI, в моем чтении [цитата нужна] ). Так это действительно или-или ситуация, или я что-то упустил? (Дополнительный вопрос): Контейнеры IoC как-то обходят этот компромисс?

1
Проектирование интерфейсов и асинхронность
Предположим, я создал интерфейс IFolderRepositoryс такими методами: IEnumerable<Folder> GetAllFolders(); Folder GetFolderWithId(int id); void AddFolder(Folder newFolder); void ModifyFolder(Folder folderToModify, Folder folderAfterModification); void RemoveFolder(Folder folderToRemove); и я реализовал DatabaseFolderRepositoryи скажем CacheFolderRepositoryDecorator. Теперь, «сотни строк спустя», я бы хотел добавить функциональность папок SkyDrive, так что я готов добавить SkyDriveFolderRepository. К сожалению, в то …
9 c#  async 

3
Скорости << >> умножения и деления
Вы можете использовать &lt;&lt;для умножения и &gt;&gt;деления чисел в Python, когда я их рассчитываю, я нахожу, используя способ двоичного сдвига, это в 10 раз быстрее, чем деление или умножение обычным способом. Почему используется &lt;&lt;и &gt;&gt;намного быстрее, чем *и /? Какие процессы за сценой происходят *и /так медленно?

4
Использование Scrum в небольших проектах, в которых владелец не хочет участвовать
В последнее время я много читаю и изучаю Scrum, и мне это очень нравится. Однако у меня в голове есть несколько вероятных сценариев, решение которых я не знаю. Итак, допустим, я мог бы организовать гибкую команду (например) из четырех веб-разработчиков (один из них - дизайнер UI / UX). Эта команда …
9 agile  scrum 

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

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

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