写点什么

Blazor 跻身跨平台移动应用开发

  • 2020-02-02
  • 本文字数:1167 字

    阅读完需:约 4 分钟

Blazor跻身跨平台移动应用开发

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

.NET Conf 2019大会的“聚焦Blazor”活动中,微软正式发布了新的实验性项目Mobile Blazor Bindings。Mobile Bindings 项目意在使用 Microsoft Blazor 和.NET for iOS/Android 实现跨平台移动应用开发。类似于React Native,Mobile Bindings 同样使用原生 UI 控件提供原生的用户观感体验。


简而言之,Mobile Blazor Bindings 实现了 Blazor 编程模型向移动端开发的扩展。正如微软.NET 工程师 Eilon Lipton 撰文指出,对于一直使用XAML、Razor模板和Xamarin构建混合移动端应用的 XAML 和 Xamarin 开发人员,以及使用Blazor开发Web应用的开发人员而言,Mobile Bindings 独具吸引力。


Mobile Blazor Binding 的成功与否,取决于开发人员是否愿意在原生移动应用中使用具有 Razor 语法和特性的 Blazor 风格编程模型,去编写标记语言,实现数据绑定。


Lipton 给出了一段示例代码,直观展示了具有一定 Razor 经验的 Web 开发人员如何使用 Mobile Blazor Bindings 开发移动应用。示例代码定义了一个具有按钮和点击计数器的基本视图。


<StackLayout>    <Label FontSize="30"           Text="@("You pressed " + count + " times")" />    <Button Text="+1"            OnClick="@HandleClick" /></StackLayout>
@code { int count;
void HandleClick() { count++; }}
复制代码



图片来源:微软官方文档。


类似于Razor组件在混合应用开发中的一般用法,上面的代码段中同时使用了Xamarin.Forms StackLayout和原生 C#代码处理 UI 行为。要在 Web 应用中实现同样的基本视图,可使用类似的代码结构,只是 UI 描述需要使用 HTML 标记替代 Xamarin.Forms 标记。


微软在其.NET Conf 2019大会上提出,Mobile Blazor Bindings 意在将 Blazor 扩展为一种全栈开发框架。下图清晰阐释了 Blazor 发展的各个维度,以及 Mobile Blazor Bindings 的适用之处。



图片来源:微软官方文档。


开发人员对微软的这次官宣反应不一。尽管一些人对 Blazor 工具箱的新功能扩展持欢迎态度,也有一些开发人员对引入.NET 技术创建 UI 所导致开发选择上的复杂性表达了担忧。开发人员将难以在技术投入上做出抉择,团队的发展方向也会深受困扰。一些人进一步担心微软未来将会终止其中一些项目的发展,导致投入其中的开发人员无所适从。


更具体而言,一些持批评意见的人着重指出,Blazor 的 Web 和移动应用事实上并未共享相同的 UI 定义,削弱了在这两个平台上使用单一编程模型的价值。此外,批评人士希望微软能将 Blazor 的发展重心聚焦于Progressive Web AppsWebAssembly,将移动端开发交给WPFUWPXamarin


Blazor 基于.NET Standard 2.0运行,其原生 UI 组件依赖 Xamarin.Forms。Mobile Blazor Bindings在GitHub上开源提供,需.NET Core 3.0/3.1支持。


原文链接:


Blazor Makes Its Way into Cross-Platform Mobile App Development


2020-02-02 09:003926

评论 1 条评论

发布
用户头像
不看好
2020-02-03 12:18
回复
没有更多了
发现更多内容

加速企业数据应用创新的核心能力——灵活性

用友BIP

数据中台 创新 用友

2022年中国数字孪生城市市场分析:孪生城市产业经济全域协作

易观分析

数字孪生

丰e足食将大量引入算法人才 加快无人零售算法研发和应用

江湖老铁

重磅!博睿数据发布新一代统一告警平台

博睿数据

学生管理系统架构设计

随欣所遇

架构实战营

【web安全】你的open_basedir安全吗?

H

网络安全 WEB安全

小熊派:用OpenHarmory3.0点亮LED

华为云开发者联盟

小熊派 OpenHarmony 驱动开发 小熊派Micro LED

架构实战营:模块八作业

Geek_93ffb0

「架构实战营」

针对 Kubernetes v1.22,阿里云容器服务 ACK 提供了哪些升级和增强能力?

阿里巴巴云原生

阿里云 容器 云原生 产品升级 ACK

详解近端策略优化

行者AI

深度强化学习

通过5个函数带你理解K8s DeltaFIFO

华为云开发者联盟

k8s Queue Client-go DeltaFIFO FIFO

网络安全kali渗透学习 web渗透入门Metasploitable2靶机系统介绍

学神来啦

基于外包学生管理系统的架构文档

刘帅

TDengine在蔚来能源系统的落地实践

TDengine

MySQL 数据库 tdengine 物联网 时序数据库

什么是数字化转型?

WorkPlus

安全专属的移动数字化平台WorkPlus加速国企数字化转型

WorkPlus

前后端分离项目,如何解决跨域问题?

CRMEB

16 张图解带你掌握一致性哈希算法

华为云开发者联盟

负载均衡 分布式系统 一致性哈希 哈希算法 数据迁移

Linux中buff-cache占用过高解决方案

入门小站

Linux

测试环境与路由 | 阿里巴巴DevOps实践指南

阿里云云效

云计算 阿里云 运维 云原生 测试

数据治理:从一把手工程到数据文化!

用友BIP

数据治理 用友 用友iuap 数据文化

用实例带你深入理解Java内存模型

华为云开发者联盟

Java JVM JMM 线程安全 Java内存模型

外包学生管理系统架构设计

炎彬

「架构实战营」

J2PaaS企业级低代码平台,如何支撑开发企业级应用?

J2PaaS低代码平台

低代码 低代码开发 企业级低代码平台 企业级应用

中国信息通信研究院云计算与大数据研究所一行莅临亚信科技考察交流

亚信AntDB数据库

千万级车联网 MQTT 消息平台架构设计|车联网平台搭建从入门到精通 02

EMQ映云科技

架构 车联网 物联网 mqtt 分布式消息流平台

中台和低代码,“零和”还是“竞合”?

WorkPlus

元年云李彤:ToB产品应具备数据驱动和「宽能力」

ToB行业头条

3月2日,阿里云开源 PolarDB 企业级架构将迎来重磅发布

阿里云数据库开源

数据库 阿里云 开源 分布式 polarDB

在线JWT Token解析解码

入门小站

工具

Flink 实践教程-进阶(8):自定义标量函数(UDF)

腾讯云大数据

Blazor跻身跨平台移动应用开发_语言 & 开发_Sergio De Simone_InfoQ精选文章