Archive for 'Программирование'

Вести с полей

Начало недели весьма «удачное». Утром обновил исходники EFCore и обнаружил что они опять сломали мой код. А я планировал его сегодня немного сдвинуть вперед… По этому поводу вспомнилась классика:

Win10 1709 vs Win10 1809

Вчера, в международный день дурака, я нажал «проверить обновления» и моя Win10 1709 (пропатченная в марте 2019 года) обновилась до сборки 1809 (2019-3). Потом на неё накатилось еще одно обновление, потребовавшее перезагрузку компьютера. За ночь пробежали нагрузочные тесты и теперь можно «оценить» последствия обновления. Было: Стало: KERNEL-time почти на два часа увеличился. С «06:09:26» до […]

IBProvider build 31154

Выполнена реорганизация кода. Суть реорганизации — перемещение плюсовых конструкций в общее пространство имен (ibp). До этого код был сгруппирован в несколько независимых глобальных пространств. Я даже вспомнил причину по которой появился этот небольшой бардак с пространств имен — компилятор от BCB5, на котором велась разработка до 2008 года, хреново обрабатывал вложенные namespace. Поэтому приходилось извращаться. […]

Правила разработки программного обеспечения

Обнаружил у себя в книжном шкафу сабжевую книжку. Не помню когда я её купил. Перечитал по диагонали. Нашел внутри чек — июль 2007-го. Автор — мужик, руководивший разработкой Visual C++ 1.0. Описаны три стадии разработки (коробочного) ПО — начало, процесс, выпуск. Тезисы Правила 12. Выпускайте обновления (новые версии) так часто, как только это возможно. 17. […]

Строчка кода …

… которая будет очень долго вызывать у меня тоску по времени, бездарно потраченному на глупые решения:

VS2010 и VS2012

Уже очень хочется от них избавиться. И начать писать по-настоящему интересные программы с «enum class» и «variadic templates».

Мысль …

… пришла в больную голову. ОРЗ или что-то вроде того, блин. Я тут как-то тут писал что в сетевых пакетах (гоняемых между сервером и клиентом) первым делом нужно указывать их длину. Ну, чтобы его можно было целиком выбирать пакет из потока без анализа его данных. Сейчас этого (в FB) нет, и как результат плохо работает […]

Вести с полей

На сайт загружена новая тестовая сборка IBProvider — v3.55.0.29115. В неё, в том числе, вошли результаты борьбы с предупреждениями PVS-Studio. 95% это замена assert на assert_hint. Из этих 95% большая часть — в моей переработанной версии libtommath, которую перед тем как затащить в проект пришлось перетряхнуть и нафаршировать ассертами. Для остальных 5% пришлось напрячься.

assert_hint

Созерцая предупреждение PVS-Studio для код вида: … задумался. У меня таких декларативных отладочных проверок — даже не вагон и маленькая тележка. Тут их эшелон(ы). И наверное уже пора добавить в свою в инструментальную библиотеку макрос assert_hint.

Пешите тесты

С добрым утром. В процессе обкладывания тестами нового кода IBProvider, обнаружил интересную проблему у плюсового компилятора VS2017 (v15.9.4): На выходе видим: Хотя ожидается: -1i16 — это же вроде short, а не int. Вот так вот расслабишься, а оно тебе ключом по голове.

« Older Entries   Recent Entries »