Вопросы с тегом «c»

27
Зачем использовать непрозрачный «дескриптор», который требует приведения в открытом API, а не типобезопасный структурный указатель?

Я оцениваю библиотеку, публичный API которой в настоящее время выглядит следующим образом: libengine.h /* Handle, used for all APIs */ typedef size_t enh; /* Create new engine instance; result returned in handle */ int en_open(int mode, enh *handle); /* Start an engine */ int en_start(enh handle);...

27
Руководство для начинающих по написанию комментариев?

Хотите улучшить этот пост? Предоставьте подробные ответы на этот вопрос, включая цитаты и объяснение того, почему ваш ответ правильный. Ответы без достаточной детализации могут быть отредактированы или удалены. Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в...

27
Являются ли шаблоны C ++ просто прославленными макросами?

Из разных сравнений среди шаблонов C ++ и C # / обобщений Java, как этот /programming/31693/what-are-the-differences-between-generics-in-c-and-java-and-templates-in-c/31929#31929 У меня сложилось впечатление, что шаблоны C ++ реализуются с помощью некоторой предварительной обработки (замена...

27
Что определяет, какие функции Javascript блокируют против неблокирующих?

Я работаю с Javascript на основе Интернета (vanilla JS, jQuery, Backbone и т. Д.) Уже несколько лет, а недавно я работал с Node.js. Мне потребовалось некоторое время, чтобы освоить «неблокирующее» программирование, но теперь я привык использовать обратные вызовы для операций ввода-вывода и еще...

27
Должен ли сервер быть «снисходительным» к тому, что он принимает, и «молча отбрасывать ошибочный ввод»?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 7 лет назад . У меня сложилось впечатление, что теперь все согласны с тем, что эта максима была ошибкой. Но я недавно видел этот ответ, в котором есть комментарий...

27
В чем преимущество того, что оператор присваивания возвращает значение?

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

27
Стиль для потока управления с проверками проверки

Я пишу много кода, как это: int myFunction(Person* person) { int personIsValid = !(person==NULL); if (personIsValid) { // do some stuff; might be lengthy int myresult = whatever; return myResult; } else { return -1; } } Это может стать довольно грязным, особенно если задействовано несколько...

27
Статические классы со статическими методами считаются SOLID?

SOLID включает принцип подстановки Лискова, который имеет понятие, что «объекты в программе должны заменяться экземплярами их подтипов без изменения правильности этой программы». Поскольку статические классы со статическими методами (немного похожими на Mathкласс) вообще не имеют экземпляров,...

26
Является ли символ возврата каретки устаревшим

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

26
вызвать функцию и никогда не ждать ее в C #

В моем веб-приложении mvc4 есть контроллер, в котором есть действие, которое требует вызова другой функции. Что происходит в этой функции, т.е. возвращаемое значение не имеет значения для моего действия. Как я могу вызвать эту функцию и никогда не ждать ее выполнения? Я думаю, что это может быть...

26
Что делать, если оценка времени идет не так?

Допустим, вы оценили время рассмотрения дела в 3 дня. На второй день вы заметите, что ситуация растет, и появляются новые сценарии, которые не учитывались при оценке времени. Новое открытие приводит к дополнительным 2 дням (всего 5 дней). Это типичная проблема, с которой вы рано или поздно...

26
С точки зрения обслуживания, считается ли «еще какое-то время» без промежуточных скобок безопасным?

Есть else whileбез промежуточных брекеты считаются «безопасными» обслуживание мудрым? Написание if-elseкода без скобок, как показано ниже ... if (blah) foo(); else bar(); ... несет в себе риск, потому что отсутствие фигурных скобок делает очень легким непреднамеренное изменение значения кода. Тем...

26
Миграция данных - опасно или важно?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Отдел разработки программного обеспечения моей компании сталкивается с проблемой того, что перенос данных считается потенциально опасным, особенно для...

26
где именно должна быть размещена бизнес-логика Python в Django

Я только начал изучать Django / Python / Web Development. Эта проблема беспокоила меня уже некоторое время. Я создаю приложение с несколькими шаблонами в Django. У меня есть файл views.py, который в основном просто отображает ответы на соответствующие шаблоны, и у меня есть файл models.py, в...

26
Почему нужно отключить предупреждения компилятора?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Этот ответ и добавленные к нему комментарии показывают способ отключения нескольких предупреждений компилятора с помощью #pragmaдиректив. Зачем кому-то...

26
Где должны проводиться проверки разрешений пользователей в MVC и кем?

Должны ли пользовательские проверки прав доступа выполняться в модели или контроллере? И кто должен обрабатывать проверки разрешений, объект User или какой-либо помощник UserManagement? Где это должно произойти? Проверка в контроллере: class MyController { void performSomeAction() { if...

26
Насколько отличается сборка мусора на чистых языках?

На чистом языке, таком как Haskell, все данные неизменны, и никакие существующие структуры данных не могут быть изменены каким-либо образом. Кроме того, многие алгоритмы неизменяемых данных и шаблоны функционального программирования по своей природе генерируют большое количество мусора (например,...

26
Как обеспечить взаимодействие двух разных программ с двумя разными языками?

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

26
Как сделать документацию для кода и почему программное обеспечение (часто) плохо документировано?

Есть несколько хороших примеров хорошо документированного кода, такого как Java API. Но большая часть кода в публичных проектах, таких как git и внутренние проекты компаний, плохо документирована и не очень удобна для новичков. На всех этапах разработки программного обеспечения мне приходилось...