Blazor - Web Applications with C#



Kursarrangør: Glasspaper AS
Sted: Oslo, Helsfyr
Oslo
Kursadresse: Brynsveien 12, 0667 Oslo (kart)
Type:Åpent kurs / gruppeundervisning
Studie / yrkesutdanning
Undervisningstid: kl 09:00 - 16:00
Varighet: 4 days
Pris: 23.900

Thanks to WASM (WebAssembly) it is finally possible to create C# web applications, running exclusively in the browser. Microsoft created Blazor that, together with ASP.NET Core, allows you to write web application, Progressive web apps (PWA), (native) mobile and desktop applications.

Course description:
Blazor comes in two flavors: Server and Client side. The code for both flavors is generally the same, so the course will cover both flavors with examples and exercises. Because Blazor will be in development, the course always covers the latest version. But examples about past or future features will be in the material as well.

Course outline:
Module 1 - Introduction:
• Why use Blazor
• What is Blazor
• Difference between client-side and server-side Blazor

Module 2 - Getting Started:
• Installation and Tooling
• Project Setup
• Project Templates
• Bootstrap an App

Module 3 - Basic:
• Razor syntax
• Compile step
• HTML Head content
• Components
• Data Binding
• Conditional rendering
• List rendering
• Event Handling
• Styling with CSS

Module 4 - Multiple Components:
• Properties
• Required
• Default values
• Custom events
• Custom event args
• Support (at)bind-
• Keys
• Recursive Components
• Dynamically render Components

Module 5 - Forms:
• Form Controls and
• Input Validation
• Submit handling

Module 6 - Lifecycle:
• Component Lifecycle events
• Understanding and forcing updates

Module 7 - Dependency Injection:
• Singleton vs Transient
• Services
• State Management

Module 8 - Router:
• Layouts
• Routing
• Route Templates
• Fallback
• Route Parameters
• Route Constraints
• NavLink Component
• URI and Navigation State Helpers

Module 9 - DOM & JavaScript:
• Accessing JavaScript from Blazor
• Accessing Blazor from JavaScript
• Use native APIs
• JavaScript Initializers
• Render components from JavaScript

Module 10 - Fetch REST APIs:
• HTTP:
• Get
• Put
• Push
• Delete

Module 11 - Cascading Values and Parameters:
• Create and consume values
• Multiple values
• Callbacks
• State management

Module 12 - Templated Components:
• 1 or multiple slots
• Default values

Module 13 - Performance:
• Virtualized list
• ShouldRender lifecycle
• Prerender

Module 14 - Security:
• Authentication
• Authorization
• Handling UI appropriately

Module 15 - Miscellaneous (Covered alongside other topics):
• Error Boundaries
• Handling errors
• Debugging
• Testing
• Hosting & Deploying
• Serverside vs Clientside

Module 16 - Optional:
• Creating a Progressive Web App

Content is always updated to the latest released Blazor and .NET version.

Instructor: Rick Beerendonk

Rick is a senior consultant and trainer from The Netherlands. He has over 25 years of professional experience while working in small, large and fast growing organisations. His passion is simplicity, wellwritten code and team dynamics. He is specialised in front-end technologies and speaks regularly about these topics at international events.

Target audience:
Anyone who wants course about Blazor - Web Applications with C#

Prerequisites:
• Professional software developer with knowledge of C#. Some knowledge of web technologies like HTML and CSS is helpful.
• Course can be followed on both Mac and Window machines using Visual Studio Code or Visual Studio

Language:
• English course material, english speaking instructor

Course material:
The course material will have tens of examples of all the technologies used. Exercises are target to make the students think instead of being directed, to achieve better memorization. At the end of the course the students should be ready to independently start and maintain Blazor projects.