Tutorial: Do you really think you understand Go interfaces?

  Рет қаралды 65,302

Learn Go Programming

Learn Go Programming

4 жыл бұрын

Interfaces in the Go programming language are very simple but they are subtle.
👉 This video is a part of my Go Bootcamp online course. You can buy the full course using this link: www.udemy.com/course/learn-go...

Пікірлер: 106
@princeofxane
@princeofxane 3 жыл бұрын
I respect when the creator put so much effort to make the viewers understand the content by incuding real life example anyone can relate with, it becomes absolutely worth watching it rather than someone explaining from an abstract level. Thank you.
@winter_light
@winter_light 2 жыл бұрын
I don't know why such amazing creators stop making videos. This was so much better than what I have seen elsewhere and it's my humble request to the author to please continue to upload more.
@CJ-ix1ov
@CJ-ix1ov 3 жыл бұрын
Why have you stopped making such incredible videos?
@YBWang-pi9qq
@YBWang-pi9qq 3 жыл бұрын
go interface confused me , I went through several tutorials , this one explains in the best easy way. Your examples shine. Thanks
@0xf01
@0xf01 2 жыл бұрын
just found your channel after i bought the course on udemy, dude, developers need more people like you, that can explain things in a visual way, i wish you'd come back to making videos too
@dmitrydmitriev2554
@dmitrydmitriev2554 Жыл бұрын
Thank you a lot! It is a one of the best explanation videos. - Explanation is clear. - Examples are interesting and selected shrewdly. - Animation and layout are selected with a taste of real architect. Brilliant.
@GeorgeGaleMusic
@GeorgeGaleMusic 3 жыл бұрын
I’ve been struggling to understand Interfaces for ages! Thank you for making it so visual! Great video!
@learngoprogramming70
@learngoprogramming70 3 жыл бұрын
Glad it was helpful!
@Avocado.777
@Avocado.777 Жыл бұрын
I wanna hug you for making me acquire this knowledge so easily
@yogeshdharya3857
@yogeshdharya3857 Жыл бұрын
Amazingly clear examples , all real-world related and breath taking visuals
@lancer876
@lancer876 Жыл бұрын
Where are you? It's amazing! It's amazing the way that you explain the interfaces. Thanks a lot, because I didn't understand its useful.
@wilfred-almeida
@wilfred-almeida 2 жыл бұрын
3 minutes into the video and I subscribed, liked. This is what I call quality education.
@DavisTibbz
@DavisTibbz Жыл бұрын
Best explanation of go interfaces
@iwolfman37
@iwolfman37 Жыл бұрын
This is the exact video I needed, I've been having a hard time wrapping my head around and visually being able to understand interface implementation. But this helped me visualize it sooooo well! THANK YOU!!
@justadude8716
@justadude8716 2 жыл бұрын
Calling it a protocol is a really neat idea and helped me understand it. When it came to interfaces the Tour of Go just brushed past it and went straight to exercises on readers and stringers, that even when I completed I still didn't understand the utility/power of interfaces. Thank you for your video!
@alyssa6738
@alyssa6738 2 жыл бұрын
I've been staring at code for so long and looking at other tuts but just not getting it, the non-code example and visuals were so helpful!
@savingday
@savingday 8 ай бұрын
Interface type is an awesome concept and you explain it very well
@Stevesteacher
@Stevesteacher 2 жыл бұрын
Thank you! In under 2 minutes you have made me understand what interfaces are and why we would want to use them!
@victorsanchez001
@victorsanchez001 2 жыл бұрын
Excellent explanation, I've searched everywhere for a good one and finally found the best, thank you for your time
@janz.7994
@janz.7994 2 жыл бұрын
This is how programming tutorials should be made
@w300x
@w300x 2 жыл бұрын
This is the video that made me understand interfaces. Thank you very much!
@chrisclark5900
@chrisclark5900 2 жыл бұрын
Great video, demonstrates the power of interfaces in Go in such a clear way. Gr8 job m8
@AntonyMapfumo
@AntonyMapfumo 4 жыл бұрын
One of the best explanations I have come across. Thank you.
@inancgumus4125
@inancgumus4125 3 жыл бұрын
Thanks! Glad to hear!
@guhkunpatata3150
@guhkunpatata3150 2 жыл бұрын
Your explanation make it looks very easy. Amazing.
@parthokr
@parthokr 3 жыл бұрын
Hey man! You just nailed it. One of the best interpretations.
@zoloto9946
@zoloto9946 3 жыл бұрын
Very well explained WHY we do need interfaces! Thank you!
@oemperore835
@oemperore835 3 жыл бұрын
The best explanation I have seen. Thanks, I finally understand interfaces.
@Zarkoublack
@Zarkoublack 3 жыл бұрын
This video is what i've been looking for, Ty very much!!
@hjman2934
@hjman2934 2 жыл бұрын
Hi, why you not making videos?? your videos are so good I learn a lot. please start making video again. thank u.
@thisisreallyme3130
@thisisreallyme3130 8 ай бұрын
Best video on Golang interfaces, and I watched every one on YT. I still have trouble with the concept (I come from other languages and didn’t do OO). If you ever revisit, maybe show how to convert a medium sized,working non-interface code over to Interfaces? Or something else… it’s both a simple concept and difficult to know when to apply it.
@dassyareg7587
@dassyareg7587 Жыл бұрын
Best explanation so far. Thanks. Subscribed!
@yagisanatode
@yagisanatode 6 ай бұрын
This was the best explainer video for interfaces I have come across so far. Great work. It must have taken days of editing and prep to get this together.
@mikeyo5154
@mikeyo5154 2 жыл бұрын
Very good description. Thanks for explaining so clearly
@inaccessiblecardinal9352
@inaccessiblecardinal9352 2 жыл бұрын
Man, I forgot European sockets had 4 holes... good video on go too.
@safwatimran5310
@safwatimran5310 Жыл бұрын
Really well done! Appreciate the effort.
@ABHISHEKSINGH-nv1se
@ABHISHEKSINGH-nv1se 2 жыл бұрын
Please make the output font a bit bigger . BTW nice video.
@days.lee23
@days.lee23 Жыл бұрын
You're a genius thank you so much Edit: just realised this is the last video you've posted. Unfortunate, but subscribed if you ever make more. Alternatively please let us know if you have anything on any other platform 👍🏼
@garybonner7499
@garybonner7499 Жыл бұрын
By far the best explanation of golang interfaces. Thank you for the time and effort you put into this
@TheAmazingXizde
@TheAmazingXizde 2 жыл бұрын
this tutorial is really good about interfaces!
@user-ix5qn5vx5f
@user-ix5qn5vx5f 3 ай бұрын
thank you for the video! a lot of hard work on this video indeed
@mamtachahal1277
@mamtachahal1277 2 жыл бұрын
THE BEST EXPLANATION
@debanjanbarman7212
@debanjanbarman7212 3 жыл бұрын
thank you very much for giving it free
@renishb10
@renishb10 4 жыл бұрын
Clearly explained.. Keep up the good work!
@inancgumus4125
@inancgumus4125 3 жыл бұрын
Thanks!
@quyvominh9860
@quyvominh9860 2 жыл бұрын
Can you make more video about Golang, all of your video are so good
@pitzel
@pitzel 2 жыл бұрын
best explaination i've ever seen
@jsteezeful
@jsteezeful 4 жыл бұрын
I've been poking around for over an hour and it still wasn't clear to me. Within the first 2 minutes of this, I understood the point of an interface. Great analogy!!!
@inancgumus4125
@inancgumus4125 3 жыл бұрын
😊 I'm glad that I could help you!
@pratikshitole391
@pratikshitole391 2 жыл бұрын
Awesome explanation , Please cover entire Goalng
@mr.psychedelic9595
@mr.psychedelic9595 2 жыл бұрын
thanks for the video. what vscode theme name in this video?
@borzoomoazami8201
@borzoomoazami8201 6 ай бұрын
Amazing video. Thank you very much
@tommasogagliardi6051
@tommasogagliardi6051 3 жыл бұрын
Excellent explanation, subscribed
@esra_erimez
@esra_erimez Жыл бұрын
Excellent video! Brilliant!
@SushantShekhar-my7eu
@SushantShekhar-my7eu Жыл бұрын
great explanation. pls post more.
@Demik109Xx
@Demik109Xx 3 жыл бұрын
Thanks for the awesome tutorial! What vscode theme is this?
@randomness3231
@randomness3231 3 жыл бұрын
excellent example!
@_hologram
@_hologram 2 жыл бұрын
Thanks for the video, very clearly explained. As many in the comments, would really like to know what theme you are using on vscode, looks neat
@kafin3504
@kafin3504 3 жыл бұрын
superb lecture!
@tesohh
@tesohh Жыл бұрын
Thank you for this tutorial. What theme are you using?
@abinashpanda393
@abinashpanda393 3 жыл бұрын
Oh, that's how it works. Thank you.
@batiandanielliu3598
@batiandanielliu3598 3 жыл бұрын
There are many tutorials on web with same examples of the interfaces for area of shapes, they were just copying from each others. This one makes sense. Well, that's say the interface is a method which calls all all the methods which has the same name from different types.
@learngoprogramming70
@learngoprogramming70 3 жыл бұрын
Thanks!
@luv2stack
@luv2stack Жыл бұрын
So good!! Instant subscribe
@denizszr8316
@denizszr8316 2 жыл бұрын
hocam 10 saat doc okusam bu kadar iyi anlamazdım emeğinize sağlık
@Pimphats
@Pimphats 3 жыл бұрын
thank you for the video :)
@luismelo4131
@luismelo4131 Жыл бұрын
W explanation, it's just perfect
@mk9834
@mk9834 3 жыл бұрын
very informative, thanks
@DentrifixoRam88
@DentrifixoRam88 3 жыл бұрын
Great video.
@alperen6056
@alperen6056 3 жыл бұрын
İnanç abi iyi günler.Ben senin go kursunu almıştım da oradaki themeini çok sevdim nasıl yaptın veya hangi theme kullandın söyler misin kurstaki benzer bir soruyu cevaplamışsın ama ben yaptım farklı ve kötü bir şey oldu
@IndieFounder
@IndieFounder 2 жыл бұрын
Hi, what's your vscode theme?
@yigitaltunay
@yigitaltunay 3 жыл бұрын
clear expression, thanks..
@learngoprogramming70
@learngoprogramming70 3 жыл бұрын
Glad you liked it
@vurmyr
@vurmyr 3 жыл бұрын
Marvellous explanation
@learngoprogramming70
@learngoprogramming70 3 жыл бұрын
Thanks a lot
@MaheshCRegmi
@MaheshCRegmi 3 жыл бұрын
You are the best
@rd-pb5tj
@rd-pb5tj 4 жыл бұрын
excellent
@ijyotir
@ijyotir 3 жыл бұрын
Why do u stop? Keep the good work going
@mwnkt
@mwnkt Жыл бұрын
if it swims it's a duck, that's all i needed to understand interfaces? after struggling for a month. thanks.
@beakid7126
@beakid7126 2 ай бұрын
Hi please continue tour video
@bschaatsbergen
@bschaatsbergen 2 жыл бұрын
Hey great video. I was wondering which VSCode Theme you are using? Would love to know. Thanks in advance,
@zaphkiel_3371
@zaphkiel_3371 Жыл бұрын
me too D:
@InsanPrasetya
@InsanPrasetya 3 жыл бұрын
Hey, I'm quite new to go and its pointer concept, can you please explain why you used pointer in game receiver but not in book receiver? Thank you!
@learngoprogramming70
@learngoprogramming70 3 жыл бұрын
The book print method doesn't have a pointer receiver.
@ismail2198
@ismail2198 2 жыл бұрын
Merhaba iyi günler. Bir sorum olacaktı bu videonun Türkçe hali bulunuyor mu
@wah1dx
@wah1dx 3 жыл бұрын
The duck example was enough for me. 🤣 Ps. I already knew abt interfaces just couldn't visualise it's applications.
@base2446
@base2446 2 жыл бұрын
This is interesting when coming from OOP languages. In C++ you'd create a "product" interface because the products also share title and price. But it seems that in Go interfaces are more granular. What would you do in the the case that you need to ensure a type has a "title", "price" and "print" method?
@danimunf
@danimunf 2 жыл бұрын
i'm curious about this as well
@dapodix
@dapodix Жыл бұрын
Interfaces in go deal with behaviours of types only. Srructs would be where you define what attributes your types take on (guitars, books, pencils) and you can nest srructs if that makes sense for your use case. By splitting the behaviours of types away - you get arguably better flexibility and with implicit matching, you simply add interfaces as you go to have existing types automatically take on new behaviours.
@inancgumus4125
@inancgumus4125 Жыл бұрын
When declaring interfaces, restrict them to the behavior you want others to implement without considering the other types. Only consider what you need from the perspective of the package that needs that behaviour.
@sechangpark8846
@sechangpark8846 3 жыл бұрын
omg thank you
@joshuamarcano350
@joshuamarcano350 Жыл бұрын
🔥🔥🔥
@danimunf
@danimunf 2 жыл бұрын
could you or anybody here explain why the minecraft and tetris have the ampersand(&) ???
@user-mw4mt2mt1r
@user-mw4mt2mt1r 2 жыл бұрын
All this is good, but how do I access the fields of the concrete types when using interfaces? Let's say I have a book with a price on it and I have a game with a price on it. Within the loop call to x.Price is not available. Yes, I can implement both methods in a book and in a game with getPrice() and add it to the Printer, but 1 it wouldn't be a printer anymore 2 what If I don't want to do that?
@inancgumus4125
@inancgumus4125 Жыл бұрын
Interfaces are about behavior rather than state. You should tell the types what to do without knowing how they do it. `getSomething` is not a behavior; it’s like poking into the internals of that type.
4 жыл бұрын
very well described
@inancgumus4125
@inancgumus4125 4 жыл бұрын
Thanks, Ugur!
@RobertLugg
@RobertLugg 2 жыл бұрын
Why did you use pointers for the games?
@inancgumus4125
@inancgumus4125 Жыл бұрын
It’s because the game type implements the print method with a pointer receiver.
@xuzhangning
@xuzhangning 3 жыл бұрын
11:09 nice to know
@MaksymMinenko
@MaksymMinenko 2 жыл бұрын
Where's the github repo?
@rfatdinc4157
@rfatdinc4157 3 жыл бұрын
Biliyorum Ingilizce onemli yazilimda.Keske turkceside olsaydi yinede tesekkur ederim.
@michaeltesfaalem3446
@michaeltesfaalem3446 2 ай бұрын
do i really want to code? nah? do i need to build a life stlye that needs to income? yes
@reesewilson
@reesewilson 3 жыл бұрын
Do I really think I understand Go interfaces? Yes, I thought I did. Then I watched this video, and I still think I did
@thachnnguyen
@thachnnguyen 2 жыл бұрын
What type of programmers did you expect to address in this video? Why spent so much time explaining what an interface is at the same time throwing things like type list []*game (yes, a pointer to a game) but []book (no, no pointer to book) and glossing over the details? Worse, there's nothing revealing as your title suggests beside the normal polymorphism concept any tutorial already addresses.
@rajendragosavi2233
@rajendragosavi2233 2 жыл бұрын
Gold standard video it is :) Thank you very much
This Will Make Everyone Understand Golang Interfaces
21:03
Anthony GG
Рет қаралды 47 М.
Golang: The Last Interface Explanation You'll Ever Need
17:58
Flo Woelki
Рет қаралды 4,5 М.
No empty
00:35
Mamasoboliha
Рет қаралды 9 МЛН
БАБУШКИН КОМПОТ В СОЛО
00:23
⚡️КАН АНДРЕЙ⚡️
Рет қаралды 17 МЛН
Advanced Golang: Channels, Context and Interfaces Explained
22:17
Code With Ryan
Рет қаралды 114 М.
An Introduction to Coding In Rust for Pythonistas
20:42
ArjanCodes
Рет қаралды 122 М.
Why #Go Interfaces? / #Golang Interfaces Tutorial
9:41
defer panic
Рет қаралды 34 М.
Go Testing By Example (GopherCon Australia 2023)
38:45
Russ Cox
Рет қаралды 12 М.
Master Golang with Interfaces
21:54
Kantan Coding
Рет қаралды 10 М.
Why I'm learning Go
21:35
Web Dev Cody
Рет қаралды 60 М.
Golang Error Handling Is Better Than You Think!
18:53
Anthony GG
Рет қаралды 26 М.
A Practical Example How To Use Interfaces In Golang
14:42
Anthony GG
Рет қаралды 22 М.
КРУТОЙ ТЕЛЕФОН
0:16
KINO KAIF
Рет қаралды 6 МЛН
Какой ноутбук взять для учёбы? #msi #rtx4090 #laptop #юмор #игровой #apple #shorts
0:18
Проверил, как вам?
0:58
Коннор
Рет қаралды 240 М.