Since its origins more than 20 years ago, JavaScript has evolved from a basic language designed to enhance web pages by adding some interactivity to them, to a full language that has been used to develop quite large, modern websites of very high complexity, with highly interactive behaviors and fast response times, that successfully challenge classic desktop applications. Not only has JavaScript become the tool for web development, it has also occupied a place in server development, starting to edge out more conventional languages and frameworks such as PHP, Java, and .NET, since developers can also use their JavaScript knowledge when working with Node. Finally, two other areas, mobile application and desktop program development, both previously reserved for specific languages, have also become part of JavaScript's wide range of tools.
Given this wide scope of JavaScript usage, in this book, we'll start by providing insights on the new features of the latest version of JavaScript, which can be applied everywhere, and also cover several modern tools that will help you with development. Then, we'll move on to using the language for specific areas, starting with the development of a services-based server, going on to create a web page that will use those services, then creating a mobile native version of the same web page, and ending up by producing a desktop executable program—each and every one of our products based on JavaScript and our set of tools.