NativeScript - NativeScript
| Ursprungliga författare | Telerik av Progress. |
|---|---|
| Utvecklare | Framsteg och gemenskap |
| Initial release | 2014 |
| Stabil frisättning | 8.0.8 / 15 juni 2021
|
| Förvar | |
| Skrivet i | JavaScript , TypeScript |
| Plattform | Plattformsoberoende |
| Licens | Apache -licens 2.0 |
| Hemsida | www |
NativeScript är ett ramverk med öppen källkod för att utveckla mobilappar på Apples 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.