写点什么

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:004330

评论 1 条评论

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

YashanDB数据库的行业应用及潜在市场价值

数据库砖家

使用DataSecurity Plus监控Windows文件完整性

运维有小邓

日志管理 IT运维 文件监控

区块链 RWA 系统的主要功能

北京木奇移动技术有限公司

区块链技术 软件外包公司 RWA开发

真的要动起来了

王中阳Go

程序员 运动

可视化建站工具

微擎应用市场

YashanDB数据库的维护成本与效益分析

数据库砖家

YashanDB数据库的用户体验:简化数据操作的工具

数据库砖家

缩放、镜像、偏移,用好这3个CAD功能,让图纸修改效率狂飙!

在路上

cad cad看图 CAD看图王

Amazon Q Developer CLI 如何提升独立游戏开发者的开发体验

亚马逊云科技 (Amazon Web Services)

YashanDB数据库的迁移技巧与挑战

数据库砖家

YashanDB数据库的网络配置与优化方法

数据库砖家

电子科技大学 鲲鹏昇腾科教创新孵化中心揭牌,打造中国算力生态“成电范式”

极客天地

彩讯AI邮箱荣获"华为鸿蒙办公创新合作奖",Rich M@il全面预装华为线下门店

彩讯股份300634

HR Path收购ClearCourse

财见

YashanDB数据库的用户界面及体验优化

数据库砖家

YashanDB数据库的用户体验与界面设计指南

数据库砖家

深度解析ISO 50007-结合MyEMS开源系统的能源服务技术实践

开源能源管理系统

开源 能源管理 开源能源管理 iso 50007

本地汽车洗护服务平台

微擎应用市场

巅峰对决,超三十万奖金等你挑战!

默语

YashanDB数据库的索引策略,如何提升查询速度?

数据库砖家

聚势增长!Unity 确认参展 2025 ChinaJoy BTOB

极客天地

MyEMS开源能源管理系统核心代码解读004

开源能源管理系统

开源 代码 能源管理 worker函数

鸿蒙Next仓颉开发语言中的数据类型总结分享

幽蓝计划

harmoyos

YashanDB数据库的视频监控数据存储方案

数据库砖家

浩辰软件斩获鸿蒙办公行业先锋奖,为鸿蒙生态注入CAD新活力

在路上

cad 浩辰CAD CAD看图王

生成式AI服务再添合规标杆:iCourt旗下AlphaGPT完成备案

科技汇

CST软件如何启用stage view背景渲染和爆炸图

思茂信息

cst操作 cst电磁仿真 CST软件 CST Studio Suite

Nexus Core建AI工厂,用绿能与新一代算力驱动

财见

数据可视化与能源管理的技术分野:Grafana 与 MyEMS 深度对比

开源能源管理系统

开源 Grafana 能源管理 开源能源管理系统

YashanDB数据库的水平扩展能力与实现方法

数据库砖家

YashanDB数据库的用户权限管理及安全配置

数据库砖家

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