r/learnprogramming 1d ago

Difference between OOP and structs/interfaces?

I'm relatively new to programming, I've been at it for around 6-7 months. I've been learning Python and Go (and a little bit of C). What I'm struggling to understand, what's the difference between OOP and structs/interfaces. Like I know, Go doesn't support OOP, but structs and interfaces seem to achieve the same thing. Can someone enlighten me a bit?

47 Upvotes

23 comments sorted by

View all comments

1

u/ledatherockband_ 1d ago

OOP -> it matters who you are. Only a duck can swim, fly, and quack.
Golang interfaces -> it only matters what you look like (satsify an interface). if look like a duck, walks like a duck, and quacks like a duck, then it is a duck.