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

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

3
Мой алгоритм, который извлекает самый большой ящик, который может быть сделан из меньших ящиков, слишком медленный
Представьте себе мир, основанный на кубах (например, Minecraft, Trove или Cube World), где все состоит из кубов одинакового размера, и все кубы одного типа . Цель состоит в том, чтобы представить мир с наименьшим количеством прямоугольных прямоугольников (объединяя кубы, но сохраняя выпуклую форму (или прямоугольную форму)). Мой алгоритм преуспевает в …

1
Разработка хранилища Key / Value с портированием на современный C ++
Я разрабатываю сервер базы данных, похожий на Cassandra. Разработка была начата в C, но все стало очень сложно без классов. В настоящее время я перенес все на C ++ 11, но я все еще изучаю "современный" C ++ и у меня есть сомнения по поводу многих вещей. База данных будет …

1
Условный CSS на основе класса внешнего модификатора - хорошая практика?
Введение / история вопроса: компоненты CSS Для относительно большого сайта мы работаем с SASS и пытаемся управлять CSS в компонентах. Основная идея компонентов заключается в том, что компонент должен выглядеть одинаково везде, независимо от элементов контейнера, расположенных дальше в DOM. Итак, мы хотим избежать таких вещей (SASS): // User picture …
9 css  component 

1
Почему в Apache есть два отдельных инструмента для управления сборкой и зависимостями?
Apache имеет два отдельных инструмента: Apache Maven Apache Ant + Apache Ivy Кажется, они оба занимают одну и ту же нишу. У меня есть два вопроса: Каковы основные моменты основных различий между этими двумя инструментами? Я уверен, что можно было бы написать очень длинную статью о различиях между ними, я …

6
Как уменьшить переключатель в операторе switch?
Поэтому я делаю метод для создания линии приветствия на основе двух человек из базы данных. Существует четыре параметра: два имени ( name1и name2) и два пола ( genderи gender2). Для каждой гендерной комбинации у меня есть разные результаты. Например: если пол 1 M(мужчина) и пол 2 также M, результат должен …

4
rand () снова дает те же числа для небольшого диапазона
Я пытаюсь сделать что-то вроде игры, в которой у меня есть сетка 20х20, и я показываю игрока (P), цель (T) и трех врагов (X). Все они имеют координаты X и Y, которые назначаются с помощью rand(). Проблема в том, что если я пытаюсь получить больше очков в игре (пополнение для …
9 c++  random 

3
Зачем Python нужен и компилятор, и интерпретатор?
Я могу понять тот факт, что Java нуждается как в компиляторе, так и в интерпретаторе. Он компилирует исходный код в байт-код, а затем виртуальная машина (в Windows, в Linux, на Android и т. Д.) Преобразует этот байт-код в машинный код для текущей архитектуры. Но зачем Python нужен и компилятор, и …

2
Нужно ли проверять использование всего модуля или только аргументы открытых методов?
Я слышал, что рекомендуется проверять аргументы открытых методов: Стоит ли проверять на ноль, если он не ожидает ноль? Должен ли метод проверять свои параметры? MSDN - CA1062: проверка аргументов общедоступных методов (у меня есть .NET фон, но вопрос не специфичен для C #) Мотивация понятна. Если модуль будет использоваться неправильно, …

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

1
Как unums может эмулировать отрицательный ноль IEEE?
В настоящее время я читаю «Конец ошибки - Unum Computing» Джона Густафсона ( Youtube ). Что я до сих пор не уверен, так это то, как дела, обработанные в IEEE с отрицательным знаком нуля , обрабатываются с помощью unums. Таким образом, прежде всего, unums позволяют представлять определенные точные значения (аналогично …


1
Безопасно ли использовать шрифты Microsoft, такие как Impact, в проектах с открытым исходным кодом?
Я сделал проект с открытым исходным кодом, который требует использования шрифта Impact.ttf от Microsoft. Я оглянулся, но не смог найти конкретную лицензию для проектов MIT. Конфликтуют ли шрифты Microsoft (например, Impact.ttf) с лицензией MIT? Если да, существуют ли разные лицензии с открытым исходным кодом, которые могут принимать такие шрифты?

3
REST ограничен только оптимистичным управлением параллелизмом?
контекст Из-за отсутствия сохранения состояния архитектурного стиля REST, когда каждый запрос стоит отдельно, ведущий сервер никогда не хранит никакой информации о клиенте. Таким образом, пессимистическое управление параллелизмом не подходит, потому что для этого требуется хранилище сервера, клиент которого получает блокировку ресурса. Затем используется оптимистичный контроль параллелизма с помощью Etagзаголовка. (кстати, …

2
Каким образом виртуальная машина Hip Hop (HHVM) теоретически повышает производительность среды выполнения PHP?
С высокого уровня, как работает Facebook, et. Вы используете для повышения производительности PHP с виртуальной машиной хип-хоп? Чем он отличается от выполнения кода с использованием традиционного движка Zend? Это потому, что типы опционально определяются с помощью хака, который учитывает методы предварительной оптимизации? Мое любопытство возникло после прочтения этой статьи, принятие …

8
Что мешает C быть скомпилированным / интерпретированным / JIT'ом?
Java часто хвалят за ее удивительную мобильность, которая, как я полагаю, обусловлена ​​JVM. Мой вопрос заключается в том, что мешает C быть скомпилированным / интерпретированным / JIT'ом ..., если это так, C также может быть записан один раз и заставить его работать на любом устройстве, которое у вас есть. но …

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