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

66
Если функции должны выполнить нулевые проверки перед выполнением намеченного поведения, это плохой дизайн?

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

65
Когда фиксация контроля версий слишком велика? [закрыто]

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

65
Является ли big-O действительно актуальным при работе в промышленности?

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

65
Почему больше программистов не работают внештатно? [закрыто]

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

65
Почему программное обеспечение не так надежно, как автомобиль? [закрыто]

У меня был пользователь задать мне этот вопрос. Мы знаем, что машины ломаются, но это из-за чего-то физического (если не задействовано программное обеспечение!). Я пытался ответить, что программное обеспечение является гораздо более молодой отраслью, но пользователь возразил: «Разве автомобильная...

65
Программирование и повсеместный язык (DDD) в неанглийском домене

Я знаю, что здесь уже есть некоторые вопросы, которые тесно связаны с этой темой, но ни один из них не использует в качестве отправной точки вездесущий язык, поэтому я думаю, что это оправдывает этот вопрос. Для тех, кто не знает: Ubiquitous Language - это концепция определения (разговорного и...

65
«Не занимайтесь программированием после нескольких лет карьеры». Это честный совет? [закрыто]

Я немного опытный разработчик, имеющий около 5 лет опыта работы с PHP и немного меньше по Java, C #, и пытаюсь выучить немного Python в настоящее время. С самого начала моей карьеры программиста время от времени коллеги-программисты говорили мне, что программирование подходит для нескольких первых...

65
Для компании нормально иметь программистов в таком жестком графике? [закрыто]

Так что я работаю на этой работе пару месяцев. Я немного расстроен, потому что я делаю свою лучшую работу со 2 до 7. На предыдущих работах я приходил в 9: 30-10: 00 и уезжал в 7. Некоторые компании были в порядке с этим, другие - нет. , Но моя нынешняя компания настаивает на том, чтобы я был там в...

65
EAV - это действительно плохо во всех сценариях?

Я подумываю использовать модель сущность-атрибут-значение (EAV) для некоторых вещей в одном из проектов, но все вопросы об этом в Stack Overflow заканчиваются ответами, называющими EAV анти-паттерном. Но мне интересно, так ли это во всех случаях? Допустим, сущность продукта магазина, у него есть...

65
Какое задание Дейкстра дал волонтерам, о чем упоминалось в его статье «Смиренный программист»?

В статье Дейкстры «Смиренный программист» он упоминает, что дал волонтерам задачу, которую нужно решить: «Я провел небольшой программный эксперимент с действительно опытными волонтерами, но случилось нечто совершенно непреднамеренное и совершенно неожиданное. Никто из моих добровольцев не нашел...

65
Создать мою собственную систему баз данных [закрыто]

Мне нужно узнать, как работают базы данных, чтобы использовать их более эффективно, и мой способ обучения - это делать. Я хочу создать свою собственную систему баз данных. Я не имею в виду создание псевдо-базы данных, которая будет использовать запрос для разбора файлов; это будет просто интерфейс...

65
Что такое инверсия управления, и когда я должен ее использовать?

Я проектирую новую систему и хочу знать, что такое инверсия управления (IOC) и, что более важно, когда ее использовать. Это должно быть реализовано с помощью интерфейсов или может быть сделано с помощью...

65
Почему некоторые крупные проекты, такие как Git и Debian, используют только список рассылки, а не систему отслеживания проблем?

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

65
Как я могу спасти мою практику? [закрыто]

В настоящее время я работаю стажером в очень крупной компании, не занимающейся разработкой программного обеспечения. Позиция, на которую я претендовал, не была специально разработкой, но команда, которая меня наняла, хотела получить специальность CS, чтобы попытаться разработать для них несколько...

65
Как мне справиться со сложным программистом, присоединяющимся к проекту с открытым исходным кодом?

У меня есть скрипт с открытым исходным кодом для определенного сайта (я пытаюсь не называть здесь ничего по имени), который я и несколько других разработчиков недавно переместили на GitHub. С тех пор, как мы перешли на новую систему, у нас появилось несколько новых разработчиков, в том числе один...

65
Является ли плохой идеей возвращать разные типы данных из одной функции в динамически типизированном языке?

Мой основной язык статически типизирован (Java). В Java вы должны возвращать один тип из каждого метода. Например, у вас не может быть метода, который условно возвращает Stringили условно возвращает Integer. Но в JavaScript, например, это очень возможно. На статически типизированном языке я...

65
Когда я должен использовать программирование на основе событий?

Я передавал обратные вызовы или просто запускал функции из других функций в моих программах, чтобы все происходило после завершения задач. Когда что-то заканчивается, я запускаю функцию напрямую: var ground = 'clean'; function shovelSnow(){ console.log("Cleaning Snow"); ground = 'clean'; } function...

65
Следует ли использовать Latin-1 поверх UTF-8, когда речь идет о конфигурации базы данных?

Мы используем MySQL в компании, в которой я работаю, и мы создаем как клиентские, так и внутренние приложения, используя Ruby on Rails. Когда я начал работать здесь, я столкнулся с проблемой, с которой я никогда не сталкивался раньше; база данных на производственном сервере установлена ​​на...