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

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

2
Является ли стратегия слияния, такая как Git Flow, действительно анти-паттерном?
Моя компания использует Git и использует особую схему ветвления - работа выполняется в master, а ветки зарезервированы для выпусков. Это прекрасно работает, пока вся работа, выполненная в итерации, превращается в ветвь, но если возникает критическая производственная проблема, мы должны гарантировать, что работа каким-то образом попадет в обе ветви. В последнее …

7
Когда мне следует писать интеграционные тесты?
В соответствии с правилами TDD модульные тесты написаны перед рабочим кодом, но как насчет интеграционных тестов, которые осуществляют взаимодействие между конкретными (не имитированными) проводными объектами? Должны ли они быть написаны до модульных тестов или после производственного кода только для проверки «проводки»? Обратите внимание, что я говорю не о приемочных или …

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

11
Как «Четвертое измерение» работает с массивами?
Аннотация: Итак, насколько я понимаю (хотя у меня очень ограниченное понимание), есть три измерения, с которыми мы (обычно) работаем физически: 1-й будет представлен линией. 2-й будет представлен квадратом. 3-й будет представлен кубом. Достаточно просто, пока мы не дойдем до четвертого. Трудно рисовать в трехмерном пространстве, если вы понимаете, что я …
30 theory  array 

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

7
Должен ли я проверить унаследованные методы?
Предположим, у меня есть класс Manager, производный от базового класса Employee , и у этого Employee есть метод getEmail (), который наследуется Manager . Должен ли я проверить, что поведение метода getEmail () менеджера на самом деле такое же, как и у сотрудника? На момент написания этих тестов поведение будет …

3
Как бороться с доброжелательными участниками с открытым исходным кодом?
Если программист связывается с вами и просит внести свой вклад в ваш проект, как вы справляетесь с этим? Ты не знаешь, хорош ли этот парень. Возможно, у него будет больше проблем, чем он того стоит. Возможно, он пытается прикрепить свое имя к успешному проекту только за похвалы. Возможно, он пытается …

1
Вывод типа в Java 8
Собирается ли введение новой лямбда-нотации (см., Например, эту статью ) в Java 8 какого-либо вывода типа? Если да, то как новая система типов повлияет на язык Java в целом?

2
Применение денотационной семантики для проектирования программ
Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 6 лет назад . Я читал немного о денотационной семантике (DS), и я очень заинтригован процессом разработки компьютерных программ, где типы и функции имеют четкое и ясное отображение в математике. Существуют …
30 scala  haskell  scheme 

3
Когда разделять проект на несколько подпроектов
Я хотел бы знать, имеет ли смысл разделять проект, над которым я работаю, на два репозитория вместо одного. Из того, что я могу сказать: Интерфейс будет написан на html + js Бэкэнд в .net Внутренний интерфейс не зависит от внешнего интерфейса, а внешний интерфейс не зависит от внутреннего интерфейса. Интерфейс …

2
лучшие практики работы фабрики Python
Предположим, у меня есть файл, foo.pyсодержащий класс Foo: class Foo(object): def __init__(self, data): ... Теперь я хочу добавить функцию, которая Fooопределенным образом создает объект из необработанных исходных данных. Должен ли я поместить его как статический метод в Foo или как другую отдельную функцию? class Foo(object): def __init__(self, data): ... # …
30 design  python 

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

4
Можете ли вы использовать Пи как генератор случайных чисел?
Я недавно видел этот вопрос в математике. Это заставило меня задуматься. Может ли Пи использоваться как генератор грубых случайных чисел? Я имею в виду, что результаты хорошо известны (как долго вычислялось число пи сейчас?), Но пи кажется довольно случайным, если брать по одной цифре за раз. Имеет ли это какой-либо …

5
Пазл с фонтаном шампанского
Пустые стаканы с водой располагаются в следующем порядке: Когда вы наливаете жидкость в 1-й стакан, если он полон, то дополнительная жидкость будет поступать в стаканы 2 и 3 в равных количествах. Когда стакан 2 заполнен, лишняя жидкость будет переливаться в 4 и 5 и так далее. Учитывая, что N литров …

2
В чем разница между Windows 8, WinRT и Windows RT?
Этот пост относится к быстро меняющемуся событию. Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет историческое значение. В настоящее время он не принимает новые ответы или взаимодействия. Я только что прочитал, что будут доступны две версии Windows: Windows RT и Windows 8 …

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