Go Packages and Functions
The main focus of this chapter is Go packages, which are Go's way of organizing, delivering, and using code. The most common component of packages is functions, which are pretty flexible and powerful and are used for data processing and manipulation. Go also supports modules, which are packages with version numbers. This chapter will also explain the operation of defer
, which is used for cleaning up and releasing resources.
Regarding the visibility of package elements, Go follows a simple rule that states that functions, variables, data types, structure fields, and so forth that begin with an uppercase letter are public, whereas functions, variables, types, and so on that begin with a lowercase letter are private. This is the reason why fmt.Println()
is named Println()
instead of just println()
. The same rule applies not only to the name of a struct
variable but to the fields of a struct
variable—in practice, this means that you can have a...