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

57
Есть ли исключительные случаи, когда мы можем принять дубликат кода?

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

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

Мой стиль кодирования для вызовов вложенных функций следующий: var result_h1 = H1(b1); var result_h2 = H2(b2); var result_g1 = G1(result_h1, result_h2); var result_g2 = G2(c1); var a = F(result_g1, result_g2); Недавно я перешел в отдел, где очень популярен следующий стиль кодирования: var a =...

57
Как хранить «неизвестные» и «отсутствующие» значения в переменной, сохраняя при этом разницу между «неизвестными» и «отсутствующими»?

Считайте это «академическим» вопросом. Мне было интересно время от времени избегать значений NULL, и это пример, когда я не могу найти удовлетворительное решение. Давайте предположим, что я храню измерения там, где в некоторых случаях измерение, как известно, невозможно (или отсутствует). Я хотел...

56
Ограничение в 80 символов по-прежнему актуально во времена широкоформатных мониторов? [закрыто]

на широкоэкранном мониторе можно легко увидеть более 80 символов одновременно, без полос прокрутки. даже Линус Торвальдс видит ограничение в 80 символов как устаревшее . Итак, действительно ли ограничение в 80 символов по-прежнему актуально во времена широкоэкранных...

56
Какие непрограммирующие книги должен прочитать программист, чтобы помочь развить навыки программирования / мышления? [закрыто]

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

56
ООП выполняет обещание повторного использования кода? Какие есть альтернативы для повторного использования кода?

Возможно, самое большое обещание использования объектно-ориентированной парадигмы - это повторное использование кода. Некоторые оспаривают, что это было достигнуто. Почему это было (не) достигнуто? Позволяет ли повторное использование кода, как его определяет ООП, сделать проекты более...

56
Что такое лямбда и почему она полезна? [закрыто]

До сих пор я слышал о: Лямбда-исчисление Лямбда-программирование Лямбда-выражения Лямбда-функции Что, похоже, связано с функциональным программированием ... По всей видимости, он будет интегрирован в C ++ 1x, поэтому я мог бы лучше понять это сейчас:...

56
Зачем нужен реестр Windows?

Поскольку я отлаживал проблемы в com, бок о бок, имел дело с dll hell, все время ненавидя реестр Windows со страстью, мне было интересно, зачем это нужно. Я никогда не чувствовал себя обязанным прочитать целую книгу о лучших методах регистрации, а затем просто "получить ее". Однако я использовал...

56
Наем младшего разработчика, что я должен спросить? [закрыто]

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

56
Как мы можем сократить время простоя в конце итерации?

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

56
Сколько вопросов подходит для стажера? [закрыто]

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

56
IDE для динамических языков - как далеко вы можете получить?

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

56
Инъекция зависимостей необходима для модульного тестирования?

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

56
Компиляторы Intel действительно лучше, чем Microsoft? [закрыто]

Несколько лет назад я был удивлен, когда обнаружил, что Intel продает компиляторы, совместимые с Visual Studio. Я попробовал это, в частности, для C / C ++, а также для фантастических инструментов диагностики. Но код не был настолько сложным в вычислительном отношении, чтобы заметить разницу....

56
Почему так много строковых классов перед лицом std :: string?

Мне кажется, что многие большие библиотеки C ++ создают свои собственные строковые типы. В коде клиента вы должны либо использовать один из библиотеки ( QString, CString, и fbstringт.д., я уверен , что кто - нибудь может назвать несколько) или сохранить преобразование между стандартным типом и одна...

56
Как мне доказать или опровергнуть, что «объекты Бога» не правы?

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

56
Является ли jQuery примером «божественного объекта» антипаттерна?

Я хочу спросить - я медленно изучаю jQuery. То , что я вижу , это точный пример из Бога объекта анти-паттерна . По сути, все идет к $функции, что бы это ни было. Прав ли я, и действительно ли jQuery является примером этого...

56
Когда использовать слабые ссылки в .Net?

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

56
Держите язык программирования обратно совместимым, а не исправляйте его недостатки

Во-первых, некоторый контекст (вещи, которые большинство из вас все равно знают): Каждый популярный язык программирования имеет четкую эволюцию, большую часть времени отмеченную его версией: у вас есть Java 5, 6, 7 и т. Д., PHP 5.1, 5.2, 5.3 и т. Д. Выпуск новой версии делает доступными новые API,...