Вверх ↑
Ответов: 4612
Рейтинг: 746
#1: 2016-10-31 15:18:01 ЛС | профиль | цитата
Оптимизируем StreamConvertor

Предлагаю:
1) Убрать точки Position (за бессмысленностью) и CheckSum (за ненадобностью)
2) Заменить процедуры конвертации в/из HEX на более быстрые (Str2Hex в 3 раза, Hex2Str в 2 раза, тест в архиве)
3) Благодаря пункту 1 вынести процедуры Hex2Str, Str2Hex из класса в interface - это позволит использовать их в других компонентах (сейчас для работы с HEX таскаю весь код "с собой"). Добавленные процедуры (Hex2Bin, Bin2Hex) тоже объявлены в interface с той же целью.
4) По-умолчанию, в модифицированном StreamConvertor новая Hex2Str работает аналогично старой. Но добавлена ещё одна Hex2Str2 (и Hex2Bin2), которая допускает наличие любых символов, которые в процессе игнорируются. Позволяет конвертировать HEX с разделителями без предварительной замены.
карма: 26

4
Голосовали:Tad, andrestudio, flint2, Konst