• Originally created at Google.
  • Influenced by C, C++, C# and Java.
  • Popular with developers whom are making cloud-based services.
  • Strongly typed language.
  • Compiles to operating system-specific binary executables, creating very fast runtimes.
  • Go has been used in Docker, Kubernetes, Fedora CoreOS.
  • Simple Command-line routines.
  • Web-based applications.
  • Systems programming.
  • Go implements many Object Oriented Programming principles.
    • Encapsulation with types and struts.
      • Encapsulation means you can build entities in a language. These are wrappers for complex functionality.
      • structs are known as data structures.
    • Polymorphism with interfaces.
      • Polymorphism is the ability to deal with a type or object, as though it was another type.
    • Go does not support Type Inheritance.
    • Go does have interfaces. This includes contracts and can be satisfied by multiple types.

Updated: