alien4u
03/07/2018, 1:58 PM* quality js libs have thorough unit tests - hence they have minimal defects. I can't say the same for NS apis.
NetSuite was sold to Oracle for 9 Billion Dollars for me is hard to believe they don't have Unit Tests but I may be wrong.
Their API/Code is not perfect, have bugs, weird behavior but is the OFFICIAL API and the only one they HAVE to maintain and FIX.
From an Individual Developer stand point you are right but if you are pragmatic and think from the Company side (who pay the money) having 3 abstraction layers when you could have only one using the NetSuite API is not a good option.
If I'm a NetSuite Manager/IT Director I would never allow/have TypeScript/netsuite-fasttrack-toolkit and NetSuite API code on my NetSuite implementation, why?
Just because if my developer dies on a car accident I would not be able to find a Certified NetSuite Developer to take the job, I need a Certified NetSuite Developer who also know TypeScript and also know this Other API(netsuite-fasttrack-toolkit) which make the whole thing just a joke.
And the most important point you are missing:
NetSuite is not an Open Source Project but Rhino is Rhino is an open-source implementation of JavaScript written entirely in Java
.
What does this mean? Well for me this mean NetSuite/Oracle can decide tomorrow modify Rhino Source Code and make the Date Library/Methods behave different than the standard JavaScript Dates, they could update their API(all this without NOTICE) and all those changes would be TRANSPARENT for any code using their API but any other thing WOULD BREAK.
As an example moments.js
would break and anything like that.