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

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

25
Честно говоря, вы предпочитаете ковбойское кодирование? [закрыто]
Большинство программистов, защищающих методологии, политически корректны, такие как Agile, Waterfall, RUP и т. Д. Некоторые из них следуют методологии, но не все. Честно говоря, если вы можете выбрать методологию, вы, безусловно, перейдете к господствующим «правильным» методологиям или предпочтете «более простую» методологию, например ковбойское программирование? Почему? Я знаю, это зависит Пожалуйста, …

9
Начинающие программисты разочарованы отсутствием глоссария ошибок компилятора
Друг моей семьи попросил меня немного помочь, когда он учится программировать (на языке Си). Пока мы говорили, он выразил разочарование по поводу того, что ему трудно понять сообщения об ошибках, которые его компилятор (GCC) выдает ему, когда он делает ошибки. Он не понимает всех используемых терминов, и иногда это их …

10
Синтаксический дизайн. Зачем использовать круглые скобки, если аргументы не передаются?
Во многих языках синтаксис function_name(arg1, arg2, ...)используется для вызова функции. Когда мы хотим вызвать функцию без каких-либо аргументов, мы должны это сделать function_name(). Я нахожу странным, что компилятор или интерпретатор сценариев потребовал ()бы успешного обнаружения его как вызова функции. Если известно, что переменная может быть вызвана, почему этого function_name;недостаточно? С …

3
Какой язык программирования используется для написания программы BIOS?
Как я понимаю, код / ​​битовый поток BIOS, который содержится в ПЗУ, должен быть общим (работать вместе с несколькими типами процессоров или ISA). Кроме того, я увидел упомянутое в сети, что можно сбросить его код (и «разобрать» его). Итак, на каком языке, в наборе команд или в машинном коде написано? …
65 cpu  bios 

6
Следует ли использовать Latin-1 поверх UTF-8, когда речь идет о конфигурации базы данных?
Мы используем MySQL в компании, в которой я работаю, и мы создаем как клиентские, так и внутренние приложения, используя Ruby on Rails. Когда я начал работать здесь, я столкнулся с проблемой, с которой я никогда не сталкивался раньше; база данных на производственном сервере установлена ​​на Latin-1, что означает, что гем …

7
Сравнение 1 <10 дешевле, чем 1 <1000000?
Я просто использовал ~ 1 миллиард в качестве счетчика для a z-indexв CSS, и думал о сравнениях, которые должны продолжаться. Есть ли разница в производительности на уровне ALU при сравнении очень больших чисел с очень маленькими? Например, будет ли один из этих двух фрагментов более дорогим, чем другой? snippet 1 …
65 performance  cpu 

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

8
Как мне справиться со сложным программистом, присоединяющимся к проекту с открытым исходным кодом?
У меня есть скрипт с открытым исходным кодом для определенного сайта (я пытаюсь не называть здесь ничего по имени), который я и несколько других разработчиков недавно переместили на GitHub. С тех пор, как мы перешли на новую систему, у нас появилось несколько новых разработчиков, в том числе один очень активный. …
65 open-source  team 

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

13
Разумно ли обнулять каждый разыменованный указатель?
На новой работе я получаю пометки в обзорах кода для такого кода: PowerManager::PowerManager(IMsgSender* msgSender) : msgSender_(msgSender) { } void PowerManager::SignalShutdown() { msgSender_-&gt;sendMsg("shutdown()"); } Мне сказали, что последний метод должен читать: void PowerManager::SignalShutdown() { if (msgSender_) { msgSender_-&gt;sendMsg("shutdown()"); } } то есть, я должен поставить NULLохрану вокруг msgSender_переменной, даже если он …

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

17
Как правильно писать циклы?
В большинстве случаев при написании циклов я обычно пишу неправильные граничные условия (например, неверный результат) или мои предположения о завершении цикла неверны (например, бесконечно работающий цикл). Хотя после некоторых проб и ошибок мои предположения были правильными, я слишком расстроился из-за отсутствия правильной вычислительной модели в моей голове. /** * Inserts …

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

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

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

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