Информация об изменениях

Сообщение Re: С чего начать переход на .NET Core от 07.10.2019 11:10

Изменено 07.10.2019 11:48 Hardballer

Re: С чего начать переход на .NET Core
Здравствуйте, Министр Промышленности, Вы писали:

МП>есть внушительный опыт .NET разработки (практически с момента его первого релиза)

МП>но .NET Core до сих пор не зацепил
МП>а чувствую, что надо эту работу найти уже с ним

МП>соответственно за неделю-2-три надо полностью прокачать его

МП>как это делать?
МП>есть известные грамотные пособия?
МП>на русском?
Специальных пособий не видел.
Никаких шевелений ИМХО не нужно делать особенных.
Просто нужно понять-что вся платформенная специфика(вроде IOCP и GUI)-в .NET Core отсохла по очевидным причинам.
И все.
Я портировал прорву (сотни и сотни тысяч строк) нетривиального кода на .NET Core c .NET Framework, в том числе unsafe, из проблем было несколько иное поведение сетевого стека в ряде нетривиальных случаев, с которыми пришлось разбираться.
И под лупой необходимо изучить все ручки GC, которые вывели наружу в .NET Core и которые могут быть очень полезны в некоторых задачах, а также пулинг массивов и все прочие приятности, что имеют место в .NET Core "из коробки".
Чуть не забыл, одна из внезапных засад на .NET Core-это очень медленная генерация GUID. Было несколько итераций починки производительности командой разработчиков, но все равно, на Linux'е генерация GUIDов более тяжелая операция, чем на Windows.
Я на этом встрял, у меня order flow миллионы ордеров в секунду, и как оказалось-ID в виде Guid под Linux'ом была откровенно плохая затея, пришлось извращаться.
Re: С чего начать переход на .NET Core
Здравствуйте, Министр Промышленности, Вы писали:

МП>есть внушительный опыт .NET разработки (практически с момента его первого релиза)

МП>но .NET Core до сих пор не зацепил
МП>а чувствую, что надо эту работу найти уже с ним

МП>соответственно за неделю-2-три надо полностью прокачать его

МП>как это делать?
МП>есть известные грамотные пособия?
МП>на русском?
Специальных пособий не видел.
Никаких шевелений ИМХО не нужно делать особенных.
Просто нужно понять-что вся платформенная специфика(вроде IOCP и GUI)-в .NET Core отсохла по очевидным причинам.
И все.
Я портировал прорву (сотни и сотни тысяч строк) нетривиального кода на .NET Core c .NET Framework, в том числе unsafe, из проблем было несколько иное поведение сетевого стека в ряде нетривиальных случаев, с которыми пришлось разбираться.
И под лупой необходимо изучить все ручки GC, которые вывели наружу в .NET Core и которые могут быть очень полезны в некоторых задачах, а также пулинг массивов и все прочие приятности, что имеют место в .NET Core "из коробки".
Чуть не забыл, одна из внезапных засад на .NET Core-это очень медленная генерация GUID. Было несколько итераций починки производительности командой разработчиков, но все равно, на Linux'е генерация GUIDов более тяжелая операция, чем на Windows(edited: устаревшая инфа, все таки пришли к тождественности результатов спустя 3+ года )
Я на этом встрял, у меня order flow миллионы ордеров в секунду, и как оказалось-ID в виде Guid под Linux'ом была откровенно плохая затея, пришлось извращаться.