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

52
Почему умные указатели подсчета ссылок так популярны?

Как я вижу, умные указатели широко используются во многих реальных проектах C ++. Хотя некоторые интеллектуальные указатели, очевидно, полезны для поддержки RAII и передачи прав собственности, также существует тенденция использования общих указателей по умолчанию в качестве способа «сборки мусора»...

52
Как мне внедрить функцию «самоуничтожения» в бесплатную пробную версию моего программного обеспечения?

Существует постоянный аргумент о бесплатной пробной версии по сравнению с моделью freemium (то есть бесплатной версией их программного обеспечения с ограниченными и / или урезанными функциями), позволяющей потенциальным клиентам и пользователям тестировать свой продукт. На основании моих...

52
Как избежать каскадного рефакторинга?

У меня есть проект. В этом проекте я хотел реорганизовать его, чтобы добавить функцию, и я рефакторинг проекта, чтобы добавить функцию. Проблема в том, что когда я закончил, оказалось, что мне нужно было сделать небольшое изменение интерфейса, чтобы приспособиться к нему. Так что я сделал...

52
Сгенерировать исключение или дать сбою

Мне интересно, есть ли плюсы и минусы против этого стиля: private void LoadMaterial(string name) { if (_Materials.ContainsKey(name)) { throw new ArgumentException("The material named " + name + " has already been loaded."); } _Materials.Add( name, Resources.Load(string.Format("Materials/{0}",...

52
Какова точная изобретательность Unix трубы

Я слышал историю о том, как Дуглас Маклрой придумал концепцию и как Кен Томпсон реализовал ее за одну ночь. Насколько я понимаю, pipe - это системный вызов, который разделяет часть памяти между двумя процессами, где один процесс пишет, а другой читает. Как человек, который не знаком с...

52
Является ли использование лямбда-выражений, когда это возможно, в java хорошей практикой?

Недавно я освоил лямбда-выражение, которое было введено в java 8. Я обнаружил, что всякий раз, когда я использую функциональный интерфейс, я склонен всегда использовать лямбда-выражение вместо создания класса, реализующего функциональный интерфейс. Это считается хорошей практикой? Или их ситуации,...

52
Должно ли «Нет результатов» быть ошибкой в ​​ответе RESTful?

Я опишу пример: я начинаю создавать API для пекарни. API позволит людям искать в своем каталоге продукты для выпечки, например, домашнее мятное печенье с шоколадной крошкой api.examplebakery.com/search?q=...... Кто-то использует это для поиска названного продукта pineapple-banana flavoured...

52
Мой менеджер проекта не принимает перенос в Scrum - это нормально?

Я разработчик, работающий над новым мобильным приложением для Android и iOS с большим бэкэнд-компонентом. Мы были в трех спринтах этого проекта, и мы используем Scrum со всеми его церемониями (уточнение, планирование, ежедневные газеты, ретроспективы и т. Д.). В двух спринтах команде приходилось...

51
Когда работает парное программирование? Когда этого избежать?

Вместо того, чтобы постоянно работать над парными программами, мы используем выборочное программирование в нашей команде. Я думаю, что это работает лучше всего в следующих обстоятельствах: Усиление новых членов команды в проекте (вместо того, чтобы позволить им самостоятельно просматривать...

51
Что вы думаете о тесте Джоэл? [закрыто]

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

51
Когда вы знаете, что пора уходить с вашей нынешней работы? [закрыто]

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

51
Кто-нибудь предпочитает пропорциональные шрифты? [закрыто]

Я читал статью в Википедии о стиле программирования и заметил кое-что в аргументе против вертикально выровненного кода: Опора на моноширинный шрифт; табличное форматирование предполагает, что редактор использует шрифт фиксированной ширины. Большинство современных редакторов кода поддерживают...

51
Активы или юнит-тесты важнее?

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

51
Почему у Microsoft такая плохая репутация среди людей, вовлеченных в open source? [закрыто]

Существуют ли какие-либо конкретные инциденты, которые ответственны за низкую репутацию Microsoft (и Билла Гейтса) в глазах сообщества открытого исходного кода? Microsoft явно не единственная частная компания. Такие компании, как Apple, сделали намного хуже, когда дело доходит до ограничений на...

51
Как тестируется программное обеспечение, используемое в критических системах жизни или смерти?

Самолет, в отличие, например, от веб-сайта, представляет собой систему, в которой любой сбой в некоторых системах совершенно неприемлем, поскольку ошибки, например, в мониторинге полета, могут привести к неисправности автопилота и совершению погружения. Очевидно, этого не происходит, так как...

51
Контрольный список для запуска проекта с открытым исходным кодом [закрыто]

Начать проект с открытым исходным кодом - это не просто выбросить исходный код в какой-либо общедоступный репозиторий, а затем быть довольным этим. Вы должны иметь техническую (помимо пользователя) документацию, информацию о том, как внести свой вклад и т. Д. Если бы вы создали контрольный список...

51
Почему молодые программисты не заинтересованы в мэйнфреймах? [закрыто]

Ключевая проблема с мэйнфреймами заключается в том, что когорта поддерживающих программистов сокращается. Хотя обычно это не было бы проблемой в том смысле, что сокращение числа программистов было бы компенсировано увеличением суммы заработной платы, вызывающей рост предложения программистов по...

51
Как мне убедить моих товарищей по команде, что мы не должны игнорировать предупреждения компилятора?

Я работаю над огромным проектом (больше похожим на запутанную комбинацию десятков мини-проектов, которые не могут быть легко разделены из-за плохого управления зависимостями, но это другое обсуждение) в Java с использованием eclipse. Мы уже отключили ряд предупреждений в настройках компилятора, и в...

51
Важен ли SQL, если я хорошо знаю фреймворки ORM? [закрыто]

У меня нет серьезного опыта работы с SQL, и я даже ненавижу писать SQL вместо LINQ. Я достаточно счастлив с ОРМ. С точки зрения работодателей и сектора, важно ли знать SQL? Должен ли я освоить это? Являются ли компании, которые предпочитают чистый SQL, а не ORM, "динозавром" в мире...