There are many frameworks and libraries available that aim to help you to work with cloud services in Go. However, if you ask the Go community which is best, they'll probably suggest that you stick with the built-in packages. Doing so may seem strange for anyone coming from C or Java (or many other languages created before internet connected applications became commonplace), but the standard library for Go is very capable. We'll explore here how to work with the provided tools and add cloud service-based functionality to our code without additional dependencies.
To start looking at this, we'll return to the EmailMessage
model defined in the client
package at https://github.com/PacktPublishing/Hands-On-GUI-Application-Development-in-Go/tree/master/client, which was imported in previous chapters. By adding simple hints to this object, we can correctly serialize and deserialize in both JSON and XML formats with ease.