Sie sind hier:
Lexikon/Glossar
Telefon (Mo-Fr 9-16 Uhr):
0201/649590-0
|
Kontaktformular
MENU
Start
Hauptseite
Angebote im Überblick
Kernkompetenzen
Softwareentwicklung
Beratung
Firmen-Schulungen
Offene Seminare
Online-Maßnahmen
Vorträge
Coaching
Support
Fachbücher
Fachartikel
Konditionen
Themen
Kernkompetenzen
Aktuelle Themen
Web & Cloud
Apps / Mobilplattformen
Benutzeroberflächen / User Experience
.NET
JavaScript / TypeScript
Java
Programmiersprachen
Entwicklungswerkzeuge
Scripting
Softwareengineering
Datenbanken / Reporting / BI
Betriebssysteme & Virtualisierung
Microsoft Server-Produkte
Windows & Office für Anwender
Soft Skills & IT-Recht
Beratung
Beratungsthemen
Coaching
Softwareentwicklung
Technischer Support
Unsere Top-Berater
Referenzkunden
Angebotsanfrage
Individuelle Schulungen
1026 Schulungsthemen
Agendakonfigurator
Weiterbildungsphilosophie
Didaktische Konzepte
Vor Ort oder online
Unsere Top-Trainer
Referenzkunden
Teilnehmerfeedback
Angebotsanfrage
Offene Seminare
.NET-Akademie
.NET/C#-Basisseminar
WPF
WinUI
.NET MAUI
Blazor
ASP.NET WebAPI & gRPC
Entity Framework Core
Unit Testing / TDD
PowerShell
Infotage
Wissen
Übersicht
Fachbücher
Fachartikel
Konferenzvorträge
Konferenzen/Events
Spickzettel
Lexikon/Glossar
Programmcodebibliothek
Versionshistorie
Weblog
Downloads
Newsletter
Community-/Leserportal
Registrierung
.NET/C#/Visual Studio
.NET 10.0
.NET 9.0
.NET 8.0
ASP.NET (Core)/Blazor
PowerShell
Über uns
Kontakt
Selbstdarstellung
Kernkompetenzen
Dr. Holger Schwichtenberg
Top-Experten
Leitung & Kundenteam
Referenzkunden
Kundenaussagen
Referenzprojekte
Partner
Konditionen
Stellenangebote
Weitere Websites
Impressum
Datenschutzerklärung, Haftung, Urheberrecht, Barrierefreiheit
Suche
Themenkatalog
Tag Cloud
Volltextsuche
Site Map
FAQs
Erklärung des Begriffs: Mobile Blazor Bindings
Zur Stichwortliste unseres Lexikons
Was ist
Mobile Blazor Bindings
?
Mobile Blazor Bindings ist ein
Open Source
-Projekt von Microsoft auf Github [
https://github.com/xamarin/MobileBlazorBindings
], mit dem Hersteller das Konzept des HTML-basierten Webentwicklungsframeworks Blazor auf die Entwicklung von nativen mobilen Apps übertragen will.
Erstankündigung: 14.1.2019
Erscheinungstermin: offen
Mobile Blazor Bindings unterstützt im ersten Schritt nur die Entwicklung von Apps für
iOS
und
Android
.
Die Benutzeroberflächenbeschreibung erfolgt dabei nicht wie sonst üblich in Blazor mit HTML und
CSS
, sondern mit
Xamarin Forms
(siehe Listing 1). Bisher war die Razor-Vorlagensyntax immer an HTML gebunden, nun hat Microsoft das Vorlagenkonzept auf
XAML
übertragen.
Xamarin Forms
ist ein auf der Extensible Application Markup Language (
XAML
) aufbauendes plattformneutrales
GUI
-Framework, das im Februar 2016 im Zuge der Übernahme der Firma Xamarin zu Microsoft gewandert ist.
Die Integration von C# in eine Markup-Sprache nennt Microsoft "Razor". Razor wurde erstmals im Jahr 2010 als Template-Sprache für ASP.NET Model View Controller (
MVC
) vorgestellt [
https://weblogs.asp.net/scottgu/introducing-razor
]. Bisher war Razor immer an HTML gebunden, nun hat Microsoft das Vorlagenkonzept auf
XAML
übertragen.
Zielsetzung
Die Blazor Mobile Bindings sollen dabei nicht die bisherige Xamarin-Produkte ersetzen, sondern ergänzen. Microsoft möchte insbesondere Webentwicklern den Weg in die Entwicklung native mobiler Anwendungen ebnen. Ob Microsoft damit einen Marktbedarf trifft, lässt der Blogeintrag des Herstellers [
https://devblogs.microsoft.com/aspnet/mobile-blazor-bindings-experiment/
] selbst offen mit den Worten: "The goal of these bindings is to see if developers would like to have the option of writing markup and doing data binding for native mobile applications using the Blazor-style programming model with Razor syntax and features.".
Projekt anlegen
Für Blazor Mobile Bindings stellt Microsoft auf NuGet.org eine Projektvorlage "Microsoft.MobileBlazorBindings.Templates" [
https://www.nuget.org/packages/Microsoft.MobileBlazorBindings.Templates
] bereit. Diese Projektvorlage muss derzeit über die Kommandozeile heruntergeladen und gestartet werden:
dotnet new -i Microsoft.MobileBlazorBindings.Templates::0.1.173-beta
dotnet new mobileblazorbindings -o NameDerApp
Danach ist eine Bearbeitung in
Visual Studio 2019
und der Start im Emulator möglich, sofern dort neben
.NET Core 3.0
oder 3.1 auch der Workload "Mobile development with .NET" installiert ist. Die Projektvorlage der Blazor Mobile Bindings erzeugt wie in Xamarin üblich drei Projekte: jeweils ein Anwendungsprojekt für
iOS
und
Android
(mit den Startklassen Main.cs bzw. MainActivity.cs) sowie ein gemeinsames Projekt mit der
XAML
-basierten Benutzeroberflächenbeschreibung und dem zughörigen C#-Code.
Eine rudimentäre Dokumentation für die Mobile Blazor Bindings stellt Microsoft bereits unter [
https://docs.microsoft.com/de-de/mobile-blazor-bindings/
] bereit.
Listing 1: Einfaches Beispiel in Mobile Blazor Bindings mit
Xamarin Forms
und C# aus der Projektvorlage von Microsoft
<Frame CornerRadius="10" BackgroundColor="Color.Light
Blue
">
<StackLayout Orientation="StackOrientation.Horizontal" HorizontalOptions="LayoutOptions.Center">
<
Button
Text="Increment" OnClick="@IncrementCount" />
<
Label
Text="@("The button was clicked " + count + " times")"
Font
Attribut
es="Font
Attribut
es.Bold"
VerticalTextAlignment="TextAlignment.Center" />
</StackLayout>
</Frame>
@code
{
int count;
void IncrementCount()
{
count++;
}
}
Hintergründe
XAML
verwendet Microsoft auch in anderen
GUI
-Frameworks wie der
Windows Presentation Foundation
(
WPF
), der
Universal Windows Platform
(
UWP
) in
Windows 10
und dem längst wieder beerdigten Silverlight. Allerdings gibt es verschiedene
XAML
-Dialekte. Entwickler, die hoffen, mit Mobile Blazor Bindings ihre bestehenden
WPF
-Anwendungen in mobile Apps verwandeln zu können, stehen vor einem ähnlichen Migrationsaufwand wie bei der direkten Verwendung von
Xamarin Forms
ohne Blazor.
Das gemeinsame Projekt basiert auf
.NET Standard
2.0 und kann daher zahlreiche bestehende .NET-Bibliotheken referenzieren. Die betriebssystemspezifischen Projekte für
iOS
und
Android
können per
Dependency Injection
plattformspezifische Implementierungen bereitstellen, wenn es keine plattformneutrale Lösung gibt.
Weitere Blazor-Varianten
Microsoft hatte Blazor erstmal im Februar 2018 vorgestellt [
https://devblogs.microsoft.com/aspnet/blazor-experimental-project/
] als Webassembly-basiertes Framework zur Entwicklung von Single-Page-Web-Applications, die auf Basis von .NET und C# im
Webbrowser
laufen. Mit
Blazor Server
ist im am 23.9.2019 im Rahmen von
.NET Core 3.0
eine erste Variante erschienen. Blazor Webassembly soll im Mai 2020 erstmal erscheinen (vgl. "Ist
ASP.NET Core
Blazor nun fertig oder noch nicht?" [
https://www.heise.de/developer/artikel/Ist-ASP-NET-Core-Blazor-nun-fertig-oder-noch-nicht-4596274.html
]).
Microsoft hatte bereits bei der offiziellen Übergabe von
.NET Core 3.0
angekündigt, in
.NET 5.0
die Blazor-Konzepte über den
Webbrowser
hinaus ausdehnen zu wollen. Dies wurde auf der
.NET Conf
-Sonderausgabe am 14.1.2019 nochmals bekräftigt.
Neben den jetzt angekündigten Blazor Mobile Bindings gibt es bereits seit einigen Monate zwei Projekte für Hybride
Cross-Platform
-Anwendungen auf Basis von Blazor Electron [
https://aka.ms/blazorelectron
] oder Blazor WebWindow [
https://aka.ms/webwindow
]. Blazor Electron und Blazor WebWindow sind genau wie die Blazor Mobile Bindings vorerst im Status "experimentell".
Querverweise zu anderen Begriffen im Lexikon
Windows Presentation Foundation (WPF)
Universal Windows Platform (UWP)
Dependency Injection
Visual Studio 2019 (VS16)
Cross-Platform
Blazor Server
Xamarin Forms (XF)
.NET Standard
.NET Core 3.0
ASP.NET Core
Open Source
Webbrowser
Windows 10
.NET Conf
Attribut
.NET 5.0 (.NET 5)
Android
Button
Label
Blue
iOS
eXtensible Application Markup Language (XAML)
Cascading Style Sheet (CSS)
Mode-View-Controler Framework (MVC)
Universal Windows Platform (UWP)
Windows Presentation Foundation (WPF)
Graphical User Interface (GUI)
Beratung & Support
Anfrage für Beratung/Consulting zu MOBILE BLAZOR BINDINGS
Gesamter Beratungsthemenkatalog
Technischer Support zum MOBILE BLAZOR BINDINGS
Schulungen
Anfrage für eine individuelle Schulung zum Thema MOBILE BLAZOR BINDINGS
Gesamter Schulungsthemenkatalog
Fachbücher
Blazor 10.0: Moderne Webanwendungen und hybride Cross-Platform-Apps mit .NET 10.0, C# 14.0 und Visual Studio 2026
C# 14.0 Crashkurs
Moderne Datenzugriffslösungen mit Entity Framework Core 10.0
.NET 10.0 Update: Die Neuerungen in .NET 10.0 gegenüber .NET 9.0
Blazor 9.0: Moderne Webanwendungen und hybride Cross-Platform-Apps mit .NET 9.0, C# 13.0 und Visual Studio 2022
C# 13.0 Crashkurs
Cross-Plattform-Apps mit .NET MAUI entwickeln
Moderne Datenzugriffslösungen mit Entity Framework Core 9.0
.NET 9.0 Update: Die Neuerungen in .NET 9.0 gegenüber .NET 8.0
PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch
.NET 8.0 Update: Die Neuerungen in .NET 8.0 gegenüber .NET 7.0
Concurrency with Modern C++: What every professional C++ programmer should know about concurrency
C++20: Get the Details
Blazor 8.0: Moderne Webanwendungen und hybride Cross-Platform-Apps mit .NET 8.0, C# 12.0 und Visual Studio 2022
Moderne Datenzugriffslösungen mit Entity Framework Core 8.0
C# 12.0 Crashkurs
App-Entwicklung für Mobile und Desktop: Software Engineering mit .NET MAUI und Comet für iOS, Android, Windows und macOS
Cross-Plattform-Apps mit .NET MAUI entwickeln
Blazor 7.0: Blazor WebAssembly, Blazor Server und Blazor Hybrid
C# 11.0 Crashkurs
Moderne Datenzugriffslösungen mit Entity Framework Core 7.0
PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch
C++ Core Guidelines Explained: Best Practices for Modern C++
App Engineering: SwiftUI, Jetpack Compose, .NET MAUI und Flutter
Vue.js 3 Crashkurs
Moderne Datenzugriffslösungen mit Entity Framework Core 6.0
Blazor 6.0: Blazor WebAssembly, Blazor Server und Blazor Desktop
C# 10.0 Crashkurs
Cross-Plattform-Apps mit Xamarin.Forms entwickeln
Developing Web Components with TypeScript: Native Web Development Using Thin Libraries
Alle unsere aktuellen Fachbücher
E-Book-Abo für ab 99 Euro im Jahr