Content deleted Content added
m v1.41b - WP:WCW project (Category duplication - Link equal to linktext) |
m WP:CHECKWIKI error fix for #61. Punctuation goes before References. Do general fixes if a problem exists. - using AWB (12130) |
||
Line 9:
| programming language = [[JavaScript]], [[TypeScript]]
| platform = [[Cross-platform]]
| license = [[
| website = {{URL|www.nativescript.org}}
}}
'''NativeScript''' is an [[open-source software|open-source]] framework to develop apps on the [[iOS|Apple iOS]] and [[Android (operating system)|Android]] platforms. It was originally conceived and developed by Progress.<ref>https://www.infoq.com/news/2015/03/nativescript</ref>
==Development==
NativeScript was publicly released first in March 2015. Version 1.0.0 followed two months later.<ref>http://www.i-programmer.info/news/167-javascript/8561-nativescript-100-released.html</ref>
==Structure==
NativeScript and the all required plugins are installed using the package manager [[
Platform independent user interfaces are defined using [[XML]] files. NativeScript then uses the abstractions described in the XML files to call native elements of each platform. Application logic developed in Angular2 and TypeScript can be developed independent of the target platform as well. A NativeScript mobile application is built using the node.js runtime and tooling.<ref name=heisede3282619>http://www.heise.de/developer/artikel/Mit-JavaScript-wie-hausgemacht-NativeScript-3282619.html</ref>
==Direct access to native platform APIs and Controls==
Platform independent user interfaces are defined using [[XML]] files.<ref>https://docs.nativescript.org/ui/basics</ref>
While application source code is written in JavaScript, TypeScript or Angular, the source code is not compiled or otherwise mutated. The source code as is runs directly on the device. This architectural choice eliminates the need for cross-compiling or transpiling
==Notable features==
=== Native API Reflection (A.K.A 0-Day Access) ===
Another notable feature is the use of reflection to handle native API end points. Rather than require separate binding layers between NativeScript and each mobile platform API, NativeScript uses reflection to gain information and metadata about the native platform APIs. New features added to any native platform API are available immediately.<ref name=infoworld2893706/>
Another way the reflection feature is used is in working with 3rd party libraries. As JavaScript (or TypeScript/Angular) can talk directly to native code, there is no need to write binding layers in Objective-C, Swift or Java.<ref name=visualstudiomagazine20150309 /><ref>https://docs.nativescript.org/core-concepts/accessing-native-apis-with-javascript</ref>
▲Another way the reflection feature is used is in working with 3rd party libraries. As JavaScript (or TypeScript/Angular) can talk directly to native code, there is no need to write binding layers in Objective-C, Swift or Java <ref>https://docs.nativescript.org/core-concepts/accessing-native-apis-with-javascript</ref> <ref name=visualstudiomagazine20150309 />.
=== Angular 2 integration ===
With the launch of NativeScript 2.0, it is now possible to use Angular 2 to build cross-platform mobile applications <ref>https://www.nativescript.org/blog/nativescript-2.0---the-best-way-to-build-cross-platform-native-mobile-apps</ref>
Line 45:
*
*
==External links==
{{Portal|Free software}}
|