大咖直播-鸿蒙原生开发与智能提效实战!>>> 了解详情
写点什么

Orubase——拥抱原生代码的混合移动应用

  • 2013-01-08
  • 本文字数:1263 字

    阅读完需:约 4 分钟

通常情况下,当我们提及“混合移动应用”时,我们指的其实就是 PhoneGap,这是一个 HTML 应用,带有一个很薄的包装器,可以发布到应用商店。或者可以认为它是个应用构建器,开发者可以使用它做些简单的应用,但很快将无法满足应用的需求。最近一段时间以来,这些东西都不太能满足人们的要求,因此我们只不过是聊聊他们而已,然后就继续该干嘛干嘛去了。但 Syncfusion 的 Orubase 似乎不太一样。它是个真正的混合应用框架,开发者可以自由混合 HTML 与原生代码,这让我们对其另眼相待。

Orubase 面向.NET 开发者,因此它的服务器端组件非常依赖于 Visual Studio 与 ASP.NET MVC。在创建项目时,你需要列出应用所需的视图。接下来,项目向导就会为每个视图创建好 MVC 桩。

接下来,Orubase 会创建出特定于平台的项目。它并未使用 Mono 或是 PhoneGap/Apache Cordova。相反,Syncfusion 使用了原生代码与自己的回调框架(虽然类似于 PhoneGap,但它使用了 AJAX 风格的调用来访问原生的电话特性)。

项目需要使用正确的工具进行编译,这意味着 iOS 开发需要使用 Mac。也就是说,使用模拟器依然也会很快的。

原生感官

Orubase 的一个主要卖点就是其感官看起来像是原生代码。在很多情况下,这是因为它就是原生代码。诸如菜单等特性实际上是通过原生代码创建的,这就确保了在不同平台上其位置是正确无误的。

对于应用的大部分内容来说,其感官就是灵活使用 HTML 与 CSS 的结果。服务端的 MVC 控件会自动根据客户端所运行的操作系统改变其外观。下面是一个示例:

原生视图

我们之所以如此称赞 Orubase 的原因在于其对待原生代码的方式。如前所述,我们所看到的大多数移动平台都竭尽所能地让开发者远离 Java 或是 Objective-C。有些甚至“在云中”编译应用,这样开发者就永远也无法接触到代码了。

Orubase 则与此不同。严格来说,开发者并不需要接触原生代码,除了编译以外。实际上,他们需要针对每个平台进行微调。这可能仅仅是菜单,但却远非如此。

如果特定的视图需要考虑性能问题或是 HTML 无法恰当地模拟某个原生控件,那么开发者就可以,也应该创建原生视图。原生视图与服务器生成的基于 HTML 的视图是混合在一起的,对用户来说是分辨不出他们之间的差别的。

这并不是什么新技术,Apple 现在就在自己的 App Store 上使用了。甚至在上个世纪 90 年代末,你都会在一些应用中看到这一点,比如说 Microsoft Money 就在部分用户界面中使用到了。

目标群体

Orubase 针对的是商业开发者或是那些对性能要求不高的开发者。如果构建视频游戏或是其他资源密集型应用,那么 Syncfusion 并不推荐使用 Orubase。但如果你能承受 JavaScript 所带来的一些性能损失,并且需要原生感官,那么 Syncfusion 则建议考虑使用 Orubase。

支持平台

目前,Orubase 完整支持 iOS 与 Android 平台。Windows Phone 支持则只包含了 7.x 的特性,但 Windows Phone 8 支持会在不久的将来实现。Windows RT 则至少在半年后才能支持了。

InfoQ 会在稍后采访 Syncfusion。如果有任何问题,请在下面提出来。

查看英文原文: Orubase, Hybrid Mobile Apps that Embrace Native Code

2013-01-08 06:062101
用户头像

发布了 88 篇内容, 共 272.8 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

得物技术复杂 C 端项目的重构实践

得物技术

前端 大前端 重构 框架 社区

6月《中国数据库行业分析报告》发布!智能风起,列存更生

墨天轮

数据库 TiDB 国产数据库 列式存储

初识ElasticSearch

阿Q说代码

搜索引擎 lucene ES 选举 脑裂

TiFlash 函数下推必知必会丨十分钟成为 TiFlash Contributor

PingCAP

#TiDB

北京大数据培训 | 电商用户行为分析之实时流量统计

@零度

大数据开发

轻松上手Fluentd,结合 Rainbond 插件市场,日志收集更快捷

北京好雨科技有限公司

Kubernetes EFK Fluentd rainbond

web前端开发培训 | React面向组件编程

@零度

前端开发 React

美团基于 Flink 的实时数仓平台建设新进展

Apache Flink

大数据 flink 流计算 实时计算 实时数仓

MAUI使用Masa blazor组件库

沙漠尽头的狼

大数据培训 | 电商用户行为分析之商业指标统计分析

@零度

大数据开发

天翼云探索云原生、边缘计算融合新思路

天翼云开发者社区

定金预售的规则思路详解

CRMEB

假如,程序员面试的时候说真话

AlwaysBeta

程序员 面试

智能合约dapp系统开发模式定制方案

开发微hkkf5566

SAP Marketing Cloud 功能概述(二)

汪子熙

云计算 SaaS SAP 6月月更 Marketing Cloud

云上人和物联科技加入龙蜥社区,携手打造软硬件服务生态

OpenAnolis小助手

开源 生态 龙蜥社区 CLA 云上人和物联科技

DevSecOps: CI/CD 流水线安全的最佳实践

SEAL安全

CI/CD DevSecOps

天翼云数字政府智慧数据中台通过认证

天翼云开发者社区

力扣每日一练之双指针2Day9

京与旧铺

6月月更

本周四晚19:00战码先锋第7期直播丨三方应用开发者如何为开源做贡献

OpenHarmony开发者

OpenHarmony

NFT交易平台数字藏品系统开发技术

薇電13242772558

NFT 数字藏品

【OpenI开源项目推荐-GammaGL】支持国内外主流深度学习框架的图神经网络算法库

OpenI启智社区

人工智能 算法 图神经网络

攻防演练 | 基于ATT&CK的威胁狩猎实践案例

青藤云安全

网络安全 攻防演练 威胁狩猎

java培训机构 | Java设计模式之适配器模式

@零度

设计模式 JAVA开发

Java——流输入输出

武师叔

6月月更

重磅直播|BizDevOps:数字化转型浪潮下的技术破局之路

阿里云云效

阿里云 DevOps 研发效能 BizDevOps 场数字化转型

CAT敏捷团队教练工作坊 (Coaching Agile Teams) | 8月20日开课

ShineScrum

教练 敏捷教练 高管教练 专业教练 ACC

2022年盲盒软件开发商业模式深度解析

开源直播系统源码

软件开发 盲盒开发 盲盒软件

社恐?自我介绍时大脑一片空白?

阿Q说代码

个人成长 社恐 职场破冰 入职公司

企业官网如何提高客户转化率

源字节1号

Java——I/O II

武师叔

6月月更

Orubase——拥抱原生代码的混合移动应用_Android/iOS_Jonathan Allen_InfoQ精选文章