【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

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:061611
用户头像

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

关注

评论

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

模块二作业

hhh

「架构实战营」

区块链用在房地产交易上 会怎样?

CECBC

架构训练营 - 模块2作业

焦龙

架构实战营

极客时间 - 架构实战营 - 模块二作业

秋夫人

架构实战营

文本序号添加/移除工具

入门小站

工具

云栖回顾|首届阿里云云原生生态合作伙伴大会:与伙伴能力融合,加速企业数字创新

阿里巴巴云原生

阿里云 云原生 生态 交流 合作伙伴

00后已经进入网易,下一步定位阿里,年轻人这么拼,android开发艺术探索电子

android 程序员 移动开发

2019-年赚钱最多的-13-个技术岗位,轻松入门flutter

android 程序员 移动开发

OpenVINO+TF2环境搭建

IT蜗壳-Tango

11月日更

飞桨中国行登陆鹏城 与当地企业共话AI赋能软硬件产品创新

百度大脑

人工智能 百度

架构实战营 - 模块二 - 微信朋友圈的高性能复杂度分析

dog_brother

架构实战营

2014-2020分享我在Android开发中走的一些弯路,Android开发者必看避坑指南!

android 程序员 移动开发

架构班模块二作业

21°Char

事务对系统影响(一)

卢卡多多

事务 11月日更

01 K8S之容器与容器编排系统

穿过生命散发芬芳

k8s 11月日更

2017-2020挑选出来最具代表性的(Java,网络相关(1),面试真题解析

android 程序员 移动开发

飞行汽车能顺利上天吗?

脑极体

模块二作业

忘记喝水的猫

架构训练营

连续四年包揽第一!百度AI专利申请量、授权量再度领跑全国

百度大脑

人工智能 百度

18—19年BAT大厂Android高级多套面试专题整理集合(面试资料专题包分享

android 程序员 移动开发

Serverless 工程实践|自建 Apache OpenWhisk 平台

阿里巴巴云原生

Apache 阿里云 开源 Serverless 云原生

坚守在技术无人区,一群无名英雄的低调与浪漫

脑极体

区块链技术重构文创产业 首个行业自律公约发布

CECBC

第二模块作业

张靖

#架构实战营

模块二作业

莫离

架构实战营 「架构实战营」

01、泛型是什么?,flutterplugin修改

android 程序员 移动开发

2018年Android面试题整理,flutter下拉加载

android 程序员 移动开发

宣布Contour v1.13.0!!!

远鹏

golang Kubernetes cncf contour ingress-controller

16 个好用的 Code Review 工具,绝对干货

android 程序员 移动开发

2017-2020挑选出来最具代表性的(Java,网络相关,2021年字节跳动74道高级程序员面试

android 程序员 移动开发

linux之Ansible快速入门

入门小站

Linux

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