А теперь рассказывают о поддержке разного «удаленного» тестирования — прогона тестов в приложениях, которые запущены в контейнерах, WSL или к которым ты подключаешься через SSH. Выглядит неплохо.
О, оказывается Microsoft портировали Playwright — классную библиотеку для end-to-end тестирования. Советую посмотреть и потестить.
https://github.com/microsoft/playwright-dotnet
https://github.com/microsoft/playwright-dotnet
GitHub
GitHub - microsoft/playwright-dotnet: .NET version of the Playwright testing and automation library.
.NET version of the Playwright testing and automation library. - microsoft/playwright-dotnet
В .NET добавили команду
https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-format
dotnet format, которая автоматически форматирует код. Такая команда может пригодиться как часть пайплайна — например, чтобы автоматически приводить к некоторому стилю весь код, который коммитится в репозиторий.https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-format
Docs
dotnet format command - .NET CLI
The dotnet format command formats code to match EditorConfig settings for the current directory.
А еще на трансляции рассказывают о возможностях расширения автодополнения с помощью Roslyn. То есть вы можете написать специальный провайдер, который будет давать дополнительные опции для автодополнения. Вот статья с примером разработки такого провайдера
https://www.strathweb.com/2018/12/using-roslyn-c-completion-service-programmatically/
https://www.strathweb.com/2018/12/using-roslyn-c-completion-service-programmatically/
Тем временем — доклад о Minimal APIs. Поскольку эти API и впрямь довольно минималистичные, в докладе едва ли будет много новой информации. Зато я могу посоветовать вам статью на эту тему от Скотта Хансельмана — читается быстро и дает достаточное понимание, что такое Minimal APIs.
https://www.hanselman.com/blog/exploring-a-minimal-web-api-with-aspnet-core-6
https://www.hanselman.com/blog/exploring-a-minimal-web-api-with-aspnet-core-6
Hanselman
Exploring a minimal Web API with ASP.NET Core 6
I write about minimal Web APIs in 2016 and my goal has always been for 'dotnet ...
Изменения в ASP.NET Core следуют общему курсу для .NET:
- Упрощение для новичков
- Перфоманс и удобство разработки (Hot Reload)
- Разнообразные улучшения для фронтенда
Ожидаемо, но приятно. В целом, каких-то новых фич для бэкенда никто сейчас и не ждет, а вот перформанс и удобство всегда приветствуются.
Ну и потенциальная возможность уменьшить количество проблем с JS тоже радует.
- Упрощение для новичков
- Перфоманс и удобство разработки (Hot Reload)
- Разнообразные улучшения для фронтенда
Ожидаемо, но приятно. В целом, каких-то новых фич для бэкенда никто сейчас и не ждет, а вот перформанс и удобство всегда приветствуются.
Ну и потенциальная возможность уменьшить количество проблем с JS тоже радует.
А вот список других изменений в ASP.NET Core, которые не вписываются в озвученный выше «общий курс». Все полезное и по делу.
В докладе про Blazor Components показывают компании и open-source инструменты, работающие нам компонентами для Blazor.
Наличие ребят вроде DevExpress в этом списке однозначно радует, их компоненты для WPF решали многие задачи. Получить аналогичные инструменты для фронта было бы приятно.
Наличие ребят вроде DevExpress в этом списке однозначно радует, их компоненты для WPF решали многие задачи. Получить аналогичные инструменты для фронта было бы приятно.
Что там в .NET?
Очередные циферки по производительности — на этот раз речь об Entity Framework. Окей, это внушительно.
Забавная деталь — бенчмарк, на основе которого посчитаны эти цифры, запускался не с MS SQL Server, а с PostgreSQL.
Причина в том, что это не какой-то специальный бенчмарк от Microsoft, а все тот же бенчмарк от TechEmpower (а конкретно Fortunes). Что делает эти измерения достаточно надежными и прозрачными.
Причина в том, что это не какой-то специальный бенчмарк от Microsoft, а все тот же бенчмарк от TechEmpower (а конкретно Fortunes). Что делает эти измерения достаточно надежными и прозрачными.
А теперь нам показывают, как в связке работают MAUI и Blazor.
Догадаться в общем-то не сложно — BlazorWebView контрол, в него рендерится HTML - CSS - JS, привязки к серверу заменяются на привязки к C# приложению (оно работает в том же процессе, что радует).
В общем — принцип Electron, но все куда лучше оптимизировано. По меньшей мере, такое приложение не тащит с собой весь Chrome.
Догадаться в общем-то не сложно — BlazorWebView контрол, в него рендерится HTML - CSS - JS, привязки к серверу заменяются на привязки к C# приложению (оно работает в том же процессе, что радует).
В общем — принцип Electron, но все куда лучше оптимизировано. По меньшей мере, такое приложение не тащит с собой весь Chrome.
Еще одна интересная деталь — обещают, что Blazor компоненты можно будет легко смешивать с дефолтными десктопными/мобильными. При этом BlazorWebView займет только один экран (или часть экрана), а все остальное будет рендериться как обычно.
У меня есть некоторые опасения формата «а не будет ли такое смешение дорогим по перфомансу», но тут нужно мерить на конкретных примерах.
А заодно показали, как можно использовать Blazor компоненты в WinForms. Выглядело… забавно!
У меня есть некоторые опасения формата «а не будет ли такое смешение дорогим по перфомансу», но тут нужно мерить на конкретных примерах.
А заодно показали, как можно использовать Blazor компоненты в WinForms. Выглядело… забавно!
Напоследок Скот Хансельман в очередной раз демонстрирует, что .NET можно запустить совсем уж повсюду.
Например, на микроконтроллерах! С помощью .NET nanoFramework
https://www.nanoframework.net/
Например, на микроконтроллерах! С помощью .NET nanoFramework
https://www.nanoframework.net/
Ого, а теперь рассказывают про Uno — фреймворк для разработки кроссплатформенных UI на .NET!
Почему меня это удивляет? В основном потому что Microsoft сейчас очень активно разрабатывает конкурирующий инструмент (MAUI), но при это не стесняется рекламировать Uno на своей главной конференции для .NET разработчиков. Радуют!
https://platform.uno/
Почему меня это удивляет? В основном потому что Microsoft сейчас очень активно разрабатывает конкурирующий инструмент (MAUI), но при это не стесняется рекламировать Uno на своей главной конференции для .NET разработчиков. Радуют!
https://platform.uno/
Uno Platform
Uno Platform: Build Cross-Platform .NET Apps Fast with AI Visual & Designer
Uno Platform is the most complete cross-platform .NET UI framework for Web, Mobile, Desktop and Embedded. Boost productivity with Visual Designer, C# and XAML.