Chapter 3. Better, Faster, but not Harder
The game we just developed will work just fine on almost all devices and in almost all browsers, the main reason being it's very simple and contains few moving sprites. However, as soon as you'll try to make a more complex game like we will in the following chapters, you'll realize that you need to take great care to write optimized code for obtaining good performance.
In this chapter, we will look back at our previous code and propose an optimized version of some of its aspects. Some of those optimizations are there to make your game run faster and some others are there to make your code more readable and easier to maintain.
In general, it's a good practice to implement a first version of your game with fewer features without worrying too much about performance, and then optimize and add more functions to it. This helps you to avoid spending too much time on something you may not need in the game, allowing you to benchmark your optimizations to make...