Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The Secrets of High-Performance Mobile JavaScript Applications #79

Open
v0lkan opened this issue Jan 14, 2014 · 0 comments
Open

The Secrets of High-Performance Mobile JavaScript Applications #79

v0lkan opened this issue Jan 14, 2014 · 0 comments

Comments

@v0lkan
Copy link

v0lkan commented Jan 14, 2014

Mobile JavaScript development requires focus on different strategies and methodologies, than traditional web applications. The processing power (both CPU and GPU) is limited, memory is limited. Latency is a killer. Memory leakage is a problem. Dealing with cache manifests and offline browsing is also an important thing to consider.
Therefore, you might need to unlearn what you've learned before.

Let's start with the memory: Memory leakage is a problem, because the application will most probably be a single page fat-client app, that will not be switched off for hours, or even days. Dealing with cache manifests and offline browsing is also an important thing to consider.

Therefore, to create a fast (near 60fps) mobile javascript application that uses less memory as possible; you might need to re-evaluate your options. -- In that regard, my presentation will be roughly around the following subject matters:

  • A multi-tiered architecture may be shooting yourself in the foot
  • Not using a library/framework should be the way to go, if you can.'
  • The less objects you create, the better.
  • The less the size of DOM, the better (and you might need special techniques like DOM-sharding)
  • Being minimalistic is your friend. If you need a banana, don't pass a gorilla that holds the banana and the entire jungle with it.
  • You can create applications that perform quite like their native counterparts, if you pay some extra attention to details.

In my presentation I would like to talk about the best practices to make your single page, fat client, hybrid JavaScript web application as snappy as its native counterpart.

Some of the techniques that I offer might seem arguable, and open to discussion. And I won't be talking about "the only way" that works; per contra I will be discussing "a way that works all the time".

Prerequisites:
Familiarity with JavaScript, HTML5, and CSS3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant