Айтишникам, привет!
Я обычно не делаю обзоры про инструменты и стэки, стараясь давать информацию которая подойдёт большинству, вне зависимости направления, но тут выходит новый .NET 8 с крутейшими обновлениями для Blazor, и я как .NET разработчик и фанат языка C#, не могу обойти это событие стороной.
Ну а меня зовут Денис, в ИТ я уже более 20 лет, и последние пару лет руковожу маленьким консалтинг бизнесом по интеграции финансовых данных и автоматизации процессов в финансовых департаментах.
Я был когда-то фулл-стак девелопером, делая бэк на .НЕТе, а фронт на Реакте. И честно говоря, переключаться между C# и TypeScript – было не комфортно. Это как 2 разных мира. Но, к сожалению, тогда у разработчиков C# не было особо много опций, которые могли конкурировать с модными JS фреймворками.
В конце 2019, появился Blazor Server, который предоставлял функционал SPA, с ре-рендерингом только измененных компонентов на странице, а вся логика считалась на сервере, иногда приводя к тому, что пользователь долго смотрел в полупустую страницу, ожидая появления контента. Но к тому моменту, JS фреймворки имели более развитую инфраструктуру, функционал, множество стилизованных компонентов, большое комьюнити и т.д. поэтому Blazor был как бы в стороне. Потом появился Blazor WebAssembly в конце 2020 года, который позволял делать рендеринг и логику на стороне клиента, делая приложение более интерактивным. Это усилило позиции фреймворка, но по-прежнему не дотягивало до того, чтобы Энтерпрайзы перестали выбирать связку: проверенный JS фреймворк + .NET как бэкенд.
И вот сейчас, в середине ноября, выходят серьезные обновления для Blazor вместе с .NET 8, которые, я уверен, станут gamechanger для C# разработчиков.
Итак, к обновлениям, и с чего хочется начать — это полноценный Server Side Rendering без необходимости держать открытым SignalR соединение! Вся коммуникация происходит через HTTP. Чем хорошо - быстро грузятся страницы, возможно создавать статический контент, лучше SEO и SMO, лучше безопасность.
Далее, Streaming Rendering, идеально для случаев, когда страница может долго подготавливаться сервером, например сложные калькуляции или большой объем данных. Таким образом, можно показать статическую часть страницы сразу, и после подгрузить оставшийся контент. При этом, опять же никакого SignalR соединения, все через HTTP.
Еще одно обновление – это улучшенный рендеринг во время навигации (enhanced navigation) и обработки форм. Во время перехода с одной страницы на другую, Blazor будет обновлять только те компоненты, которые были изменены. Также и при сабмите формы, пользователь останется в той же локации где и был. Без этой функции – страница бы полностью обновилась, и пользователь снова оказался бы в начале страницы.
А вот если я не знаю какой метод мне нужен для моего будущего приложение, Server Side, WebAssembly или что-то еще, или может я вообще хочу иметь возможность сам определять, что, как и когда на странице будет отображаться? И тут новый Blazor предоставляет нам возможность определять рендеринг компонентов в Runtime.
В .NET8 еще много чего интересного для Blazor, например, улучшена производительность WebAssembly, 20% быстрее UI rendering и в 2 раза ускорена сериализация JSON, добавлены новые готовые компоненты, API для авторизации, секции, статический HTML, для, например, статических сайтов и емэйлов, и т.д.
За последние 5 лет существования Blazor, вышло множество библиотек стилизованных компонентов, тем и даже шаблонов. Более того, есть специальное IDE которое вам позволяет визуально, строить страницы. А в середине этого года, вышел новый фреймворк для мультиплатформенной разработки мобильных и десктоп приложений под названием – MAUI.
И что вы думаете? Разрабатывая приложения в MAUI, вы можете использовать Blazor – таким образом создавая единый код как для вашего веб, так и для мобильного приложения. Ну крутяк же, разве нет?
Конечно, заголовок у видео очень громкий. JS разработчики, как пользовались JS фреймворками, так и будут продолжать ими пользоваться, но для нас, любителей .NET и в частности C#, это даст новые возможности, и возможно мучения со всеми этими NPM, yarn, VS Code для нас закончатся.
Ну а для тех кто только выбирает себе стэк, я бы рекомендовал посмотреть более серьезно на .NET и в частности Blazor, Microsoft инвестирует большие ресурсы в развитие этого продукта, и я уверен, что у него светлое будущее.
Надеюсь, это видео будет вам полезно или хотя бы вызовет положительные эмоции. Делитесь вашими мыслями в комментариях, и не забывайте лайкать и подписываться. Хорошего всем настроения, пока!
---
Всем спасибо и удачи на вашем пути, ну и приходите ко мне в Телеграми наYouTube.
#itcareer #itcareers #айтишник #айтикарьера #работавит #thetechway #работаайтишником #itjobs #jobsearch #jobseekers #itjobs #техпуть #путьтехнаря #поискработы #карьера #работапрограммистом #интервью #собеседованиенаработу #собеседование #salary #зарплаты #зарплатыайтишников #неит #неайти