I agree that interfaces can be helpful. But really, only when you have to use them. The most important thing in software engineering is simplicity. Loosely quoting Einstein, things should be as simple as possible but no simpler. Never add complexity to be used for some possible event in the future that might not happen.

Inheritance breaks encapsulation. I tried to avoid that back in the day when I wrote Java. Thankfully golang is much much better.

My most important dictum then is to keep it simple for as long as possible.

Engineer and veteran, 13 years of Design Engineering, 20+ years in Software Engineering, Go enthusiast. I read a lot, write some too, ivank2139@protonmail.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store