写点什么

AvantX:一个新的跨平台移动开发框架

  • 2015-05-11
  • 本文字数:1133 字

    阅读完需:约 4 分钟

近日在广州的一场活动上,创业公司 PeachApp 的 CTO 段岩 (Rocky Duan) 公开了他们研发的跨平台移动开发框架:AvantX。它的官方网站上公布了一些特性和设计思想。InfoQ 记者联系段岩获得了此框架的进一步信息。

AvantX 采用了 MVVM 架构,并且在 ViewModel 和 View 层之间添加视图抽象层,将 XML 编写的 UI 组件映射到对应平台的原生 UI 组件。在跨平台上,它需要首先编写 Java 代码,然后通过 J2OBJC 将代码转换为 iOS 平台的代码,另外开发团队还计划通过 Sharpen GWT 支持 Windows Phone 和 Mobile Web 平台。

AvantX 框架的特性:

  • 视图抽象层提倡 UI 组件和业务逻辑的分离,大大促进了 UI 组件的可重用性;开发者可拓展抽象层,加入深度定制的 Ui 组件
  • 开发模式下可实时预览 UI 界面的更新,达成与 HTML5 媲美的敏捷开发体验
  • 可动态加载 XML 文件,实现远程更新 UI 界面和部分业务逻辑
  • 采用各平台原生的内存管理,对开发者可见,所翻译代码易读,方便调试。
  • 通过 J2OBJC 直接调用 iOS 原生 API。
  • 可动态调控的事件记录功能,后台可实时获取在线用户当前页面、历史操作
  • 支持可动态更新的 A/B 测试,调整页面模板即可实现。
  • 通过定义页面 URI 获得方便的页面跳转、深度链接、推送消息跳转能力。

你可以在这个视频Demo 观看它的一些特性。视频中还展示了live coding 能力,无需重新编译即可查看用户界面的修改结果。

和HTML5、React Native、Xamarin 等移动跨平台开发解决方案相比,AvantX 在内存管理、原生API 调用、调试等方面都有着自己的优势。因为AvantX 在本质上只共享Model, ViewModel 和视图抽象层的代码,对于iOS 平台,通过J2OBJC 将所有代码都翻译到Objective-C 原生代码,而视图抽象层也映射到各平台的原生UI 组件,因此能完美地与原生移动开发环境和工具链相配合使用。

至于为何开发这个框架,段岩对记者表示:“作为有Web 前端背景的移动开发者,我们深深感到移动端工具链和Web 前端工具链的差距。Web 前端的敏捷开发特性是不少移动开发者青睐HTML5 的根本原因,但是,HTML5 相比起Native 开发在用户体验和性能上仍有不小的鸿沟,使得想开发精品应用的开发者望而却步。而一些跨平台解决方案,如Qt,React Native,Xamarin 等等,要么用户体验非原生,要么开发体验不透明。这是我们决定自己着手写一套框架的原因。”

AvantX 框架的开发团队目前由两人组成,他们也在国内寻找有兴趣的开发者协助框架的开发。今年他们计划在秋季和少数几个团队展开邀请测试,并在年底前开源。


感谢崔康对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者)。

2015-05-11 06:534622
用户头像

发布了 164 篇内容, 共 115.2 次阅读, 收获喜欢 392 次。

关注

评论

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

近几天fil价格暴跌:fil还有希望吗?

区块链 分布式存储 IPFS fil fil行情

使用Apache Spark构建可靠的数据湖(九)

Databri_AI

spark Data Lake iceberg Hudi

大厂的产品研发流程,你知道么?

Simon郎

产品 研发体系 大厂 互联网公司

从鉴黄师到阿里程序员,我成功拿下阿里offer

白亦杨

Java 编程 程序员 计算机

去阿里应聘P7Java岗,都会被问到哪些问题?

Java架构师迁哥

阿里大牛把电商购物、电商秒杀、12306抢票、淘宝天猫各种活动的系统架构层面全部记载到这份《高并发系统架构》手册里了

Java 编程 架构 计算机

AI解锁无人时代 仍需数据安全保驾护航

CECBC

Apache Druid 安装的时候进行 Java 版本校验没有输出

HoneyMoose

Go语言:运行时反射,深度解析!

微客鸟窝

Go 语言

大三就拿到字节提前批,你不想成长,生活总会逼着你成长

Java架构师迁哥

一文读懂区块链技术如何改变非洲贸易(下)

CECBC

从鉴黄师到阿里程序员,我成功逆袭上岸

Java 编程 程序员 计算机

Docker的学习体验

吴脑的键客

,docker

网络攻防学习笔记 Day84

穿过生命散发芬芳

网络攻防 7月日更

我应该在什么时候使用 Apache Druid

HoneyMoose

根据四个商业指标找到MOT

石云升

读书笔记 用户体验 商业洞察 关键时刻 7月日更

如何在Go 服务中做链路追踪

Rayjun

微服务 Go 语言

深入浅出 Java 泛型,一文搞定

猴哥一一 cium

Java 翻译 泛型

做大做强肉牛产业,生物资产解决方案助力乡村振兴

CECBC

【Kafka技术专题】「实践操作篇」单机部署实践手册(2.8.0)

码界西柚

kafka MQ kafka配置 消息队列 kafka架构

加速基因测序进程,北鲲云高性能计算平台再发力

北鲲云

完整视频+源码!十六天带你精通基于Spring Cloud微服务电商项目

Java架构追梦

Java 架构 面试 微服务 SpringCloud

过去几个月里面的几家大厂(美团、字节、腾讯、阿里)均拿到 offer,最终去了字节跳动

Java 编程 程序员 架构 面试

kubernetes/k8s CSI分析-容器存储接口分析

良凯尔

Kubernetes 源码分析 CSI Kubernetes Plugin #Kubernetes#

Vue进阶(七十八):Vue 定时器与 JS 定时器

No Silver Bullet

Vue 定时器 7月日更

Spring之 EL表达式

邱学喆

语法规则 Expression ExpressionParser ParserContext EvaluationContext

通证与区块链:前台经济+后台技术

CECBC

不要让这2个坏习惯限制了你的成长

俞凡

认知

模块三作业

A先生

Vue进阶(四):使用 Vuex + axios 发送请求

No Silver Bullet

Vue axios vuex 7月日更 vue-resources

2021年WEB全栈开发技术栈

devpoint

Vue 全栈 7月日更

AvantX:一个新的跨平台移动开发框架_移动_徐川_InfoQ精选文章