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

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

4
Что понимается под «модулем» в модульном тестировании
Как я понимаю в теории под "модулем" люди подразумевают метод (в ООП). Но на практике тесты, которые проверяют какой-то метод изолированно, являются очень хрупкими тестами поведения (проверка не результата, а факта вызова некоторого метода зависимости). Так что я вижу много людей, которые под юнитом понимают небольшой набор тесно связанных классов. …

3
Где разместить общие методы
У меня есть куча методов, которые обычно используются везде. Прямо сейчас кодовый файл назван глобальными, чтобы представить факт, что они ... фактически ... глобальные. Однако мне это не нравится. Я хочу сгруппировать их в класс и передать интерфейс. Я сделаю только один пример, но я не попаду сюда в ловушку. …
9 c# 

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

9
Что получает Google или Microsoft, размещая файлы JS в своих сетях доставки контента (CDN)?
Как вы знаете, Google, Microsoft и jQuery.com предлагают файлы JS на своих CDN . Для этого им необходимо использовать важные серверы, которые должны обходиться им дорого. Почему они это делают и что они получают от этого?

5
Можно ли рассматривать статические и динамически типизированные языки как разные инструменты для разных типов заданий?
Да, подобные вопросы задавались, но всегда с целью выяснить, «какой из них лучше». Я спрашиваю, потому что я пришел как разработчик в основном на JavaScript, и у меня нет большого опыта написания на статически типизированных языках. Несмотря на это, я определенно вижу ценность в изучении C для обработки сложных операций …

3
Держать модель MVC свободно связанной с БД?
Мне нравится, чтобы мой код тестировался, и я решил использовать стратегию Dependency-Injection для моей текущей инфраструктуры MVC, которая, безусловно, оказалась отличным способом обеспечения слабосвязанного кода, тестируемости и модульности. Но, будучи далеким от мастера по шаблонам проектирования, мне трудно найти хороший способ сохранить мои модели как можно более слабо связанными с …

2
Автоматизация сборки: обычно ли используется QMake для не-Qt проектов?
Итак, я планирую написать библиотеку C ++ и хочу, чтобы она была кроссплатформенной, и поскольку эта библиотека не будет работать с пользовательским интерфейсом, и я хочу, чтобы она имела как можно меньше зависимостей, я не буду использовать Qt (на самом деле Qt не поможет мне достичь того, чего я хочу, …
9 c++  cmake 

4
Что является хорошим примером идеи или техники разработки программного обеспечения, которая была неудачной?
Конкретно, какие есть примеры того, где представления о массах просто ошибочны. Почему люди в первую очередь используют идеи? И почему идеи были отклонены? Или, возможно, идеи все еще живы и здоровы, и если так, то почему? Например, я мог бы описать CORBA (и другие подобные технологии) как нечто, пытавшееся решить …

3
Почему «отзывчивый» веб-дизайн не должен рассматриваться?
Это может показаться скорее вопросом графического дизайна, чем вопросом программирования, но я думаю, что он имеет гораздо больше технических / программных достоинств, чем реальный графический дизайн. Концепция «отзывчивого» веб-дизайна вращается вокруг использования медиазапросов в CSS3 для определения размера устройства просмотра и соответствующей корректировки правил CSS - по сути, динамического CSS. …

4
Почему Rails был написан на Ruby? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 6 лет назад . Я знаю PHP и Ruby. Используя клон PHP Rails (не исключено), называемый Symfony …

3
Могу ли я без проблем использовать Linux / Mono вместо Windows / Visual Studio? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 4 года назад . У меня более 6 лет опыта работы с .Net (C # …

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

7
Рендеринг триллионов «атомов» вместо полигонов?
Я только что видел видео о том, что издатели называют «следующим важным шагом после изобретения 3D». По словам человека, говорящего на нем, они используют огромное количество атомов, сгруппированных в облака вместо полигонов, чтобы достичь уровня неограниченной детализации . Они изо всех сил старались сделать видео понятным для людей, не знакомых …
9 graphics  3d  atom 

3
Какие существуют методы для управления изменениями БД? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 4 года назад . Недавно я начал работать с контролем версий в своей веб-разработке с …

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

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