Что там в .NET? – Telegram
Что там в .NET?
483 subscribers
37 photos
79 links
Рассказываем, что происходит в мире .NET.

С вопросами можно пинать @nevoroman
Download Telegram
А если серьезно, мне понравилась вот такая маленькая деталь.

Обратите внимание на ноут справа — это Макбук! Макбук на презентации от Microsoft!

Такой, приятный символический жест.
А на .NET Conf тем временем пошел доклад о C# 10.

Пока ничего особенного, показывают фичи — например, использование with с анонимными типами
А теперь рассказывают про Global Usings и Implicit Usings.

Первая фича позволяет унести все общие using в один большой файл, вторая — и вовсе убрать многие Using, они будут выводиться автоматически.
Итого, что показали в демо C# 10?

- Объявление namespace без скобок и лишней вложенности
- Global и implicit using
- Record structures, улучшения для структур и более широкий функционал with
- Вывод типов для лямбд
- Немного улучшений для интерполяции строк

Как и ожидалось — ничего ломающего мозг, мелкий сахар и упрощения. Пожалуй, оно и к лучшему, мощные концептуальные изменения сейчас только излишне усложнили бы язык
А вот список изменений в Blazor
Про сам доклад пока нечего сказать, в основном показывают разнообразные компоненты Blazor. Их действительно немало и выглядят они удобно, но рассказывать не о чем.
Ну и важное о перфомансе. Большой размер сборки WebAssembly это одна из главных проблем и MS над ней работает
Доклад про MAUI не взрывал мозг, но показал перспективный инструмент.

По ощущениям — сейчас частей функциональности еще не хватает, но простые приложения уже можно и разрабатывать, и запускать на разных платформах. В любом случае, до официального релиза в прод MAUI лучше не пихать.

Код напоминает смесь WPF с Xamarin. Из WPF переехал общий подход к разработке, из Xamarin фичи и компоненты. Словом, все привычное для .NET разработчиков, код выглядит самоочевидно.

Фичи для разработки с MAUI доступны в preview версии VS.
Но повторю еще раз — пока это достаточно сырой инструмент, не советую использовать его в чем-то серьезнее pet-проектов.

Даже ребята из Microsoft во время ответов на вопросы подчеркивают, что MAUI пока не готов к продакшену.
А в эфире технические неполадки — начался доклад про F# и к нему должен был подключиться (видимо, удаленно) Don Syme, создатель языка. Но что-то не подключается.

Тем не менее, доклад идет и нам показывают изменения, делающие язык дружелюбнее для новичка.
Что в итоге по демо нового F#

- Много упрощений, делающих язык дружелюбнее для новичка
- Перфомансные улучшения
- Нормальная отладка пайплайнов
- Всякие улучшения-упрощения для task

Улучшения вроде бы небольшие, но по факту, F# получил даже больший буст, чем C#. Очень радует, что язык развивается и становится проще для новых разработчиков — именно порог входа сейчас останавливает многих от изучения F#.
Примеры проектов, поддерживающих Hot Reload
А вот примеры ситуаций, когда Hot Reload работать не будет
А вот улучшения (очень приличные) в производительности тестовых инструментов
А теперь рассказывают о поддержке разного «удаленного» тестирования — прогона тестов в приложениях, которые запущены в контейнерах, WSL или к которым ты подключаешься через SSH. Выглядит неплохо.
О, оказывается Microsoft портировали Playwright — классную библиотеку для end-to-end тестирования. Советую посмотреть и потестить.

https://github.com/microsoft/playwright-dotnet
В .NET добавили команду dotnet format, которая автоматически форматирует код. Такая команда может пригодиться как часть пайплайна — например, чтобы автоматически приводить к некоторому стилю весь код, который коммитится в репозиторий.

https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-format
А еще на трансляции рассказывают о возможностях расширения автодополнения с помощью Roslyn. То есть вы можете написать специальный провайдер, который будет давать дополнительные опции для автодополнения. Вот статья с примером разработки такого провайдера

https://www.strathweb.com/2018/12/using-roslyn-c-completion-service-programmatically/