NativeScript - NativeScript

NativeScript
NativeScript logo.png
Ursprungliga författare Telerik av Progress.
Utvecklare Framsteg och gemenskap
Initial release 2014 ( 2014 )
Stabil frisättning
8.0.8 / 15 juni 2021 ; 3 månader sedan ( 2021-06-15 )
Förvar
Skrivet i JavaScript , TypeScript
Plattform Plattformsoberoende
Licens Apache -licens 2.0
Hemsida www .nativescript .org

NativeScript är ett ramverk med öppen källkod för att utveckla mobilapparApples iOS- och Android- plattformar. Det var ursprungligen tänkt och utvecklat av Progress. I slutet av 2019 togs ansvaret för NativeScript-projektet över av mångåriga Progress-partner, nStudio. I december 2020 övervakade nStudio också introduktionen av NativeScript till OpenJS Foundation som ett inkubationsprojekt. NativeScript -appar är byggda med JavaScript eller genom att använda ett programmeringsspråk som överförs till JavaScript, till exempel TypeScript . NativeScript stöder Vinkel och Vue JavaScript-ramverk. Mobila applikationer byggda med NativeScript resulterar i helt integrerade appar, som använder samma API: er som om de hade utvecklats i Xcode eller Android Studio . Dessutom kan mjukvaruutvecklare återanvända tredjepartsbibliotek från CocoaPods , Maven och npm.js i sina mobilapplikationer utan behov av omslag.

Utveckling

NativeScript publicerades offentligt först i mars 2015. Version 1.0.0 följde två månader senare. Ramverket blev snabbt populärt och nådde 3000 github-stjärnor och över 1500 följare på Twitter strax efter det offentliga släppet. Under tiden finns över 700 plugins tillgängliga, som antingen officiellt stöds av Progress eller härrör från öppen källkod. Användningen av Angular är en valfri utvecklingsmetod som gör det möjligt för applikationskällkoden att delas mellan webbplattformen och mobilplattformen.

Strukturera

NativeScript och alla nödvändiga plugins installeras med pakethanteraren npm . Projekt skapas, konfigureras och kompileras via kommandoraden eller ett GUI -verktyg som heter NativeScript Sidekick. Plattformsoberoende användargränssnitt definieras med XML- filer. NativeScript använder sedan de abstraktioner som beskrivs i XML -filerna för att anropa inbyggda UI -element i varje plattform. Applikationslogik som utvecklats i Angular och TypeScript kan också utvecklas oberoende av målplattformen. Ett NativeScript -mobilprogram är byggt med node.js -körning och verktyg. Progress syftar till ett förhållande på 90% gemensam kod mellan iOS- och Android -plattformarna.

Direkt åtkomst till inbyggda plattforms -API: er och kontroller

Plattformsoberoende användargränssnitt definieras med XML- filer. NativeScript använder XML-datastrukturerna som representerar gränsplattformsabstraktionen för att utlösa plattformsspecifik kod som direkt interagerar med de inbyggda elementen i måloperativsystemet. Detta innebär att ett samtal till NativeScript Button API ger en UI -abstraktion för Button, som direkt anropar UIButton på iOS eller com.android.widget.Button på Android.

Medan programmets källkod är skriven i JavaScript, TypeScript, Angular eller Vue.js, är källkoden inte kompilerad eller på annat sätt muterad. Källkoden as-is körs direkt på enheten. Detta arkitektoniska val eliminerar behovet av tvärkompilering eller överföring. Även om programmets källkod är skriven på språk som vanligtvis förekommer i en webbläsare (eller i en mobilapp som innehåller WebView) körs NativeScript-program direkt på den inbyggda enheten. Det finns ingen DOM -manipulation eller någon obligatorisk webbläsarinteraktion.

Anmärkningsvärda funktioner

Native API -reflektion

En annan anmärkningsvärd egenskap är användningen av reflektion för att hantera inbyggda API -slutpunkter. I stället för att kräva separata bindningsskikt mellan NativeScript och varje mobilplattforms API använder NativeScript reflektion för att få information och metadata om de ursprungliga plattformens API: er. Nya funktioner som läggs till i ett inbyggt plattforms -API är tillgängliga omedelbart.

Ett annat sätt att använda reflektionsfunktionen är att arbeta med tredjepartsbibliotek. Eftersom JavaScript (eller TypeScript/Angular) kan prata direkt med inbyggd kod, behöver du inte skriva bindande lager i Objective-C, Swift, Java eller Kotlin.

Vinkelintegrering

Med lanseringen av NativeScript 2.0 är det möjligt att använda Angular för att bygga plattformsoberoende mobila applikationer. När du använder Angular med NativeScript har du dessutom möjlighet att dela stora bitar kod mellan dina webb- och mobilappar.

Vue.js -integration

Vue.js-ramverket stöds i NativeScript via plugin-programmet nativescript-vue.

Stödja verktyg och tjänster

  • NativeScript Sidekick är ett grafiskt användargränssnitt som bygger på de funktioner som tillhandahålls av NativeScript CLI. Med Sidekick kan en utvecklare utnyttja appmallar, molnbaserade versioner för iOS och Android och publicera appar till de offentliga appbutikerna.
  • NativeScript Playground låter utvecklare experimentera med NativeScript i en webbaserad miljö och förhandsgranska appar på fysiska enheter.
  • NativeScript Marketplace är en kurerad källa till NativeScript-plugins, förbyggda appmallar och körbara exempelappar.

Referenser

externa länkar