Calculator project
We are dedicating a separate section to explain the purpose of the calculator project. It is a lengthy example and thus it will be helpful to have a firm grounding before diving into it. The project should help you to achieve the following goals:
- Observe a fully functional example that has a number of simple and well-defined functionalities.
- Extract common parts among the various types of sockets and channels and have them as some reusable libraries. This reduces the amount of code we write significantly, and from a learning point of view, it shows you the boundaries that are common between various types of sockets and channels.
- Maintain communication using a well-defined application protocol. Ordinary socket programming examples lack this very important feature. They generally address very simple, and usually one-time, communication scenarios between a client and its server.
- Work on an example that has all the ingredients required...