【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

跨平台移动端开发框架 NativeScript 发布正式版本

  • 2015-05-12
  • 本文字数:1611 字

    阅读完需:约 5 分钟

“一次编码,处处运行”一直是应用程序开发人员的梦想。在传统的桌面应用开发中,Java 等虚拟技术已经在梦想实现的路上迈出了很大一步。随着移动应用的强势崛起,多平台开发再次成为程序设计人员所必须解决的问题。利用 HTML 和 JavaScript,Hybrid App 作为一种有效的解决方案已经取得了一定的成功。但是,对流媒体处理速度慢的缺陷使得该方案越来越难满足用户需求。在这种情况下,开发人员迫切需要一种新的跨平台开发的解决方案来应对挑战。NativeScript 就是一款由 Telerik 公司提出的跨平台原生移动应用的开发框架。该项目的目的是利用单一代码库构建面向多平台的原生移动应用程序,支持 iOS、Android、Windows Phone 等主流的移动操作系统平台。NativeScript 为开发人员提供便捷之处在于利用 Javascript 和 CSS 就可以进行原生用户体验的移动应用开发。而且,Nativescript 的源代码直接托管在 GitHub 上,真正实现了零门槛约束。

JavasScript 因为易学易用的语言特点,早已被广大程序开发人员所掌握。而随着主流移动平台推出强劲的 JavaScript 处理引擎(iOS 7 及以后版本的 JavaScriptCoew、Android 自带的 V8 JavaScript Engine),使用这些引擎来进行跨平台开发也成为高效的解决方案。据 Teletrik 公司的开发大使 TJ VanToll 透露,NativeScript 的基本运行原理如下:用户首先用 JavaScript 语言编写应用程序,然后利用各平台的处理引擎对应用进行解释。之后,NativeScript 运行时环境找到原生的目标 API,将 JS 数据类型转化为相应的原生类型,从而运行平台的原生代码。采用这种方式使得 NativeScript 可以配合最新的平台 API 以及各种第三方库,方便应用程序更新。此外,NativeScript 借助一套类似 node 的包管理系统,用 modules 对这些不同平台的代码进行了统一的封装。对于 UI 的处理,NativeScript 选择了使用类似 Android 的 XML 的方式进行布局,然后用 CSS 来控制控件的样式。

NativeScript 的第一个公开版本在两个月前一经发布便受到了广泛关注。很多开发人员积极反馈对于 NativeScript 的意见以及建议。近期, NativeScript 进一步推出了正式版本——NativeScript 1.0.0。在新版本中,开发人员特别加入了一些新的特性来满足用户的需求。例如,NatvieScript 提供了一些应用程序样例,帮助开发人员进行更好的了解该工具的使用。样例中包含了 TelerikNEXT 会议的官方应用软件和一款名为 Friends 的软件。这两个软件的源代码都已经放在了 GitHub 中 NativeScript 目录下,供用户下载和研究。此外,对于不同分辨率的设备,NativeScript 实现了不同的视图,并提供不同分辨率的图片,来提升用户体验。AngularJS 2.0 也已经初步集成在了 NativeScript 中,供网页开发人员使用。而且,NativeScript 还加强了对于调试方面的支持。这包括支持“—print-app-output”来记录软件控制台的所有输出以及在仿真器上进行调试等。最后,该版本的 NativeScript 还特别改善了 Android 设备上应用程序的加载时间。

其实,NativeScript 所代表的解决思路就是使用已经被广大前端开发者所掌握的工具链和语言来进行移动应用程序开发。其一经推出必然会收到很多前端开发者的欢迎,但是使用 JavaScript 所面临的 UI 问题仍然存在。此外,跨平台开发框架面临的应用程序尺寸的问题以及复杂应用程序开发中的调试问题也是 NativeScript 发展所遇到的挑战。通过正式版发布时所更新的特性,读者可以看出 NativeScript 有信心应对这些挑战。据 Teletrik 公司官方博客表示,未来 NativeScript 的发展将会关注 iOS 系统中第三方静态库的支持、NativeScript 插件的支持,Android 系统编译时间的优化以及应用程序内部的错误报告支持等方面。


感谢崔康对本文的审校。

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

2015-05-12 06:204056
用户头像

发布了 268 篇内容, 共 117.7 次阅读, 收获喜欢 24 次。

关注

评论

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

文心一言 VS 讯飞星火 VS chatgpt (182)-- 算法导论13.4 6题

福大大架构师每日一题

福大大架构师每日一题

对于数字人源码你了解多少?

青否数字人

数字人

《Java解惑》PDF

程序员李木子

Flyway 的主要命令及其作用如下:

Geek_b2fe7a

NineData云原生智能数据管理平台架构

NineData

postgresql 阿里云 生态 polarDB NineData

iptables-nvL查看linux系统的所有ip和端口情况教程。

百度搜索:蓝易云

云计算 运维 IP iptables 云服务器

【年后跳槽必看篇】Kafka核心知识点 技术探秘第一章

派大星

Java 面试 kaffa

MySQL Update语句一个非常经典的“坑”

伤感汤姆布利柏

IPQ4019: A powerful boost in the field of wireless communications

wallysSK

SD-WAN零接触部署解析

Ogcloud

SD-WAN SD-WAN组网 SD-WAN服务商

回顾 2023,NebulaGraph 的这一年的变化

NebulaGraph

图数据库

centos以cifs协议挂载nas

百度搜索:蓝易云

Linux centos NAS 云服务器 CIFS

论文翻译 | 【深入挖掘Java技术】「底层原理专题」深入分析一下并发编程之父Doug Lea的纽约州立大学的ForkJoin框架的本质和原理

洛神灬殇

Java 并发编程 后端技术 2024年第十五篇文章 Doug Lea

图像处理-Java-背景色平滑/反色

alexgaoyh

Java 图像处理 背景色平滑 反色

90%企业在探索的敏捷开发怎么做?极狐GitLab总结了这些逻辑与流程

极狐GitLab

求求你别用轮询了!手把手教你封装WebSocket消息推送,告别轮询方式!

陇锦

JavaScript 前端 websocket

喜讯!云起无垠获评“德勤海淀明日之星”

云起无垠

《On Java 中文版 进阶卷》PDF

程序员李木子

【教程】React-Native代码规范与加固详解

雪奈椰子

开发者 | Mint Blockchain 重点支持发展的 15 个细分赛道项目

NFT Research

blockchain web3 NFT\

《On Java 中文版 基础卷》PDF

程序员李木子

软件行业的盛宴“2024世亚软博会”汇集全球软件企业和专家

AIOTE智博会

智博会 上海智博会 世亚智博会 北京智博会

业财融合,释放财务更多潜力

智达方通

战略规划 企业战略 业财融合 财务与业务 预算控制

鸿蒙生态进入第二阶段,加速千行百业应用鸿蒙化

华为云开发者联盟

华为 鸿蒙 开发者 华为云开发者联盟

左耳听风 - 优质代码「读书打卡 day 11」

Java 工程师蔡姬

读书笔记 程序员 个人成长 职业发展 优质代码

彰显科技硬实力!天翼云在国际顶刊JoCCASA发表论文

编程猫

HarmonyOS SDK,助力开发者打造焕然一新的鸿蒙原生应用

HarmonyOS开发者

HarmonyOS

拒绝上市公司Offer,选择自己喜爱的行业,从容不迫他凭什么?

测试人

软件测试 测试 自动化测试 测试开发 测试工程师

在Debian上安装配置Klipper教程

百度搜索:蓝易云

Linux 运维 云服务器 Debian Klipper

快速玩转 Mixtral 8x7B MOE大模型!阿里云机器学习 PAI 推出最佳实践

阿里云大数据AI技术

数字化企业与传统企业有何区别?

天津汇柏科技有限公司

企业数字化

跨平台移动端开发框架NativeScript 发布正式版本_语言 & 开发_张天雷_InfoQ精选文章