Now that we've had experience with JavaScript both on the frontend and the backend with Node.js, let's discuss what it really means to have the two halves tied together. We know that JavaScript on the frontend is great for user interactions, visuals, data validation, and other user-experience related pieces. Node.js on the backend is a powerful server-side language that helps us do pretty much anything we need from most other server-side languages. So, what does combining these two ends look like in theory?
You may be wondering why there even are two ends of an application. We understand that PythonNode.js, and JavaScript all do different tasks and act in either the frontend or the backend, but what is the theory behind this? The answer is this: there is a principle of software engineering known as the separation of concerns, which basically states that each piece of a program should do one or a few tasks and do them well. Instead of...