Before diving into Nativescript


#1

Hello there :wave:,
I really want to develop next app in Nativescript(tried Ionic and React Nativr but they just didnt cut it). I have few questions beforhand:

  1. Are there anyone that came from native background? If yes, do you ever go back native? How fast can you develop apps once you had grasp on the framework?
  2. What is the most updated Nativescript guide?
  3. Best IDE? (plz no vim vs emacs).

Thankss :blush:


#2

What roadblocks in Ionic or React Native did you face that made them not make the cut?

  1. Backend & Web Development background - hate fiddling in Native code, love NativeScript’s API and easy of accessing native APIs with typings.
  2. Depends on what stack you are using (NativeScript Core vs. NativeScript Angular) and what features you are wanting to see. The groceries app is the default application, but there are plenty of community ones.

i.e. I’ve created some:

  1. VS Code is the preferred editor for TypeScript projects. You can use any IDE of your liking. Some developers prefer WebStorm as well.

#3

As for React Native for a beginner I found really annoying having two official CLIs - CRNA and React-native CLI, also the whole ‘compiling’ on Expo thing is really a nonsense to me. RN claims to offer faster developing yet almost nothing works out of hand, there is always a need for little tweaks or hacks.
Tbh, I used Ionic 1 A LOT, made even some apps with it, then it came Ionic 2 and transition they offered was really poor, also the idea of running an app in a webview(when you come from native) is very mind boggling.

So what are you going to suggest me Core or Angular?
Most definitely I am going to write one bigger app in Nativescript, almost got API ready for it. How complicated are REST calls and JSON parsing, I guess it as simple as in Angular ?

Thank you for the great answer :wink:


#4

I’m gonna advocate Core :slight_smile: Less code, just faster (because there’s no angular wrappers, or NEED to webpack)

But if you love Angular :+1: it probably has more uptake than core and is certainly well supported, its like a layer on core.

Calling apis is really easy
https://docs.nativescript.org/cookbook/http

…and JSON parsing, I mean… it’s javascript, couldn’t be easier!


#5

+1 For NS Core.
AKA PAN, or Plain Awesome NativeScript


#6

I’il give the Core a chance then! I’m just was afraid if I am missing some features from NG+TS version. However I see there are some frameworks with VueJS on top of NativeScript what about that? :smiley:

Yeah, I guessed so. Most annoying thing in Native android is working with JSON, if there are a lot of requests and parsing over and there, I’d rather kill myself. :frowning:


#7

I’m going to advice not using NS Core. Your backend suggests you have a grasp on Angular and all of that is going to feel like home when you come into NativeScript Angular instead. In NS Core, you have to create view models and use property notifiers to let the view know when an observable value changes - none of that is required for NS Angular.

I have also developed apps in React Native and Ionic, my feedback from that environment to this is:

  • React Native’s live reload is inheritly faster, as they push your code through the pseduo-app in the simulator.
  • Hacks are less needed in NativeScript, but occassionally you do need to get at the “native-like” code to fix something or add custom behavior. This is WAY easier than Cordova or React Native. You just use typings with good-ole TypeScript in your components and you are good to go.
  • Ionic has its place in the native-sphere, but as you found, WebViews are limiting. Cordova does allow you to get access to the Native APIs, but often those plugins are dozens of versions behind the current API and leverage deprecated methods. This is not the case with NativeScript, as the plugins and runtime are based off the current APIs from those Pods or framework.

#8

True! But you also have a performance layer to potentially think about which core just inherently doesn’t have\need.

…it’s a give and take