Nikolay
return items .Any(x => x.Key.StartsWith(prefix, options.StringComparison) && x.Value != null); Можно это как-то оптимизировать? 🤔
Nikolay
А то сильно медленно работает
Hog
медленно относительно чего?
Hog
и что в опциях?
Nikolay
StringComparison.Ordinal
Nikolay
Медленно относительно с ним и без него
Nikolay
С ним 140 мс, без него 80 мс
Nikolay
Можно наверное закэшировать ключи, и проверять value второй раз уже чисто по ключам
Hog
ничо не даст
Hog
мож там не дикшонари должен быть? :)
Vladislav
С ним 140 мс, без него 80 мс
Он культуру смотрит поэтому и тормозит
Dr. Friedrich
поиск по System.Type даёт 6К результатов
Лучше всего поиск по файлам делай. Хоткей t на гитхабе + пишешь в поиск Type.cs. Конкретно для System.Type может не сработать (потому что этот тип вообще-то по большей части в C++-части реализован), но для более обычных типов работает прекрасно.
Dr. Friedrich
return items .Any(x => x.Key.StartsWith(prefix, options.StringComparison) && x.Value != null); Можно это как-то оптимизировать? 🤔
Ну, если хочется микрооптимизировать, то навскидку я бы попробовал поставить проверку на Value != null первой (выглядит намного проще — мб отсечёт побольше дичи, чтоб не пришлось вызывать дорогой StartsWith), а ещё можно развернуть Any в foreach и заинлайнить лямбду. То, что ты там ссылаешься на какой-то options в замыкании, тоже делу мало помогает — возможно, options.StringComparison тоже один раз перед циклом вычислить.
Dr. Friedrich
Он культуру смотрит поэтому и тормозит
Разве Ordinal смотрит культуру?
Dr. Friedrich
Вроде же он инвариантный?
Nikolay
Разве Ordinal смотрит культуру?
Он там какой-то сильно ограниченный
Nikolay
Культуру не смотрит
Vladislav
Разве Ordinal смотрит культуру?
видимо нет, но там есть такой прикол var s1 = "Strasse"; var s2 = "Straße"; s1.Equals(s2, StringComparison.Ordinal); //false
Dr. Friedrich
Но ведь это правильно.
Nikolay
Он там какой-то сильно ограниченный
Кстати, от First избавился, сделал компаратор, и компарю сам Dictionary :)
Nikolay
А потом ключ у меня и есть first
Roman
есть какой-то best practice for DB access для фшарпа? От тайп провайдеров ощущения примерно как от ЕФ — на очень простых сценариях круто, на сложных геморра больше, чем профита. Rezoom.SQL выглядит неплохо, но его под доткор не портировали. Мб я что-то делаю не так.
Ayrat
есть какой-то best practice for DB access для фшарпа? От тайп провайдеров ощущения примерно как от ЕФ — на очень простых сценариях круто, на сложных геморра больше, чем профита. Rezoom.SQL выглядит неплохо, но его под доткор не портировали. Мб я что-то делаю не так.
Я не видел, но по своему опыту рекомендую или просто втупую портировать C# код на F# (Dapper, тот же EF, Linq2Db) Или нарисовать себе функциональный фасад поверх своего стоража (я так для себя сделал для ажурной даталужи и ажурных таблиц)
Ayrat
а https://github.com/vivainio/SqlFrags пробовал?
Нет, я с SQL давно дел не имел
Ayrat
когда последний раз имел - юзал dapper
Roman
понял, спасибос
Romɑn
Жуть какая :D
Ayrat
Я спросил тестовое задание на вакансию в общем чате. Напомню, в вакансии написано что стартап зашивается и надо срочно написать клиент для mtproto сервера Тестовое задание - написать клиент для mtproto сервера Так что поаккуратнее там :)
Roman
под гуглоклауд в докере с кубернетисом?)
Ayrat
под гуглоклауд в докере с кубернетисом?)
Ну почти))) Я хотел сказать что похоже на попытку набрать экспертизы и кусков кода от знающих людей
Ayrat
Ну и МОЖЕТ ДАЖЕ нанять кого-то одного
Ayrat
а может и нет. А может они даже одного не найдут кто напишет тестовое. Я мимо прошёл
Анна
а тестовую зарплату дают?
Ayrat
Из слов HR я бы сделал вывод что нет: Также во время выполнения "тестового" тоже готов общаться, консультировать, часто даже не до конца задачу доделывают, уже понятно становится по ходу во взаимодействии. Это прошу иметь в виду, тех кто яро против что-то писать заранее, понимаю, что два конкурирующих подхода на рынке к ТЗ и есть негативно настроенные
Ayrat
Но если за такое браться, надо обговорить оплату, учитывая что ты фактически делаешь работу их И кстати в РФ верховнвый суд разъяснил что по ТК, тестовое задание - признак трудовых отношений
Bonart
Угу, за такое "тестовое" почасовка положена честно говоря
Ayrat
Угу, за такое "тестовое" почасовка положена честно говоря
Ну да, учитывая что возможны два варианта, 1) написал "тестовое" и тебя взяли. Продолжаешь работать над "тестовым". Получается что в начале ты поработал (именно что поработал и продал свои идеи) бесплатно 2) написал "тестовое" и тебя прокатили. Но ты не знаешь как будут использовать твой код :D
Bonart
Я кстати без проблем делаю тестовые, но здесь тестовое=продакшен
Ayrat
Надо внедрять дефекты!
Да сразу бекдоры! Они ж криптостартап!
Hog
Да сразу бекдоры! Они ж криптостартап!
сейчас софтверные бэкдоры, говорят, не в моде
Ayrat
Эт да, софт уже многий заопенсорсили, не побекдоришь
Hog
Мне кажется, что "почасовка за тестовое"... это их области ненаучной фантастики
Hog
320 + удалёнка + F# - да там очередь должна быть!
Hog
я бы первым побежал
Ayrat
Ну я поинтересовался и мне показалось подозрительным.
Ayrat
подозрительным в каком плане?
тестовое подозрительно похожее на прод плюс это криптостартап (слышал часто как они лопались и кидали работников) плюс уж больно хорошие условия - белая зп, удалёнка, релокация
Ayrat
последнее странно, но 320к для Москвы - очень много. Думается что начнут оформлять трудовой договор и попросят выйти на работу) Ну и далее что-то подозрительное произойдёт. хз
Ayrat
поматросят и бросят?
я не знаю. Я говорю что мне это всё кажется подозрительным) Я поступаю как самурай. Не попадаю в ситуации не достойные самурая!
Hog
зато потом можно смело говорить об опыте F# в проде
Hog
а то потом - только харакири? :)))) сепукку или как там это у них называется
Ayrat
а то потом - только харакири? :)))) сепукку или как там это у них называется
Иногда самарую приходится постыдно удалиться с места позора!
Hog
значит - самурай был не истинным
Hog
если у него есть сайд-эффекты
Анна
Fable же есть :)
тогда на перле
Hog
тогда на перле
Ну не знай - отличный же язык :)
Анна
тогда не знаю
Анна
Чот я устала
Анна
Hog
от жизни?
Анна
да какой-то трешак на работе завёлся
Анна
Сам погибай, а товарища KPI
Анна
Крылатый
Утра, котятки!
Крылатый
Как дела?
Hog
Bonart
тестовое подозрительно похожее на прод плюс это криптостартап (слышал часто как они лопались и кидали работников) плюс уж больно хорошие условия - белая зп, удалёнка, релокация
Так крипта с небелой оплатой - подозрительно в квадрате. Здесь же все в принципе нормально, кроме тестового с ушами продакшена.