Pull to refresh
44
0
Dmitry @RPG18

Golang Developer

Send message
Последний раз когда использовал рекурсию, решал NP задачку на графах и не рекурсивного алгоритма с ходу не придумал.
Под рабами подразумевал ядра/сервера. Если правильно подсчитал, то в вашей задаче имели порядка 3.6Gb данных каждый час, последовательная обработка 1k сообщений на одном ядре занимает порядка 2-ух часов.

Решение IBM вполне себе оправдано, где найдешь на рынке труда 10 000 готовых сотрудников?
Как понимаю рабы никуда не делись, мы просто задали им другой алгоритм работы?
Все что касается IDE это все очень субъективно. Лично я GUI делаю в Eclipse CDT + Qt Designer, и лично для меня это намного удобней чем QtCreator. И знаю людей, для которых это удобно делать в Vim, Emacs, NetBeans, KDevelop, Code::Blocks.
Так, к примеру, работает утилита MIB Walk в составе Engineer's Toolset от SolarWinds, которая ту же «киску» с моего компьютера опрашивает 3,5 – 4 минуты

Из своего опыта разработчика систем мониторинга чую SNMPv1.
SNMPv1 появился в 1988 году, SNMPv2 в 1993. Устройств без SNMPv2/3 еще надо поискать.
Начиная с v2 появился GetBulkRequest(замена GetNext), с которым snmpbulkwalk работает на порядок быстрее snmpwalk.
У Erlang нет мегасуперпупер коммерческой IDE, и это как то не очень мешает ему развиваться.
Для этих целей есть QAbstractProxyModel.
В инженерных задачах обычно QAbstractItemModel является обёрткой вокруг структур данных/объектов из предметной области.
Если прокси-модель знает об этих структурах данных, то можно обойтись без перегонки данных через QVariant.
Если производительности не хватает, то можно в прокси-модель засунуть OpenMP
Впечатляет, но в Qt есть еще один фреймворк это QtQuick. Я стараюсь использовать QtQuick везде, где нужно сильно кастомезированное UI.
Может таблица, может идентификатор узла в списка или дерева.
А может это не идентификатор указывающий на ресурс, а некий объект. Принцип инкапсуляции и слоистая архитектура скрывают от меня эту информацию.
Из подобных примеров у нас есть std::lock_guard, который так же работает в RAII-стиле(забавно, там так же в пример приводят lock_guard).
Рано или поздно мы заметим, что большинство классов-обёрток незначительно отличаются друг от друга: как правило единственное отличие – это функция освобождения ресурса. Подобный подход провоцирует подверженное ошибкам повторное использование кода в стиле «копировать/вставить».

Логично параметризовать эту функцию, зачем копипастить?
С другой стороны, мы видим здесь отличную возможность для обобщения, которая подводит нас к следующему варианту – использованию умных указателей.

Что в имени тебе моем?(с) Пушкин А.С.
Берем сущность которая не является указателем, не имеет ничего с ним общего, и обобщаем до указателя. За что и поплатились:
Причина ошибки в приведённом примере – нарушение концепции NullablePointer типом Handle. Вкратце, модель концепции NullablePointer, должна являться объектом, поддерживающим семантику указателей, и в частности допускающим сравнение с nullptr. Наш Handle, определённый как синоним для int, не является таким объектом. Как следствие, мы не можем использовать std::unique_ptr, для вещей наподобие файловых дескрипторов POSIX или ресурсов OpenGL.

«создаем себе трудности и успешно их преодолеем»
Получили архитектурную ошибку.

Effective Modern C++ уже куплено каким-то конкурентом, что из этого получится и когда — загадка.

Есть слух, что купил ДМК Пресс
Аннотация к «Effective Modern C++» Скотта Майерса
Тогда пожалуйста правильно используйте термины. Понятие качество в том виде в каком представлено в вики можно увидеть у Роберта Гласса в «software conflict 2.0 The art and science of software engineering» и у Стива Макконнелла в «Code Complete».

Да, тестирование дает оценку надежности системы, но обеспечение качества это слишком объемная задача, что бы ее можно было выполнить исключительно путем тестирования.
Смотрю я на preview edition и удивляюсь, как это Сэм пропустил эру CORBA.
Список показателей качества большой: понятность; полнота; краткость; портируемость; согласованность; сопровождаемость; тестируемость; удобство использования; надёжность; cтруктурированность; эффективность; безопасность. Не занимаемся ли мы изначально самообманом, считая что автоматезированное тестирование как-то повлияют на показатели качества?
По второму пункту вопрос: как тесты влияют на показатели качества?
Если мы говорим про высокую производительность, то хотелось бы увидеть сравнительные тесты производительности вашей реализации и std::unordered_map
К сожалению порядок бывает важен при десериализации, поэтому наверное никто и не прикрутил к Boost.Serialization поддержку Json.
Все так, но я видел людей, которые хотели чтобы в ситуации:
{
  "bbb":"foo",
  "aaa":"bar"
}

обход был бы в порядке: bbb, aaa, а не в лексикографическом.
Когда я беру слово, оно означает то, что я хочу, не больше и не меньше© Шалтай-болтай.
Парсер есть, но не всегда он удобен. Разработчики Boost.PropertyTree пошли на допущение:
The property tree dataset is not typed, and does not support arrays as such.

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity