写点什么

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

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

    阅读完需:约 4 分钟

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

.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:004115

评论 1 条评论

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

2023年 DevOps 七大趋势

SEAL安全

PGL图学习之基于GNN模型新冠疫苗任务[系列九]

汀丶人工智能

图神经网络 GNN 11月月更

元宇宙赛道逐渐清晰,虚实世界如何“破壁”?

旺链科技

区块链 产业区块链 元宇宙

ShareSDK Android端权限说明

MobTech袤博科技

Function源码解析与实践

京东科技开发者

编程语言 Function 编程‘’ 后端、

行业分析| 实时音视频的多种用法

anyRTC开发者

音视频 实时音视频 实时通信 语音通话 视频通话

华夏天信携手华为云开天aPaaS,打造安全、高效、节能的主煤流运输系统

华为云开发者联盟

云计算 后端 华为云

1亿条数据批量插入 MySQL,哪种方式最快?

小小怪下士

Java MySQL 程序员

前端培训中应该怎么学习web前端

小谷哥

大数据培训前景怎么样?

小谷哥

SQL面试 100 问

FunTester

报名即将结束!11 大云原生领域开源技术干货一场拿下

阿里巴巴云原生

阿里云 开源 容器 微服务 云原生

谈谈我工作中的23个设计模式

阿里巴巴云原生

阿里云 云原生 技术文章

要想后期修改少,代码重构要趁早

华为云开发者联盟

云计算 后端 华为云

异常捕获中finally和return的用法

自由呼吸

Java 11月月更

移动跨端框架发展史及优劣对比

FinFish

前端框架 跨端框架 移动端跨端 跨端发展

DDD与EDA-核心逻辑提炼方法论

胖子笑西风

Java 架构 DDD 事件驱动 EDA

什么?Coolbpf 不仅可以远程编译,还可以发现网络抖动! | 龙蜥技术

OpenAnolis小助手

Linux 开源 ebpf coolbpf 龙蜥峰会

web前端培训学习后还有做前端开发的吗

小谷哥

前端哪个培训学习比较好?

小谷哥

技术实战:初创项目前端框架选型

FinFish

前端开发 前端框架 技术选型 移动开发

教育机构客户管理系统功能方案详解!

优秀

CRM系统 客户关系管理系统

KVC原理与数据筛选

京东科技开发者

后端 数据处理 KV存储引擎 KV查询

如何在几百万qps的网关服务中实现灵活调度策略

百度Geek说

网关 调度 动态配置 12 月 PK 榜

1000 种兴趣和 1000 个兴趣小组 | 学点战略

赵新龙

TGO鲲鹏会 CTO 战略

云原生微服务治理技术朝无代理架构的演进之路

华为云开发者联盟

云计算 云原生 后端 华为云 微服务治理

跨境电商ERP也爆单,分布式新型数据库迎战

OceanBase 数据库

数据库 oceanbase

上新啦KIT

HarmonyOS SDK

HMS Core

预告|2022 星策 Summit 首批嘉宾确认,大会火热报名中!

星策开源社区

机器学习 开源 数字化 管理层 企业转型

大数据培训程序员都去做什么了

小谷哥

移动跨平台技术方案选型建议

Onegun

移动端 跨端开发 跨端框架

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