5/23/18

This week's Wednesday Evening Training: building .NET web apps using WebAssembly that run in the browser with Blazor

This Wednesday Evening Training, we have continued our exploration of WebAssembly. In a previous sessions, we learned what WebAssembly is and how we can use it. Now, we continued our exploration using Blazor.

So what is Blazor anyway?

Blazor is an experimental .NET web framework using C#/Razor and HTML that runs in the browser via WebAssembly
Blazor uses only the latest web standards. No plugins or transpilation needed. It runs in the browser on a real .NET runtime (Mono) implemented in WebAssembly that executes normal .NET assemblies. It works in older browsers too by falling back to an asm.js based .NET runtime.
(source: https://github.com/aspnet/Blazor)

Some of us have already played around with WebAssembly and Blazor. Hans Harts and I have given an introduction and Hans shared his prototypes with us. Thanks Hans Harts, for this! There was a plenty of room for code walkthroughs, Q&A and lively discussion on the technology, possibilities and future of WebAssembly and Blazor. Since Blazor is build upon .NET Core and Razor, these topics were discussed extensively as well.


Handson labs

We also had time for handson activities. Hans and I had collected some handson lab and instruction material that we shared in the group. For starters: building a simple "Hello world" app and as a next step, a lab for building a simple Tetris-like game engine that runs in the browser. See the links below for the labs & documentation.
WebAssembly is a relative recent technology, but hopes are high that this technology will have a big impact on how we implement web applications, and even mobile apps.

There will certainly be a sequel to this session... to be continued!

Further reading

Do you want to read more on WebAssembly and Blazor? Here are some links...

Explanation and examples:
Blazor: a technical introduction - Deeper technical details about Blazor: http://blog.stevensanderson.com/2018/02/06/blazor-intro/
A new experiment: Browser-based web apps with .NET and Blazor: https://blogs.msdn.microsoft.com/webdev/2018/02/06/blazor-experimental-project/
Learn Blazor: https://learn-blazor.com/
Blazor - Samples: https://github.com/software-architects/learn-blazor/tree/master/samples
GitHub aspnet/Blazor - Blazor: https://github.com/aspnet/Blazor

Labs:
BlazorBricks - WebAssembly with Blazor: https://www.codeproject.com/Articles/1241210/WebAssembly-with-Blazor
BlazorBricks - WebAssembly with Blazor - Online demo: https://marcelooliveira.github.io/

Get started building .NET web apps that run in the browser with Blazor: https://blogs.msdn.microsoft.com/webdev/2018/03/22/get-started-building-net-web-apps-in-the-browser-with-blazor/

Past Wednesday Evening Trainings

You'll find post of previous sessions here: https://www.linkedin.com/search/results/content/?keywords=%23wednesdayeveningtraining

Next week

In next week's Wednesday Evening Training, we'll be taking a deep dive in Web servers. In this "how stuff works" session we will discuss the technology of several web servers, like Tomcat, IIS, Kestrel and HTTP.sys. In such sessions, we usually use the entire wall-filling whiteboard sketching :). We'll take a look at the platform architecture, the way in which requests are processed, security, scaling, threading et cetera. Bart van Beek and I will prepare this session.



#capgemini #werkenbijcapgemini #lifeatcapgemini #wednesdayeveningtraining #webassembly #dotnetcore #blazor #microsoft #webdevelopment #csharp #visualstudio

No comments:

Post a Comment