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

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

4
Почему строковые ресурсы обычно хранятся вне кода, а не внутри кода?
Обычно на многих платформах я записываю свои строковые ресурсы в файл .resx или .xml, а затем получаю их, используя какой-то платформо-зависимый подход. То есть на iOS я их получаю NSBundle.MainBundle, а с помощью Context.Resourcesна Android. Каковы преимущества этого подхода и почему он не имеет прямого доступа в коде, например: В …

2
Как вы управляете конфигурацией с внедрением зависимостей?
Я большой поклонник DI / IOC. Он отлично подходит для обработки / абстрагирования жестких зависимостей и делает жизнь немного проще. Тем не менее, у меня есть небольшой недостаток, который я не знаю, как решить. Основная идея DI / IOC заключается в том, что при создании экземпляра объекта все его зависимости …

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

5
Когда таблица базы данных должна использовать временные метки?
Во-первых, я подумал, что, возможно, этот вопрос относится к обмену базами данных, но я думаю, что он в более широком смысле связан с программным решением в целом, чем с базами данных. Перейдем к обмену базами данных, если люди думают, что это лучший. Мне было интересно, когда в таблицу базы данных …

4
Как постоянство вписывается в чисто функциональный язык?
Как шаблон использования обработчиков команд для работы с постоянством вписывается в чисто функциональный язык, где мы хотим сделать код, связанный с IO, как можно более тонким? При реализации доменно-управляемого проектирования на объектно-ориентированном языке обычно используется шаблон Command / Handler для выполнения изменений состояния. В этом дизайне обработчики команд располагаются поверх …

4
Что должен означать кастинг?
При кодировании на низкоуровневых языках, таких как CI, обнаруживается, что приведение иногда означает «переосмыслить эти байты, как если бы оно всегда имело этот другой тип», а в других случаях - как «преобразовать это значение разумно в этот другой тип». Каково первоначальное значение слова и есть ли последовательность в том, когда …

3
насколько сложным должен быть конструктор
Я веду дискуссию с моим коллегой о том, сколько работы может сделать конструктор. У меня есть класс B, который внутренне требует другого объекта A. Объект A - один из немногих членов, которым класс B должен выполнять свою работу. Все его открытые методы зависят от внутреннего объекта A. Информация об объекте …
18 c#  constructors 

6
Как Scrum может быть адаптирован к волонтерам?
Я недавно присоединился к молодому хакерскому пространству, которое все еще находится в процессе создания. Нам повезло, потому что у этого пространства есть несколько внутренних проектов, над которыми нужно работать, и нет недостатка в добровольцах для работы над ними. Были некоторые дискуссии о том, как организовать эти проекты. Мой последний профессиональный …

7
Должны ли / или другие утверждения быть организованы редкостью случаев или трудностью иметь дело с ними?
В некотором коде, который я пишу прямо сейчас, у меня есть что-то вроде этого: if (uncommon_condition) { do_something_simple(); } else { do(); something(); long(); and(); complicated(); } Часть меня думает: «Все хорошо, как написано. Сначала должны идти простые дела, а затем более сложные дела». Но другая часть говорит: «Нет! elseКод …

2
Помощь со сложным MVVM (несколько просмотров)
Мне нужна помощь в создании моделей представления для следующего сценария: Глубокие, иерархические данные Несколько представлений для одного и того же набора данных Каждое представление - это одно, динамически изменяемое представление, основанное на активном выборе. В зависимости от значения свойства отображать различные типы вкладок в элементе управления вкладками Мои вопросы: Должен …
18 wpf  mvvm 

2
Каковы требования для атрибуции в лицензии MIT?
Choosealicense.com утверждает, что лицензия MIT является «разрешительной лицензией, которая коротка и точна . Это позволяет людям делать что-либо с вашим кодом с надлежащей атрибуцией и без гарантии »(выделено мной). Однако, читая лицензию, я не вижу ничего, утверждающего, что авторство оригинальному автору должно быть где-либо, так откуда они это берут?

5
Структура папок веб-приложения Java
Как новичок в J2EE, я недавно начал разрабатывать свой собственный проект с нуля, используя Ядро J2EE: Servlets & Jsps. Я не мог оценить, правильная структура папок моего проекта или нет. Вот структура папок моего проекта. Прежде чем задать вопрос, я признаю, что не мог ответить или не оправдать, если кто-то …

2
Семантическое управление версиями при исправлении важной ошибки
В настоящее время я управляю библиотекой, которая широко используется, и у меня возник вопрос о семантическом версионировании . Я хочу провести рефакторинг одной довольно важной части библиотеки, которая реализована неправильно - и всегда была реализована неправильно. Но это будет означать изменения в публичном API, что является важным решением. Изменение, которое …

4
Как структурировать тесты, где один тест является настройкой другого теста?
Я тестирую интеграционную систему, используя только общедоступные API. У меня есть тест, который выглядит примерно так: def testAllTheThings(): email = create_random_email() password = create_random_password() ok = account_signup(email, password) assert ok url = wait_for_confirmation_email() assert url ok = account_verify(url) assert ok token = get_auth_token(email, password) a = do_A(token) assert a b …
18 testing 

8
Каковы хорошие модульные тесты, чтобы покрыть случай использования броска матрицы?
Я пытаюсь справиться с модульным тестированием. Скажем, у нас есть кубик, у которого по умолчанию число сторон равно 6 (но может быть 4, 5 сторон и т. Д.): import random class Die(): def __init__(self, sides=6): self._sides = sides def roll(self): return random.randint(1, self._sides) Будут ли следующие действительные / полезные юнит-тесты? …

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