|
HTML AND JS WERE NOT DEVELOPED TO RUN NATIVELY ON DEVICES! WHY WOULD YOU WANT THEM TO RUN ON DEVICES? Please don't shout. HTML and JS were developed to run on any device, past, present and future. HTML is actually pretty good at presenting most UI state along with documents - the UI of the vast majority of native device apps is really not hard to present as html, the only roadblock is the vendors lack of focus on mobile web view performance. JS is a mixed bag, and as you say pretty rushed, and not the favourite language of many - I wouldn't want to write an app in it, though of course it is possible. The choice developers are presented with here is to commit to learning each new API/Language on the continually shifting sands of OS vendor APIs for multiple vendors/devices, or to commit to an open but less performant toolkit they know will be around for a while, but which has the advantage of being stable, cross platform, and not tied to any specific vendor. Clearly you don't feel the pressure of being tied to specific vendors and having to produce multiple binaries on a growing array of platforms both mobile and desktop, but others do, and this is mostly why they choose to use web tech on mobile or desktop. It's a very political and economic choice not one based on language syntax or capabilities alone, if you attempt to simply compare C and js on a technical level for example you will fail to understand why the choice is made. I fully expect that trend of web everywhere to increase if/when HTML starts offering more choice of languages (NaCl/asm.js) and perhaps more sophisticated layout (though for present uses it's not bad for that purpose). At that point, why choose a native API which will be deprecated in 5 years, when you can truly write once and run anywhere (web, mobile, desktop). The people native apps benefit the most is OS vendors, because of lock-in, for both consumers and developers having a more open cross platform tech is clearly desirable (easy to switch platforms or for developers serve all platforms), even if not fully practical at present. |
C and Java can run on any platform(far more than HTML and JS which were developed to run in browsers), what lock in?