.NET Разработчик
6.67K subscribers
451 photos
4 videos
14 files
2.16K links
Дневник сертифицированного .NET разработчика. Заметки, советы, новости из мира .NET и C#.

Для связи: @SBenzenko

Поддержать канал:
- https://boosty.to/netdeveloperdiary
- https://patreon.com/user?u=52551826
- https://pay.cloudtips.ru/p/70df3b3b
Download Telegram
День 1990. #BlazorBasics
Основы Blazor. Что Такое Blazor? Начало
Blazor — современная технология разработки UI от Microsoft. Он позволяет разрабатывать современные веб-приложения, такие как одностраничные приложения (Single-Page Application - SPA). Blazor - часть платформы .NET, т.е. он имеет доступ к обширной экосистеме .NET: API, языки программирования и среда выполнения.

Технологии
Blazor использует HTML, CSS и C# для создания веб-UI на стороне клиента. Вместо использования специфичных для Microsoft технологий, вроде XAML, для описания UI используются стандартные HTML и CSS. Вместо JavaScript или TypeScript, которые используются в React, Angular, Vue и других веб-фреймворках, Blazor использует C# для реализации поведения приложения.

Модель компонентов
Вот код типичного компонента Blazor:
@page "/counter"
<PageTitle>Счётчик</PageTitle>
<h1>Счётчик</h1>
<p role="status">Счёт: @count</p>
<button class="btn" @onclick="Increment">Увеличить</button>

@code {
private int count = 0;
private void Increment()
{
count++;
}
}

1) Используется стандартный HTML (теги h1, p и button).
2) Код C# либо начинается с символа @, либо заключен в блок кода, начинающийся с @code.
3) Директива @page в первой строке делает этот компонент страницей, доступ к которой возможен по маршруту /counter.
4) Мы определяем свойства в разделе @code компонента, к которым можем получить доступ, используя символ @ перед ним в HTML-шаблоне компонента.
5) Атрибут @onclick, добавленный в HTML-тег кнопки, позволяет связать с кнопкой метод Increment, определённый в блоке кода компонента. При каждом нажатии кнопки метод выполняется.
6) Тег <PageTitle> ссылается на компонент из библиотеки базовых классов. Тот же синтаксис используется при использовании пользовательских компонентов Blazor в вашем проекте.

Как Blazor работает внутри?
В зависимости от модели хостинга (о них в продолжении) Blazor работает по-разному. Вы можете использовать одни и те же компоненты независимо от того, какую модель хостинга вы выберете. Можно создать библиотеку классов, содержащую компоненты Blazor, чтобы использовать их в разных приложениях. Приложение сможет получить доступ к библиотеке классов и использовать компоненты Blazor вне зависимости от модели хостинга.

Почему Blazor — это не Silverlight
Silverlight был откровенным провалом. Но не Microsoft отказалась от этой технологии. Это была архитектура, которая оказалась не в том месте и не в то время. Silverlight был основан на плагине для браузера. Плагины для браузера (вроде Flash) были обычным явлением в те времена, но постепенно от них стали отказываться, не в последнюю очередь из-за проблем с безопасностью.

Blazor основан на открытых веб-стандартах, таких как HTML, CSS и WebAssembly. Очень вероятно, что эти технологии будут поддерживаться в течение многих десятилетий. Кроме того, использование открытых стандартов означает, что без каких-либо плагинов или расширений Blazor работает в каждом браузере в любой операционной системе.
Blazor — это подходящее кроссплатформенное решение пользовательского веб-интерфейса .NET (которым всегда хотел быть Silverlight), но сделанное правильно.

Окончание следует…

Источник:
https://www.telerik.com/blogs/blazor-basics-introduction-blazor-development
👍29