I’ve been using Telerik NativeScript for a few months now and figured it would now be appropriate to share my experience and opinions of the framework. I’ve already compared NativeScript against Ionic Framework, but this article is going to be a little different.
I have no plans to make comparisons against other frameworks in this article. Instead we’re going to take a look at what NativeScript can and can’t do and how I feel about everything. This article will be opinion based more than anything.
Let me start by saying that although I use NativeScript all the time, I have not published any applications with it to Google Play or iTunes. I’ve not had an idea worth pursuing in that level of depth, but it hasn’t stopped me from using NativeScript.
NativeScript is a mobile framework created by Telerik, a Progress Company. It allows you to build Android and iOS applications using JavaScript.
NativeScript via Telerik:
NativeScript enables developers to build native apps for iOS and Android while sharing the application code across the platforms. When building the application UI, developers use our libraries, which abstract the differences between the native platforms.
In short, you’re developing mobile applications using a single code set. This single code set can use native platform APIs such as, but not limited to, the device camera or bluetooth.
There are a few things that I find incredibly attractive when it comes to NativeScript. These are benefits that have kept me attached to the framework for as long as I’ve been.
This is pretty standard among mobile frameworks. If you’re developing strictly with the Android SDK or Apple’s Objective-C or Swift, you’re developing using multiple programming languages. Having to know an iOS development language and an Android development language is exhausting.
NativeScript allows you to use JavaScript as the core language to build cross platform applications. This is combined with XML and CSS for developing application user interfaces.
Not seeing the value yet? Let me tell you a story.
Back in my Android SDK days (2011) I created and released a few apps to Google Play, formerly known as the Android Marketplace. My most popular Android application to date is called SQLTool Pro Database Editor. It was developed strictly using Java and the Android SDK.
Where am I going with this?
This is only an Android application. I develop alone and as a hobby and don’t have the time to learn and support another mobile development language. This is why I could never release SQLTool Pro as an iOS application. Since I know JavaScript (pretty much everyone does), had NativeScript been around I could have developed cross platform with just that single language.
This is the best part of NativeScript in my opinion. When you develop your applications you’re using XML and CSS for the UI and JavaScript for everything else. In a logical world, the use of these web components would need to be combined with a web view. I mean, that is how other mobile frameworks do it.
Mobile web views are slow, and worse, they behave differently on different platforms and platform versions. It is difficult to get consistency when using them and results in inconsistent experiences for the users of your applications.
NativeScript instead maps the XML layouts and styles at build time to their native counterparts leaving you with a 100% native mobile application. There are not inconsistencies in performance when it comes to native layouts and code. Sure there may be differences in appearance, but that is normal between platform versions.
The support that Telerik gives to anyone developing NativeScript applications is outstanding. If you’re seeking help you can reach out for support in Stack Overflow, Twitter, or in the NativeScript Slack Channel.
It is not just one person on the NativeScript team that responds to support inquiries. This is not something that I see happening often.
My personal preference is to use Slack. There are a lot of community members and staff members using it and everyone is very positive and supportive of each other.
I would recommend Telerik NativeScript to anyone looking to develop mobile applications. I found it very easy to use in comparison to pure native and the applications you can develop are amazing.
Here are some cool demos via animated GIF files, courtesy of Brad Martin. You may have to click them to see the animation:
Being able to prototype an application in less than half the time of a pure native application is a huge benefit. Coming from both the pure native and mobile hybrid world, I speak on experience.
I’ve dabbled with many different mobile technologies on The Polyglot Developer, but NativeScript has received most of my attention lately. It allows you to create stunning native applications without needing to know Objective-C or Java.
With Angular stabilizing in NativeScript, it has the potential to being the best of the available mobile frameworks.