写点什么

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

评论 1 条评论

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

数据安全法下,企业如何平衡数据安全合规与业务性能?

腾讯安全云鼎实验室

数据安全 数据安全法

面试官问的那些Android原理你都懂吗?值得一看

欢喜学安卓

android 程序员 面试 移动开发

CDH 安装搭建(二)

大数据技术指南

CDH 7月日更

卧薪尝胆30天!啃透京东大牛的高并发设计进阶手册,终获P7意向书

Java 编程 程序员 架构 面试

MySQL连接数管理

Simon

MySQL

mPaaS 月度小报 | CodeDay#6 成都站落幕,下一站北京;上新季:新容器、新官网、新视觉

蚂蚁集团移动开发平台 mPaaS

移动开发 mPaaS

阿里的架构师一致好评!IT界首版全栈架构师全栈“成长笔记”开源!

Java架构追梦

Java 阿里巴巴 架构 面试 成长笔记

共36万字!为上岸Alibaba,我把Github上Java面试题都整理了一遍

Java 编程 程序员 架构 面试

数据归档 - 冷热数据处理大师

趣链科技

数据处理 区块链+

linux网络编程—7层网络以及5种Linux IO模型以及相应IO基础

Linux服务器开发

后端 网络编程 Linux服务器开发 网络模型 IO模型

开源即巅峰!阿里首次分享:Java架构师全栈“成长笔记”

Java架构师迁哥

灵魂拷问:我们该如何写一个适合自己的状态管理库?

尔达Erda

开源 云原生 大前端 API 运维开发

自制深度学习照片数据集

re-执着

对EF Core进行扩展使支持批量操作/复杂查询

Spook

EF Core

腾讯上线零点巡航,用Java手撕一个人脸识别系统

北游学Java

Java 腾讯 人脸识别

手把手教你实现聚光灯效果

ThingJS数字孪生引擎

大前端 可视化 智能灯控 数字孪生

CODING 助力推进腾讯游戏国际化进程

CODING DevOps

DevOps 开发工具 腾讯游戏 软件研发

监测生命体征、活动水平的可穿戴电子产品设计方案

不脱发的程序猿

物联网 ADI 可穿戴电子产品设计方案 监测生命体征、活动水平 智能传感器

面试官问的那些Android原理你都懂吗?快来收藏!

欢喜学安卓

android 程序员 面试 移动开发

《持之以恒的从事运动》三

Changing Lin

YOLOV1解读

re-执着

字节跳动有状态应用云原生实践

火山引擎开发者社区

云原生 后端

Hive学习笔记(一)

五分钟学大数据

hive 7月日更

渗透工程师必看-网络安全法条例-国家安全法介绍和案例

学神来啦

运维 黑客 安全 渗透

iOS端屏幕录制开发指南

anyRTC开发者

音视频 WebRTC ios开发 屏幕录制

全网首发!“阿里爸爸”最新出品SpringBoot高级笔记(内部笔记!)

Java spring

部分简单网页的基础了解

Emotion

html html5 Html报文解析 内部样式、 CSS语法

这套获50w+星标的算法神仙文档,足你解决90%的对手,牛逼

编程 程序员 架构 面试

爱了!阿里巴巴 Java 面试参考权威指南(泰山版)5月版开源

Java 编程 程序员 架构 面试

DICOM--网关(路由器/适配器)

birdbro

医学影像 DICOM PACS dicom4che DICOMWeb

银行4.0时代的营销与风控之路

索信达控股

大数据 金融科技 数字化转型 银行数字化转型 营销数字化

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