1.2 What You Need
There are not many prerequisites for this course. The main requirement is that you have Node installed on your development machine. Along with installing Node, you will use the Node Package Manager (NPM) to get all the necessary packages and dependencies required to follow along. In order to improve your development experience, you could also install a quality code editor and terminal app. I'll be using Visual Studio Code and iTerm 2.
1.Introduction2 lessons, 05:46
2.Getting Started4 lessons, 29:58
3.Building the API11 lessons, 1:16:10
4.Conclusion1 lesson, 01:37
1.2 What You Need
Let's take a few moments and talk a little bit about some of the prerequisites that you're gonna need to follow along in this course. Now, we are going to be writing an API using the COA framework, but in order to do that, we're gonna need to actually have Node.js running. Now, an interesting thing is that, COA is actually a web network framework that runs on top of Node.js. But, it is kind of designed and implemented in such a way that the idea is that, you can use the COA web framework components, and not use the actual underline Node.js components at the same time. So what you end up doing instead of where, if you were writing an express application, web application, you would actually be using express pieces but then also using some of the node functionality directly. Where as now with COA, the idea is we are not gonna be using the Node.js component directly, we're actually going to be using all COA components which is kind of a cool idea. And you'll see that as we go along. But regardless, in order to follow along with this course, in order to create a COA web application, you're going to need Node.js and you're going to need to have at least Node 7.6. Now that's a little bit of an older version that's been around for a while, but the reason that you're gonna need at least that one, is because we're going to be taking advantage of some functionality that was released in Ecmascript 2015, ES 2015, specifically the Async or Asynchronous functionality. If you're unfamiliar with that, don't worry about it. We're gonna talk about it as we go. But basically the idea is, is by using some new keywords async and await. We're gonna be able to write more sequential looking code and not have to fall into the whole old callback hell kind of way of writing code, where you're passing callback after callback, all the way down your call chains. And it gets kind of messy and you kinda muddy up your code a little bit, and it just kinda doesn't look nice. And sometimes it's hard to follow. So now with this, you're gonna be able to write code that looks very sequential but is actually running asynchronously, in a similar fashion to how the callbacks were actually working. So that's kinda nice. So, you gonna need to have at least node 7.6 to be able to use that functionality. Now there are other ways around that. But, in this course we gonna stick with the latest and greatest. I'm running a 9.x version, but you could use either the 8.11.3 LTS or the 10.7.0 current. Really, any of those will work just fine. Just try to find something that is at least 7.6 or above. Now once you have that, you're pretty much ready to go. I only have a couple of other recommendations, I would recommend that you use a kind of a programming minded text editor. You could use any text editor you want. Anything built in to your development machine will work just fine. But if you've been following along with any with any of my courses recently or for quite some time, as a matter of fact, you're gonna know that I've become quite the Visual Studio code fanboy, almost, if you will. So, I'm gonna recommend if you wanna follow along with me, that you use Visual Studio code. It's a very nice text editor. It's very simple to use and easy to get up and running. And it's very extensible for writing larger applications as well. So, I would recommend you getting any text editor that you want. But if you're kind of up in the air and not sure what you wanna use and you wanna follow along with me, go ahead and grab Visual Studio Code. It's a free download, and I promise if you give it a little bit of time, and you work with it a little bit, I think you're probably gonna like it. In addition to those, really, you'll be going in and out of a terminal a little bit here and there. So once again, you're absolutely free to use any sort of built in terminal or shell application, that is built in to your platform, into your operating system. That'll work just fine as well. I tend to use on my Mac I use iTerm2, this is another simple terminal application emulator that I am very comfortable with, I'm very familiar with and I'm very happy using but once again, you don't have to use that one its fine. We're not gonna do a lot In the shell we're gonna do some logging, and so you can see how requests are coming in and out and how we're processing those requests. But you can do that in any terminal application. So it doesn't have to be this one. So but once again, if you wanna follow along with me and you're running on a Mac, because this is a terminal emulator for Mac OS, then go ahead. You can try this out if you want, otherwise you can use anything that's built in. So, once you have your tools lined up, you have your text editor. You have your Command prompt or terminal, and you have Node.js installed and ready to go, then we're ready to start getting into building an application with COA. So now that we have these tools, let's go ahead and start building an application.