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

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

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

6
Ожидаемое поведение, когда запрос на коллекцию будет иметь нулевые элементы
Допустим, вам дано следующее ... List<Thing> theThings = fubar.Things.All(); Если бы нечего было возвращать, чего бы вы ожидали от fubar.Things.All ()? Редактировать: Спасибо за мнения. Я подожду немного и приму запись с наибольшим количеством взлетов. Я согласен с ответами, особенно теми, которые предлагают пустую коллекцию. Поставщик предоставил API с несколькими …
13 java  c# 

6
Являются ли все проблемы программирования алгоритмом проблемами? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 5 лет назад . Мне нравится, как «Введение в алгоритмы» Cormen et al. передает знания. …
13 algorithms 

4
Существует ли другое обоснование использования абстрактных классов / интерфейсов в C ++ и Java?
Согласно Хербу Саттеру, следует предпочитать абстрактные интерфейсы (все чисто виртуальные функции) абстрактным классам в C ++, чтобы максимально отделить реализацию. Хотя я лично считаю, что это правило очень полезно, я недавно присоединился к команде со многими программистами на Java, и в коде Java это руководство, по-видимому, не существует. Функции и …

3
Как бы вы протестировали функцию «Проложить маршрут» на Картах Google?
(Я думаю, это был бы хороший вопрос для интервью , но в моем случае это более прагматично, чем это.) У нас есть большое и сложное приложение, которое моделирует чрезвычайно длительный и сложный процесс химической реакции между десятками химических компонентов. Мы находимся на стадии разработки Приемочных тестов для приложения, но нас …

3
Пользовательская конфигурация сценария оболочки. Лучшие практики?
Я пишу сценарий оболочки с несколькими переменными, которые должны быть настроены пользователем. Там будет установщик для загрузки и настройки скрипта, возможно, задавая ряд вопросов. Рассматриваемый скрипт предназначен для других разработчиков. Это может быть реализовано несколькими способами: Используйте заполнители в самом скрипте и используйте sedдля их замены во время установки (что-то …

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

2
Как правильно проверить данные коммитов в Git?
Моя цель - проверить данные коммита, которые не соответствуют определенным требованиям, а затем отклонить либо созданный коммит, либо отправленный в удаленный репозиторий. Проблема создания ловушки перед фиксацией заключается в том, что ее трудно развернуть для многих людей, которым приходится вручную обновлять свой файл ловушки перед фиксацией. Кроме того, Git не …
13 git 


3
Инициализировать массив в амортизированном постоянном времени - как называется этот трюк?
Существует такая структура данных, которая сравнивает производительность доступа к массиву с необходимостью повторять его при очистке. Вы ведете счетчик поколений с каждой записью, а также глобальный счетчик поколений. «Очистка» увеличивает счетчик генерации. При каждом доступе вы сравниваете локальные и глобальные счетчики генерации; если они отличаются, значение считается «чистым». Об этом …

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

2
Должен ли я поменяться с WCF на NserviceBus
У нас есть центральный сервер, который отправляет и получает сообщения с нескольких компьютеров, которые расположены в клиентских сетях в разных местах. Чтобы облегчить это, в настоящее время я использую WCF с TCPNetBindings, используя двустороннюю связь, защищенную сертификатами. Теперь у нас есть ряд проблем с этим - главным образом, нас просят …

5
Для ORM, поддерживающего проверку данных, должны ли ограничения также применяться в базе данных?
Я всегда применял ограничения на уровне базы данных в дополнение к моим (ActiveRecord) моделям. Но мне было интересно, действительно ли это требуется? Немного фона Недавно мне пришлось провести модульное тестирование базового метода автоматической генерации меток времени для модели. Обычно тест создает экземпляр модели и сохраняет его без проверки. Но есть …
13 database  orm  validation  dry 

5
Преимущества классического ООП над языком Go-like
Я много думал о дизайне языка и о том, какие элементы были бы необходимы для «идеального» языка программирования, и изучение Google Go привело меня к сомнению во многих других общеизвестных знаниях. В частности, Go, похоже, обладает всеми интересными преимуществами объектно-ориентированного программирования, фактически не имея структуры объектно-ориентированного языка. Там нет классов, …

9
Должен ли я рассказать покойному сотруднику об их дефекте «sev 1»? [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения стека Exchange. Закрыто 7 лет назад . Недавно мой сотрудник покинул нашу компанию. Перед уходом он закодировал компонент, у которого была серьезная утечка …

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