What I found out was that even though there are frustrating moments when inheritance IS actually the optimal solution, being forced to use composition has helped me think differently about how to structure my code for the better. Inheritance makes it too easy to design yourself into a trap where refactoring becomes extremely expensive even when necessary. Go is designed to make refactoring much easier by doing things like forcing the use of composition.
https://www.quora.com/Why-should-someone-choose-Go-as-his-main-programming-language
#golang #programming