The project: address book
As mentioned in the introduction, this is a practical chapter. We are going to create a mini command-line interface (CLI) that lets us create and list contacts in an address book. Before we dive into the code, we will talk about the project itself and some of the architectural choices made in this project.
So, let’s talk about the project. This address book project was heavily influenced by the official tutorial in the Protobuf documentation (https://protobuf.dev/getting-started/gotutorial/). However, there are quite a few changes that I made to cover more Protobuf concepts. Here are the changes that I made:
- Instead of adding only a person’s contact in the address book, we will also be able to add a company’s contact. This lets us use
oneof
because the contact will be either a company or a person. - While the CLI will not cover searching the contact by name (this is a challenge for you), we made sure that it would be possible...