Re[2]: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 19:35
Оценка:
Здравствуйте, Lexey, Вы писали:

L>Хочу (к уже ранее написанному):

L>1) Алгоритмы LowerBound/UpperBound на массивах и list'ах.
L>2) Коллекцию Disjoint Sets.

Неплохо бы конкретизировать о чем речь.

L>3) Хелпер для дампа куска массива байтов в строку (что-то типа .ToHexString(this byte[] array, int offset, int length)) — бывает полезно для отладочных дампов всякого протокольного обмена.


https://msdn.microsoft.com/en-us/library/3a733s97(v=vs.110).aspx не подходит?
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[3]: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 19:35
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>+ std::equal_range,


Это типа .Where(i => i.Equals(value))? Такое где то часто нужно, что к нему шоткат надо делать?
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[4]: Проект утилитной библиотечки
От: Evgeny.Panasyuk Россия  
Дата: 16.03.16 19:49
Оценка:
Здравствуйте, AndrewVK, Вы писали:

EP>>+ std::equal_range,

AVK>Это типа .Where(i => i.Equals(value))?

А какая тут сложность? Линейная? У equal_range — логарифмическая, это тот же бинарный поиск.
Re[8]: Проект утилитной библиотечки
От: IT Россия linq2db.com
Дата: 16.03.16 19:57
Оценка: +1
Здравствуйте, AndrewVK, Вы писали:

AVK>Мне, как человеку, испорченному решарпером хватает его подсказок, чтобы держать проект более менее чистым.


В данном случае момент чисто организационный. Ты как человек, испорченный решарпером, станешь гоняться за каждым разработчиком и умолять его убрать ворнинги? А здесь он сам нарвётся на проблему и должен будет её решить. У меня опыт примерно такой же, как и у уважаемого Sinix, стоит немного ослабить и понеслась.
Если нам не помогут, то мы тоже никого не пощадим.
Re[6]: Проект утилитной библиотечки
От: Sinix  
Дата: 16.03.16 19:57
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Не, вот два issue трекера точно заводить не будем, концов не соберешь. Достаточно гитхабовского. Ни или местного, если по каким то причинам гитхаб не устраивает. Просто не надо смешивать обсуждения и трекер, это на гитхабе оно смешано ввиду отсутствия там форума.


Ну в общем нужно волевое решение про:

1. Куда заводить тикеты.
2. Где обсуждать / голосовать фичи
3. Документашка.

и про язык для каждого из трёх пунктов.

Иначе до бесконечности можно телиться.
Re: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 20:04
Оценка:
Описание-wiki проекта на русском для разработчиков — wiki.codejam.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[3]: Проект утилитной библиотечки
От: Lexey Россия  
Дата: 16.03.16 20:07
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Здравствуйте, Lexey, Вы писали:


L>>Хочу (к уже ранее написанному):

L>>1) Алгоритмы LowerBound/UpperBound на массивах и list'ах.
L>>2) Коллекцию Disjoint Sets.

AVK>Неплохо бы конкретизировать о чем речь.

1 — бинарный поиск нижней и верхней грани отсортированного диапазона (http://en.cppreference.com/w/cpp/algorithm/lower_bound http://en.cppreference.com/w/cpp/algorithm/upper_bound)
2 — https://en.wikipedia.org/wiki/Disjoint-set_data_structure, используется для разбиении множеств на непересекающиеся подмножества.

L>>3) Хелпер для дампа куска массива байтов в строку (что-то типа .ToHexString(this byte[] array, int offset, int length)) — бывает полезно для отладочных дампов всякого протокольного обмена.


AVK>https://msdn.microsoft.com/en-us/library/3a733s97(v=vs.110).aspx не подходит?


Нет, хочется еще иметь возможность форматировать блоками по N (16, например) байт, добавляя впереди смещение. Типа такого:
0000 AA BB ...........
0010 CC DD ...........

Плюс, прибитый гвоздями разделитель "-" не очень радует.
"Будь достоин победы" (c) 8th Wizard's rule.
Re[4]: Проект утилитной библиотечки
От: Lexey Россия  
Дата: 16.03.16 20:13
Оценка: +1
Здравствуйте, AndrewVK, Вы писали:

AVK>Здравствуйте, Evgeny.Panasyuk, Вы писали:


EP>>+ std::equal_range,


AVK>Это типа .Where(i => i.Equals(value))? Такое где то часто нужно, что к нему шоткат надо делать?


Типа того, но дипазон поиска отсортирован, соответственно, на выходе будет просто поддиапазон, и сложность логарифмическая, а не линейная.
Результат эквивалентен паре результов lower_bound и upper_bound.
"Будь достоин победы" (c) 8th Wizard's rule.
Отредактировано 16.03.2016 20:17 Lexey . Предыдущая версия .
Re[9]: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 20:13
Оценка:
Здравствуйте, IT, Вы писали:

AVK>>Мне, как человеку, испорченному решарпером хватает его подсказок, чтобы держать проект более менее чистым.

IT>В данном случае момент чисто организационный. Ты как человек, испорченный решарпером, станешь гоняться за каждым разработчиком и умолять его убрать ворнинги?

Я надеюсь на то что основные разработчики достаточно дисциплинированы, чтобы поддерживать проект в resharper clean состоянии. Не люблю драконовских мер без крайней необходимости.

IT> А здесь он сам нарвётся на проблему и должен будет её решить. У меня опыт примерно такой же, как и у уважаемого Sinix, стоит немного ослабить и понеслась.


Предлагаю отложить до появления реальных проблем.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[7]: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 20:13
Оценка: +1
Здравствуйте, Sinix, Вы писали:

S>1. Куда заводить тикеты.


github на английском

S>2. Где обсуждать / голосовать фичи


github на английском. Если совсем уж проблемы с английским — можно в форум в надежде что кто то заветет issue на гитхабе. Примерно как сейчас с тем же решарпером — основной трекер англоязычный, а здесь русскоязычный форум.

S>3. Документашка.


Для разработчиков самой библиотеки — пока на русском в местной вике. Для пользователей — md в проекте на английском. Проект/русская версия на русском в местной вике.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[12]: Проект утилитной библиотечки
От: Sinix  
Дата: 16.03.16 20:14
Оценка:
Здравствуйте, IT, Вы писали:


IT>Против xUnit главным образом R# и по опыту его использования всё у них там как-то из стороны в сторону.


Да есть интеграция. На самом деле оба проекта последние два года активно тянут друг у друга фичи, т.е. выбор, скорее про вкус фломастеров. Лично мне xUnit показался попроще, без хитровымученных сonstraint assertions, но эт опять-таки вопрос вкуса. Любой из вариантов сойдёт.
Re[4]: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 20:14
Оценка:
Здравствуйте, Lexey, Вы писали:

L>Нет, хочется еще иметь возможность форматировать блоками по N (16, например) байт, добавляя впереди смещение. Типа такого:


Понятно. По опыту — нужен тогда заодно и комплиментарный парсер.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[13]: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 20:16
Оценка:
Здравствуйте, Sinix, Вы писали:

IT>>Против xUnit главным образом R# и по опыту его использования всё у них там как-то из стороны в сторону.

S>Да есть интеграция.

Не, плагины к решарперу это уже точно перебор. nUnit вполне зрелая и развитая библиотека, вряд ли xUnit принципиально лучше.

S> На самом деле оба проекта последние два года активно тянут друг у друга фичи, т.е. выбор, скорее про вкус фломастеров.


Ну вот о том и речь.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[7]: Проект утилитной библиотечки
От: Evgeny.Panasyuk Россия  
Дата: 16.03.16 20:22
Оценка:
Здравствуйте, Sinix, Вы писали:

S>2. Где обсуждать / голосовать фичи


Mailing list?
Re[5]: Проект утилитной библиотечки
От: Lexey Россия  
Дата: 16.03.16 20:23
Оценка: +1
Кстати, банальный Swap еще не помешал бы (https://rsdn.ru/forum/dotnet/5385406.hot
Автор: jyuyjiyuijyu
Дата: 06.12.13
).
"Будь достоин победы" (c) 8th Wizard's rule.
Re[5]: Проект утилитной библиотечки
От: Evgeny.Panasyuk Россия  
Дата: 16.03.16 20:36
Оценка: +1
Здравствуйте, Lexey, Вы писали:

AVK>>Это типа .Where(i => i.Equals(value))? Такое где то часто нужно, что к нему шоткат надо делать?

L>Типа того, но дипазон поиска отсортирован, соответственно, на выходе будет просто поддиапазон, и сложность логарифмическая, а не линейная.
L>Результат эквивалентен паре результов lower_bound и upper_bound.

Но обычно быстрее, так как большая часть проб проводится однократно.
Re: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 20:43
Оценка:
CodeJam Roadmap
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[2]: Проект утилитной библиотечки
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 16.03.16 20:59
Оценка:
Здравствуйте, xy012111, Вы писали:

X>Тут ещё можно полезных методов отыскать: [FlashMob] Ваш любимый метод-расширение
Автор: _FRED_
Дата: 13.07.09


Проглядел бегло — либо фигня какая то, либо уже здесь упомянуто
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[7]: Проект утилитной библиотечки
От: Evgeny.Panasyuk Россия  
Дата: 16.03.16 21:09
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>>>Крайне бедная стандартная библиотека,

EP>>И как это меняет сабжевую ситуацию?
AVK>Другие требования. Подобная библиотека будет содержать в разы больше функционала.

Видимо ты подразумеваешь жирные библиотеки типа POCO, QT и т.п.

AVK>Плюс существенно сложнее избавляться от сквозного функционала — одни только разнообразные строки чего стоят.


Точно — это в QT свои строки, в Boost их нет.
В Boost есть конечно универсальные алгоритмы и библиотеки для работы со строками — String Algo, Spirit, etc — но они не прибиты к конкретным типам строк

EP>>>> Тематика сабжа будет уже?

AVK>>>Наоборот шире. Но никаких планов по включению туда специализированных вещей типа того же spirit нет.
EP>>Так уже или шире? Если шире — то в каких направлениях?
AVK>Во всех. Еще раз — идея в том чтобы собрать максимально неспециализированный код, а не очередной всемогутер типа буста или жабьего спринга.

Раскрой мысль про "максимально неспециализированный код", и почему Boost сюда не подходит?

AVK>>>Есть вполне конкретная потребность обобщения вещей, которые используются часто и во многих проектах, т.е. самого универсального кода.

EP>>То есть только универсальный код?
AVK>Да.

Значит всё таки уже чем Boost

AVK>>>Разумеется.

EP>>Ещё хотелось бы знать какие компоненты и как часто используются. Как бы собрать такую статистику? Может косвенным способом через обращение к страницам документации?
AVK>Только голосованиями/сурвеями.

Может прикрутить что-то типа Github'овских звёздочек, но на отдельные компоненты/классы/функции?
Re[2]: Проект утилитной библиотечки
От: Jack128  
Дата: 16.03.16 21:15
Оценка: +2
Здравствуйте, AndrewVK, Вы писали:

using(var tempDir = new TempDir())
{
// пишем временные файлы в tempDir.Directory
} // тут всё удаляется

аналогично TempFile/TempStream
Отредактировано 16.03.2016 21:17 Jack128 . Предыдущая версия .
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.