Go is an object oriented programming language. It may not have inheritance, but in this 20 minute video from the Bangalore meetup, I will show you how object oriented programming practices and techniques can be applied to your Go programs. From an object oriented standpoint, Go does provides the ability to add behavior to your types via methods, allows you to implement polymorphic behavior via interfaces and gives you a way to extend the state and behavior of any existing type via type embedding. Go also provides a form of encapsulation that allows your types, including their fields and methods, to be visible or invisible. Everything you need to write object oriented programs is available in Go.



Example 1 - Methods:
http://play.golang.org/p/hfRkC6nKag

Example 2 - Interfaces:
http://play.golang.org/p/F1UyKlTh3k

Example 3 - Extending Types:
http://play.golang.org/p/JJ811lBwoz

Example 4 - Overriding Inner Types:
http://play.golang.org/p/-xQFBv9_82

Trusted by top technology companies

We've built our reputation as educators and bring that mentality to every project. When you partner with us, your team will learn best practices and grow along the way.

30,000+

Engineers Trained

1,000+

Companies Worldwide

12+

Years in Business