NativeScript简介

NativeScript简介

在本文中,我们将看一下NativeScript,这是一个用于使用JavaScript构建移动应用程序的开源框架。 在本文的结尾,您应该对NativeScript是什么,它如何工作以及使用什么技术有一个很好的了解。 除此之外,我们还将回答您在探索新技术时可能遇到的常见问题,例如它与Cordova和React Native等替代技术有何不同,以及Telerik如何参与该项目。

1.什么是NativeScript?

NativeScript是用于构建跨平台本机移动应用程序的框架。 它允许开发人员使用XML,CSS和JavaScript来构建适用于Android,iOS甚至Windows Universal Platform的应用程序。 与使用WebView呈现应用程序UI的Cordova不同,NativeScript使用本机平台的呈现引擎,这意味着它提供了真正的本机用户体验。

2.优点

它是免费和开源的。 这意味着只要您不违反Apache 2.0许可 ,就可以为代码做出贡献并按需使用它。 它允许您为Android和iOS设备构建真正的本机应用程序。 NativeScript公开的每个UI组件都转换为其相应的本机UI组件。 它使您可以通过JavaScript代码访问本机平台API。 您不需要具有Java或Objective-C知识就可以使用本机平台API,因为您可以全部使用JavaScript编写它们。 这意味着,如果您需要访问特定的设备功能,则只需学习如何使用JavaScript访问本机API即可。 与混合移动应用程序框架(例如Cordova)提供的体验相比,它为用户提供了更接近本机的体验。 它使开发人员可以通过Telerik平台轻松构建,部署和管理其NativeScript应用程序。 我将在后面的部分中进一步讨论Telerik平台。 它对新的本机平台提供零日支持。 这意味着您可以在Google或Apple更新其平台时立即使用最新的本机API和UI组件。 该文档提供了大量有关如何入门 ,核心概念和用户界面的信息。 还有示例, 教程 , 论坛 , 堆栈溢出问题和示例应用程序 ,可以帮助初学者开始使用NativeScript。 您可以使用TypeScript编写NativeScript应用程序。 TypeScript是一种可转换为JavaScript并向JavaScript添加面向对象的编程功能的语言。 您可以在npm上找到的任何不依赖浏览器和DOMJavaScript库都可以在NativeScript中使用。 这种文库的实例包括实用程序库,如lodash和下划线 。 您可以使用NativeScript CLI进行几乎所有操作。 包括创建新项目,添加平台,在设备上运行以及部署到特定平台等基础知识。 除此之外,您还可以安装插件,调试应用程序并上传到应用程序商店。

3.缺点

NativeScript中没有HTML和DOM。 您将需要学习如何使用不同的UI组件来构建应用程序的UI。 缺少经过验证的插件。 在撰写本文时,总共只有16个经过验证的插件 。 尽管npm上列出了许多NativeScript插件 ,但您永远无法真正确定它们的质量。 开发人员需要了解本机Android和iOS API,才能访问设备硬件和其他特定于平台的功能。 由于其本机性质,您只能在实际设备或仿真器上测试应用程序。 这会使测试的初始设置变慢。 但是,一旦在设备上运行它,就可以接管热重装。 这意味着每次您对源代码进行更改时,它都会立即重新加载应用程序以反映更改。 并非所有UI组件都是免费提供的。 如果要使用图表和日历等组件,则需要购买Telerik UI for NativeScript 。

4.如何运作?

NativeScript由JavaScript虚拟机,运行时和桥模块组成。 JavaScript虚拟机解释并执行JavaScript代码。 然后,桥模块将调用转换为特定于平台的API调用,并将结果返回给调用方。 简而言之,NativeScript为开发人员提供了一种通过JavaScript而不是iOS上的Objective-C或Android上的Java来命令本机平台的方法。

当然,幕后还有很多事情要做,但是Telerik的开发人员比我能更好地解释了它,因此,如果您想了解更多有关NativeScript内部工作原理的信息,可以阅读Georgi Atanasov在NativeScript上的文章-技术概述或TJ VanToll关于NativeScript的工作原理的文章。

5.它使用什么技术?

使用NativeScript,您可以使用XML来描述应用程序的UI,使用CSS进行样式设置以及使用JavaScript来添加功能。

如果您更喜欢使用框架来编写JavaScript代码,则可以将TypeScript与Angular 2一起使用。

对于样式,NativeScript仅使用CSS的子集。 这意味着不能使用浏览器环境中可用的所有CSS功能。 例如,您不能使用浮点数或位置属性。 这是受支持CSS属性的完整列表 。 就像在浏览器中一样,您可以添加仅适用于整个应用程序,特定页面或特定UI组件的样式。 如果您更喜欢使用Sass,则可以安装NativeScript Dev Sass插件 。

为了描述用户界面的结构,可以使用XML。 应用程序中的每个页面都应位于其自己的XML文件中。 NativeScript带有预定义的用户界面小部件或组件,可用于构建应用程序的UI。 其中一些组件类似于您在浏览器中使用的不同HTML元素。

例如,有一个Image组件,它等效于img元素,或一个TextField组件,等效于具有文本类型的input元素。 诸如点击按钮之类的事件处理程序将添加到组件本身中。 这是一个例子:

相关推荐

一天玩几小时游戏最合理 玩游戏一天最多玩几个小时?
12寸是多少厘米?换算12寸为厘米的长度
PVP冰心进阶版输出教学 雷电法王的必修课