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

35
Разумно ли писать модульные тесты, потому что они, как правило, комментируются позже или потому что интеграционные тесты более ценны?

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

35
Разве «всегда инициализируемые переменные» не приводят к скрытию важных ошибок?

В C ++ Core Guidelines есть правило ES.20: всегда инициализировать объект . Избегайте ошибок «до установки» и связанных с ними неопределенных действий. Избегайте проблем с пониманием сложной инициализации. Упростить рефакторинг. Но это правило не помогает находить ошибки, оно только скрывает их....

35
Аргументы против подавления ошибок

Я нашел такой код в одном из наших проектов: SomeClass QueryServer(string args) { try { return SomeClass.Parse(_server.Query(args)); } catch (Exception) { return null; } } Насколько я понимаю, подавление ошибок, подобных этой, является плохой практикой, поскольку она уничтожает полезную информацию...

35
Когда мне следует расширить класс Java Swing?

Мое текущее понимание реализации Наследования состоит в том, что следует расширять класс только при наличии отношения IS-A . Если родительский класс может дополнительно иметь более конкретные дочерние типы с различной функциональностью, но будет совместно использовать общие элементы,...

35
Как Rust расходится с возможностями параллелизма в C ++?

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

35
Когда мы на самом деле используем объектно-ориентированное программирование? [закрыто]

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

35
Являются ли задания в условной части условными обозначениями плохой практикой?

Давайте предположим, что я хочу написать функцию, которая объединяет две строки в C. Я бы написал так: void concat(char s[], char t[]){ int i = 0; int j = 0; while (s[i] != '\0'){ i++; } while (t[j] != '\0'){ s[i] = t[j]; i++; j++; } s[i] = '\0'; } Тем не менее, K & R в своей книге реализовал...

35
Будет ли иметь 4 состояния на «бит», а не 2, в два раза больше места?

Довольно простой фундаментальный, хотя и наивный вопрос: Будет ли иметь 4 состояния на «бит», а не 2, в два раза больше места? В случае, если это не ясно, я имею в виду, как если бы каждая «структура хранения», а не только представляющая 2 значения (база 2: 0, 1), могла бы представлять 4 значения...

35
Что такое злоупотребление дженериками?

Просматривая некоторый код, я заметил возможность изменить его, чтобы использовать дженерики. (Запутанный) код выглядит так: public void DoAllTheThings(Type typeOfTarget, object[] possibleTargets) { var someProperty = typeOfTarget.GetProperty(possibleTargets[0]); ... } Этот код можно заменить на...

34
Какая худшая книга по программированию, которую ты когда-либо читал? [закрыто]

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

34
Является ли упоминание моего блога в моем резюме полезным или вредным для поиска работы? [закрыто]

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

34
Что должно быть в стандарте кодирования? [закрыто]

Что должно быть в хорошем (читай: полезном) стандарте кодирования? Вещи, которые должен иметь код. Вещи, которые код не должен иметь. Должен ли стандарт кодирования включать определения того, что обеспечивает язык, компилятор или средство форматирования кода? А как насчет таких показателей, как...

34
Карьерный совет: остаться с PHP или начать новую карьеру в другом месте (.Net?) [Закрыто]

Я планирую переехать в Нью-Йорк через 6-12 месяцев, поэтому я вынужден искать новую работу. Когда я планирую начать свою жизнь в другом городе, это также, вероятно, хорошее время, чтобы подумать о смене карьеры. Я нашел много разных мнений о PHP против .Net против Java, и это не тема здесь. Я не...

34
Почему крупные ИТ-проекты имеют тенденцию терпеть неудачу или имеют большие перерасходы / затраты? [закрыто]

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

34
Каков правильный уровень блокировки сайта для вас как разработчика? [закрыто]

Почти все разработчики, которые работают в крупной корпорации, оказываются не на той стороне программного обеспечения для блокировки сайтов. Это может быть как разочаровывающим ( «Просто позвольте мне прочитать этот чертов блог!» ), Так и полезным ( «Вау! Уклонился от пули с этим сайтом» ). По...

34
Является ли встроенное программирование ближе к электротехнике или разработке программного обеспечения? [закрыто]

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

34
Предметы CS, которые студент должен знать [закрыто]

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

34
Как связаны между собой HTTP-сервер Apache и Tomcat Apache? (Если вообще)

В настоящее время у меня работает Apache httpd на рабочем сервере Ubuntu VPS. Я пишу PHP-скрипты. Я заинтересован в изучении Java, и мне было интересно, как я мог бы написать какую-нибудь серверную Java для работы с моей текущей установкой. Как Apache Tomcat и Apache HTTP Server связаны друг с...

34
Руби, но не Rails на моем резюме [закрыто]

Я перечислил Ruby как навык в своем резюме, потому что я программирую на Ruby в течение 5 лет, пока я работаю над докторской диссертацией. Тезис. Я в основном использовал его для реализации алгоритмов обработки естественного языка. Я начинаю искать работу, и я разместил свое резюме на нескольких...