Either way, you should know, specifically and most importantly, how to install Node.js on your system, how to create a basic application with Express.js, what functions are, what asynchronous callbacks are, and how events work. You should also have a text editor you feel comfortable with a 10. There are plenty around, but I will be working with Visual Studio Code. Visual Studio Code is open source and already comes with syntax, highlighting, IntelliSense, and code formatting for Node. It's even written in Node.js.
I highly recommend this one. Before we start, you should install Node.js on your system, and I recommend using version six, as it's the current, long term supported version. What does this mean? For enterprise-grade applications, you should not rely on the newest Node.js release there is. You should rather use a version branch that is proven to be stable and guaranteed to be maintained for a long time. Let's look at the Node LTS website. As we see, Node.js has an enterprise-grade release model, and 6.x will be supported at least until April 2018.
This means that it will receive patches and improvements while the interfaces will stay the same. Updating within the 6.x release line should be possible without any problem. For the rest of the course, I assume that you have Node.js 6 installed on your system. For version control, we will use Git. If you are completely new to version control and Git, I recommend that you watch the course Git Essential Training by Kevin Skoglund. For this course, I assume that you have Git already installed on your system.
You can test this by typing Git on the terminal. Open the terminal, and I'm typing Git, and if you get something like that, you're all set.
- Adding debugging
- Getting started with refactoring
- Transforming slack-client into a class
- Creating a test infrastructure with Mocha, Should, and Istanbul
- Creating tests for the service registry
- Setting up continuous integration with Codeship
- Adding automated security audits with Snyk
- Adding endpoint security
- Setting up your servers for deployment