BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Codename One新增对面向通用Windows平台的Java应用的支持

| 作者 Abraham Marín Pérez 关注 9 他的粉丝 ,译者 谢丽 关注 11 他的粉丝 发布于 2016年7月5日. 估计阅读时间: 3 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

Codename One是一个流行的应用开发环境,允许使用Java开发各种平台的应用,现在,它又增加了对面向通用Windows平台的Java应用的支持。这样,Java开发人员就可以针对任何安装了Windows 10的设备进行开发——不管是手机、平板,还是台式机——Codename One支持的目标平台的数量增加到了8个。

在移动开发领域,多个竞争平台的存在导致了市场碎片化,开发人员常常需要在两个对立的选项之间作出选择:为每个目标平台(iOS、Android、Windows Phone等)开发原生应用程序,以更高的开发维护成本为代价提供最佳的用户体验;或者,开发一个面向所有平台的解决方案,通常是以Web的形式,这可以更好地利用时间和资源,但放弃了不同平台所特有的优势。类似Codename One或Appcelerator这样的工具介于两者之间,它们设法提供统一的开发体验,同时又利用了部分平台特有的功能。

截至目前,Codename One用户使用Java开发了应用程序,不需要对源代码做任何修改,就可以创建用于各种平台的安装包,包括iOS、Android、Blackberry、Windows Phone、JavaScript、J2ME和桌面。之所以能够做到这一点,其中一个原因是使用了可以面向所有不同平台的构建服务器,并结合了类似ParparVM这样的桥接技术。另一方面,借助Windows 10及其通用Windows平台,微软向设备融合迈进了一步:UWP应用程序可以安装和运行在任何运行Windows 10的设备上,可以是手机、平板或PC。结合这两个事实,允许Codename One以UWP作为目标平台将使开发人员的应用程序可以安装在3亿台新设备上。

Codename One使用了IKVM.NET,后者是Mono和.NET Framework的Java实现,可以以UWP为目标平台。IKVM包含JVM和Java类库的.NET实现,以及用于Java和.NET互操作的工具。当以UWP为目标平台时,Codename One会编译Java应用程序,并把它和IKVM及特定于Windows 10的配置设置打包在一起;这可能不如直接使用.NET开发应用程序好,但好处是可以重用相同的源代码。

这种方法是否会成为主流还有待观察。虽然将相同的代码用于许多平台的观点听起来非常有吸引力,但从Codename One的先前版本所引发的反响来看,社区用户似乎有一个共同的看法,就是对App有着非常高的期望,而开发人员往往认为,唯一能够满足这种预期的方式是开发原生应用。不出意外,简化将现有Java应用移植到UWP的过程几乎肯定会增加Windows 10平台应用的数量。

查看英文原文Codename One Adds Support for Java Apps to Target the Universal Windows Platform

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT