Jump to content
Larry Ullman's Book Forums

After Reading Modern Javascript, What'S The Next Step?


Recommended Posts

I am doing my best working on the book now. Just wonder what is the next step after finishing this book/ Maybe to learn more about JS frameworks?

 

I am also interested in HTML5+JavaScript development in mobile devices, do you guys think this will be one of the trends of mobile phone development?

Link to comment
Share on other sites

Mobile absolutely is the trend of the future, no doubt.

However, if you want the real low-down on mobile development, it's quite simple: The less JS, the better.

That doesn't mean you shouldn't use jQuery and whatnot, but just realize that moreso than desktop PCs, the amount of time required for mobile devices to download and process JS is exponentially higher.

As such, the lighter you can make you JS to accomplish the same task, the better.

 

So yeah, what to do next depends a lot on your long-term goal, but I would say being familiar with at least jQuery and Modernizr is good. Also, I would start looking into all the new APIs available in JS. Here are the ones I would recommend:

http://www.webrtc.org/

http://www.websocket.org/

http://www.chromeexperiments.com/webgl/

 

Also, while a little older (and luckily better supported), I'd look into XHR2, the 2D canvas, become very familiar with Ajax (and look into the History API), and many more.

 

I think all of that will keep you busy for a long time.

  • Upvote 1
Link to comment
Share on other sites

Hartley: I was surprised to hear you say that JavaScript downloads slow on mobile devices. What languages download faster? Would you consider them better suited to mobile development? Or is it a matter of all languages having their own pros and cons?

Link to comment
Share on other sites

There is no "faster" language, per se. The issue with a lot of JS and/or a lot of separate JS files is that all of that code has to be downloaded before it can be used.

Each JS file is a separate HTTP request, and as you probably know, JS code can get quite long (even when minified). As such, the act of simply downloading all the JS necessary for a page can be time-consuming.

 

And even once you have all of the JS files, the browser still has to parse and interpret all of that code, which can also be time-consuming if there is a lot.

 

Lastly, if there are a lot of complex calculations/DOM operations being performed by your JS, even once the code has all been downloaded and interpreted, you can still run into slowdown here and there.

 

And that's just for desktop PCs. The problem is exacerbated even more on mobile devices, which have limited processing power and bandwidth.

 

As such, the golden rule to good performance is to limit the JS you use as much as possible.

  • Upvote 1
Link to comment
Share on other sites

I checked some information online these two days, and here are some of my findings:

1. HTML5+JS development for mobile apps has one limitation at the moment: speed(as Hartley mentioned), compared with mobiles' native languages(Java, Objective-C, etc)

2. HTML5+JS has been used in MS windows 8 apps, and I think this will be a trend. MS also lanuched its MCSD certification for using HTML5+JS to development windows apps. (I am going to take the exams after finishing this book).

 

Though there are some limitations at the moment, I guess HTML5+JS will be used more and more in the future. So, I am going to go back and read Modern JavaScript now :)

Link to comment
Share on other sites

I think the future of the web is HTML5 + JS. Sure, it's slower than building a native app, but as time goes on, that difference in performance will decrease.

The main advantage of coding apps (i.e., sophisticated websites) with HTML5 + JS is that you can code everything once, and it'll work across the entire gamut of devices out there (and even ones that don't exist yet).

 

For the Facebooks of the world, a native app is likely a good idea, but for the 99.99% of us, a responsive site is more than enough, I think.

  • Upvote 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...