Where to Start?
- Do you have a firm grasp of major JS concept types, like numbers and strings?
- Do you know how to make and use JS functions?
- Do you understand ES6 classes?
- Do you distinguish an array and an object?
- Can you transpile the code?
- Do you know the JS variables like ‘let,’ ‘const,’ and ‘var’?
- Can you apply the JS operators and control structures?
These are some basic elements of the programming language without which you can hardly proceed to developing any JS product. But don’t panic; you don’t need to learn for years before starting the work. just master the fundamentals and then start practicing; you’ll hone your skills in the process.
The most popular JS libraries for game creation are Three.js (a handy resource of animated 3D graphics) and TweenMax (fast and flexible tool with a variety of movement and animation tools).
But a newbie coder should still keep in mind that JS is not a universal language for game dev, and its propriety depends on the game’s type. For instance, JS and Canvas HTML5 are a perfect combo for producing small browser games, but their transfer to mobile platforms may pose certain challenges, so in case of a grand-scale gaming project, a better choice is Java or Objective C.
Especially popular are mobile apps as the segment of mobile users is on the constant rise, with more and more people preferring to have the entire set of useful features and functions at the convenience of their smartphone.
- React Native (an FB-owned framework launched in 2013 and available to JS coders free of charge; an ideal choice for mobile app development)
- Tabris.js (a JS framework enabling development for both iOS and Android easily and quickly)
- NativeScript (another free, open-source tool for mobile app development for any platform)
- Fuse (a tool for cross-platform mobile app development based on the UX markup)
This is surely not an exhaustive list of JS frameworks, and you may find a realm of others, already in use for many years or just emerging in the market. Try different ones and pick the one that suits your coding style and the required functionality the best.