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

57
Полезны ли цели SMART для программистов? [закрыто]

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

57
переход с Windows на Linux [закрыто]

Мне нужно согласовать эти 2 факта: Мне не комфортно работать с Linux; Мне нужно разработать программное обеспечение для Linux. Немного предыстории: у меня более 10 лет опыта программирования на Windows (почти исключительно на C / C ++, но также на некоторых .NET), я был пользователем FreeBSD дома...

57
Самое прискорбное дизайнерское или программное решение, которое вы приняли? [закрыто]

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

57
Когда вы не оказываете помощь менее опытным программистам? [закрыто]

Считаете ли вы, что это хорошая идея, когда младший программист нуждается в помощи, чтобы всегда вмешиваться и пытаться обучить их? Или они проигнорируют все советы по «обучению рыбам», которые вы им дадите, и сосредоточатся только на «рыбе», которую вы только что принесли им? Вы позволяете им...

57
Как я могу сделать рефакторинг приоритетом для моей команды?

Кодовая база, с которой я работаю ежедневно, не имеет автоматических тестов, непоследовательных имен и множества комментариев, таких как «Почему это здесь?», «Не уверен, нужно ли это» или «Этот метод не назван правильно», и код изобилует «Журналы изменений», несмотря на то, что мы используем...

57
Есть ли диаграмма, которая поможет мне выбрать между лицензиями с открытым исходным кодом? [закрыто]

Инициатива Open Source перечисляет 9 различных лицензий в своем списке «Лицензий, которые популярны и широко используются или имеют сильные сообщества» . Я хочу лицензировать свой проект с открытым исходным кодом. К сожалению, я не говорю по-юридически. Есть ли какая-нибудь диаграмма, к которой я...

57
Можете ли вы изменить код, распространяемый по лицензии MIT, и повторно распространять его по лицензии GPL? [закрыто]

Можно ли изменить код плагина Chili , последний выпуск которого был выпущен в июле 2008 года и лицензирован по лицензии MIT, чтобы затем лицензировать его по лицензии GPL? Насколько я понимаю, нет никаких ограничений в отношении того, что новый код лицензируется по той же лицензии. Это...

57
Что означает артефакт?

Словарь определяет артефакт как: артефакт, артефакт [ˈɑːtɪˌfækt] n что-то созданное человеком или придавшее ему форму, такое как инструмент или произведение искусства, особенно объект археологического интереса что-нибудь искусственное, например, ложный экспериментальный результат (Life Sciences...

57
Управление исходным кодом базы данных

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

57
Почему в таких языках, как C и C ++, нет сборки мусора, а в Java - нет? [закрыто]

Ну, я знаю, что есть такие вещи, как malloc / free для C и new / using-a-destructor для управления памятью в C ++, но мне было интересно, почему нет «новых обновлений» для этих языков, которые позволяют пользователю есть возможность вручную управлять памятью, или чтобы система делала это...

57
Альтернативы для Профессионального контроля версий [закрыто]

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

57
Принцип единой ответственности - как я могу избежать фрагментации кода?

Я работаю в команде, лидер которой является ярым сторонником принципов разработки SOLID. Однако ему не хватает большого опыта в получении сложного программного обеспечения на открытом воздухе. У нас возникла ситуация, когда он применил SRP к тому, что уже представляло собой довольно сложную кодовую...

57
Почему обратная отладка редко используется? [закрыто]

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

57
Почему в C ++ нет конструкции finally?

Обработка исключений в C ++ ограничена попыткой / throw / catch. В отличие от Object Pascal, Java, C # и Python, даже в C ++ 11 finallyконструкция не была реализована. Я видел очень много литературы по С ++, обсуждающей «код, исключающий исключение». Липпман пишет, что безопасный код исключений -...

57
Является ли резервное копирование базы данных MySQL в Git хорошей идеей?

Я пытаюсь улучшить ситуацию резервного копирования для моего приложения. У меня есть приложение Django и база данных MySQL. Я прочитал статью, в которой предлагается создать резервную копию базы данных в Git. С одной стороны, мне это нравится, поскольку он будет синхронизировать копию данных и...

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

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

57
Процесс разработки кода для миссий Apollo 11?

У миссий Аполлона была технология, не более сложная, чем карманный калькулятор. По ссылке здесь есть информация о Apollo Guidance Computer (AGC) Бортовой компьютер Apollo Guidance Computer (AGC) был около 1 кубического фута с 2K 16-битной оперативной памяти и 36K жесткой памяти сердечника и веревки...

57
Как мы можем быть уверены, что нижние компоненты компьютерного программирования, такие как компиляторы, ассемблеры, машинные инструкции и т. Д., Безупречны?

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

57
Почему тип идет после имени переменной в современных языках программирования?

Почему почти во всех современных языках программирования (Go, Rust, Kotlin, Swift, Scala, Nim, даже последняя версия Python) типы всегда идут после имени переменной в объявлении переменной, а не раньше? Почему x: int = 42и нет int x = 42? Разве последнее не более читабельно, чем первое? Это просто...

57
Должен ли разработчик делать макеты пользовательского интерфейса, если в проекте нет дизайнеров?

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