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

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

4
Разработка функции, единственная цель которой будет устранена? [закрыто]
Как называется модель, в которой отдельные участники (программисты / дизайнеры) разработали артефакт с единственной целью - служить отвлечением, чтобы руководство могло удалить эту функцию в конечном продукте ? Это фольклор, который я слышал от бывшего коллеги, который работал в крупной компании по разработке игр. В этой компании хорошо известно, что …

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

10
Где искать сложные работы с непринужденной атмосферой? [закрыто]
Я разработчик в одной из известных технологических компаний. Мне нравится работа по многим причинам: Я делаю интересную работу над классным продуктом Я решаю сложные задачи и использую много навыков высокого уровня (количественный, креативный, письменный, презентационный) Хорошо платит Проблема в том, что я чувствую, что мне нужна более расслабленная атмосфера (более …

10
Разве я не могу использовать все статические методы?
В чем разница между двумя методами UpdateSubject ниже? Я чувствовал, что использование статических методов лучше, если вы просто хотите оперировать сущностями. В каких ситуациях мне следует использовать нестатические методы? public class Subject { public int Id {get; set;} public string Name { get; set; } public static bool UpdateSubject(Subject subject) …

19
Какие навыки вы ожидаете и оцените в младшем инженере программного обеспечения? [закрыто]
Недавно я закончил магистратуру в области разработки программного обеспечения, и я собираюсь начать свою профессиональную карьеру через несколько недель. Моя роль будет в качестве младшего разработчика для компании, которая разрабатывает программное обеспечение с использованием Java и связанных с ними технологий (в том числе Spring и Hibernate). Честно говоря, я очень …

11
Уточнить принцип единой ответственности
Принцип единой ответственности гласит, что класс должен делать одно и только одно. Некоторые случаи довольно ясны. Другие, однако, сложны, потому что то, что выглядит как «одна вещь» при просмотре на данном уровне абстракции, может быть множественным при просмотре на более низком уровне. Я также опасаюсь, что если принцип «Единой ответственности» …

17
Чем полезен Лисп? [закрыто]
Очевидно, что Lisp является преимуществом для ИИ , но мне не кажется, что Lisp немного быстрее, чем Java, C # или даже C. Я не владелец Lisp, но мне невероятно трудно понять преимущество можно было бы написать при написании программного обеспечения для бизнеса на Лиспе. И все же это считается …
64 lisp 

7
Разница между модульным тестированием и разработкой на основе тестирования
Из прочтения описаний я понимаю, что в TDD тесты выполняются до написания функции, а в модульном тестировании - после. Является ли это основным отличием, или эти два термина даже нельзя сравнивать как таковые? Возможно, Unit Testing является неотъемлемой частью TDD.

19
Почему компиляторы настолько надежны?
Мы ежедневно используем компиляторы, как если бы их корректность была задана, но компиляторы тоже являются программами и могут содержать ошибки Я всегда задавался вопросом об этой непогрешимой надежности. Вы когда-нибудь сталкивались с ошибкой в ​​самом компиляторе? Что это было и как вы поняли, что проблема была в самом компиляторе? ... …

5
Почему в CSS и SVG допустимо большое количество магических чисел?
Часто я вижу вопросы , включенные в список Hot Network Вопросы , как это , что в основном спрашивают «как я могу сделать эту произвольную форму в CSS». Неизменно ответом является пара блоков данных CSS или SVG с кучей, казалось бы, случайных жестко закодированных значений, которые формируют запрашиваемую форму. Когда …

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

11
Является ли большое логическое выражение более читабельным, чем то же выражение, разбитое на методы предикатов? [закрыто]
Что легче понять: большой логический оператор (довольно сложный) или тот же оператор, разбитый на методы предикатов (много дополнительного кода для чтения)? Вариант 1, большое логическое выражение: private static bool ContextMatchesProp(CurrentSearchContext context, TValToMatch propVal) { return propVal.PropertyId == context.Definition.Id && !repo.ParentId.HasValue || repo.ParentId == propVal.ParentId && ((propVal.SecondaryFilter.HasValue && context.SecondaryFilter.HasValue && propVal.SecondaryFilter.Value …
63 c#  readability 

2
Почему побитовые операторы имеют более низкий приоритет, чем сравнения?
Может ли кто-нибудь объяснить обоснование, почему в группе самых популярных языков (см. Примечание ниже) операторы сравнения (==,! =, <,>, <=,> =) Имеют более высокий приоритет, чем побитовые операторы (&, |, ^ ~) Я не думаю, что я когда-либо сталкивался с использованием, где этот приоритет был бы естественным. Это всегда такие …


6
Как нетехнический менеджер добавляет ценность команде разработчиков мотивированных программ?
Я вижу, как многие программисты отворачиваются от управленческих и административных ролей. Они хотят строить вещи. И в результате многие из этих должностей заняты нетехническими людьми. Я не вижу, как они добавляют ценность. Достаточно ли планирования встреч, бронирования мест и другой административной работы, чтобы оправдать их роль?

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