Tutorial: Do you really think you understand Go interfaces?

Поділитися
Вставка
  • Опубліковано 28 січ 2025

КОМЕНТАРІ • 107

  • @princeofexane
    @princeofexane 3 роки тому +71

    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 роки тому +12

    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.

  • @dmitrydmitriev2554
    @dmitrydmitriev2554 2 роки тому +5

    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.

  • @Avocado.777
    @Avocado.777 2 роки тому +2

    I wanna hug you for making me acquire this knowledge so easily

  • @GeorgeGaleMusic
    @GeorgeGaleMusic 4 роки тому +24

    I’ve been struggling to understand Interfaces for ages! Thank you for making it so visual! Great video!

  • @YBWang-pi9qq
    @YBWang-pi9qq 4 роки тому +14

    go interface confused me , I went through several tutorials , this one explains in the best easy way. Your examples shine. Thanks

  • @wilfred-almeida
    @wilfred-almeida 3 роки тому +1

    3 minutes into the video and I subscribed, liked. This is what I call quality education.

  • @Abcabcabc1234abc
    @Abcabcabc1234abc 3 місяці тому

    One of the most explanatory and declarative content about Golang interfaces.

  • @iwolfman37
    @iwolfman37 Рік тому +1

    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!!

  • @0xf01
    @0xf01 3 роки тому +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

  • @yogeshdharya3857
    @yogeshdharya3857 Рік тому +1

    Amazingly clear examples , all real-world related and breath taking visuals

  • @Stevesteacher
    @Stevesteacher 3 роки тому +1

    Thank you! In under 2 minutes you have made me understand what interfaces are and why we would want to use them!

  • @dassyareg7587
    @dassyareg7587 Рік тому +1

    Best explanation so far. Thanks. Subscribed!

  • @yagisanatode
    @yagisanatode Рік тому

    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.

  • @lancer876
    @lancer876 2 роки тому +1

    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.

  • @DavisTibbz
    @DavisTibbz 2 роки тому +1

    Best explanation of go interfaces

  • @CJ-ix1ov
    @CJ-ix1ov 3 роки тому +16

    Why have you stopped making such incredible videos?

  • @nullPointer0x0
    @nullPointer0x0 4 роки тому +34

    One of the best explanations I have come across. Thank you.

  • @alyssa6738
    @alyssa6738 3 роки тому +1

    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!

  • @mr.psychedelic9595
    @mr.psychedelic9595 3 роки тому +2

    thanks for the video.
    what vscode theme name in this video?

  • @w300x
    @w300x 2 роки тому +1

    This is the video that made me understand interfaces. Thank you very much!

  • @justadude8716
    @justadude8716 2 роки тому +1

    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!

  • @chrisclark5900
    @chrisclark5900 3 роки тому +1

    Great video, demonstrates the power of interfaces in Go in such a clear way. Gr8 job m8

  • @victorsanchez001
    @victorsanchez001 3 роки тому +1

    Excellent explanation, I've searched everywhere for a good one and finally found the best, thank you for your time

  • @janz.7994
    @janz.7994 3 роки тому +1

    This is how programming tutorials should be made

  • @bootsNbrains
    @bootsNbrains 3 роки тому +1

    The best explanation I have seen. Thanks, I finally understand interfaces.

  • @garybonner7499
    @garybonner7499 Рік тому

    By far the best explanation of golang interfaces. Thank you for the time and effort you put into this

  • @sideantunes
    @sideantunes 2 роки тому +2

    Hi, what's your vscode theme?

  • @guhkunpatata3150
    @guhkunpatata3150 2 роки тому +1

    Your explanation make it looks very easy. Amazing.

  • @savingday
    @savingday Рік тому

    Interface type is an awesome concept and you explain it very well

  • @days.lee23
    @days.lee23 2 роки тому +2

    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 👍🏼

  • @zoloto9946
    @zoloto9946 4 роки тому +2

    Very well explained WHY we do need interfaces! Thank you!

  • @luismelo4131
    @luismelo4131 Рік тому +1

    W explanation, it's just perfect

  • @renishb10
    @renishb10 4 роки тому +6

    Clearly explained.. Keep up the good work!

  • @pitzel
    @pitzel 2 роки тому +1

    best explaination i've ever seen

  • @mikeyo5154
    @mikeyo5154 2 роки тому +1

    Very good description. Thanks for explaining so clearly

  • @quyvominh9860
    @quyvominh9860 2 роки тому +1

    Can you make more video about Golang, all of your video are so good

  • @TheAmazingXizde
    @TheAmazingXizde 2 роки тому +1

    this tutorial is really good about interfaces!

  • @safwatimran5310
    @safwatimran5310 2 роки тому +1

    Really well done! Appreciate the effort.

  • @parthokr
    @parthokr 3 роки тому +1

    Hey man! You just nailed it. One of the best interpretations.

  • @thisisreallyme3130
    @thisisreallyme3130 Рік тому

    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.

  • @Zarkoublack
    @Zarkoublack 4 роки тому +2

    This video is what i've been looking for, Ty very much!!

  • @hjman2934
    @hjman2934 2 роки тому +1

    Hi, why you not making videos?? your videos are so good I learn a lot. please start making video again. thank u.

  • @rajendragosavi2233
    @rajendragosavi2233 3 роки тому +1

    Gold standard video it is :) Thank you very much

  • @debanjanbarman7212
    @debanjanbarman7212 4 роки тому +4

    thank you very much for giving it free

  • @luv2stack
    @luv2stack 2 роки тому +1

    So good!! Instant subscribe

  • @tesohh
    @tesohh Рік тому

    Thank you for this tutorial. What theme are you using?

  • @pratikshitole391
    @pratikshitole391 3 роки тому +1

    Awesome explanation , Please cover entire Goalng

  • @mamtachahal1277
    @mamtachahal1277 3 роки тому +1

    THE BEST EXPLANATION

  • @Demik109Xx
    @Demik109Xx 3 роки тому +1

    Thanks for the awesome tutorial! What vscode theme is this?

  • @jsteezeful
    @jsteezeful 4 роки тому +2

    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!!!

  • @b4d_g0rilla
    @b4d_g0rilla 9 місяців тому

    thank you for the video! a lot of hard work on this video indeed

  • @tommasogagliardi6051
    @tommasogagliardi6051 3 роки тому +1

    Excellent explanation, subscribed

  • @mwnkt
    @mwnkt Рік тому +1

    if it swims it's a duck, that's all i needed to understand interfaces? after struggling for a month. thanks.

  • @inaccessiblecardinal9352
    @inaccessiblecardinal9352 3 роки тому +1

    Man, I forgot European sockets had 4 holes... good video on go too.

  • @batiandanielliu3598
    @batiandanielliu3598 3 роки тому +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.

  • @bschaatsbergen
    @bschaatsbergen 3 роки тому +1

    Hey great video.
    I was wondering which VSCode Theme you are using? Would love to know.
    Thanks in advance,

  • @ABHISHEKSINGH-nv1se
    @ABHISHEKSINGH-nv1se 2 роки тому +1

    Please make the output font a bit bigger .
    BTW nice video.

  • @InsanPrasetya
    @InsanPrasetya 4 роки тому +1

    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!

  • @vurmyr
    @vurmyr 3 роки тому +2

    Marvellous explanation

  • @ismail2198
    @ismail2198 3 роки тому

    Merhaba iyi günler. Bir sorum olacaktı bu videonun Türkçe hali bulunuyor mu

  • @_hologram
    @_hologram 2 роки тому +1

    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

  • @SushantShekhar-my7eu
    @SushantShekhar-my7eu Рік тому

    great explanation. pls post more.

  • @borzoomoazami8201
    @borzoomoazami8201 Рік тому

    Amazing video. Thank you very much

  • @RobertLugg
    @RobertLugg 2 роки тому

    Why did you use pointers for the games?

    • @inancgumus4125
      @inancgumus4125 Рік тому +1

      It’s because the game type implements the print method with a pointer receiver.

  • @abinashpanda393
    @abinashpanda393 4 роки тому +2

    Oh, that's how it works. Thank you.

  • @kafin3504
    @kafin3504 3 роки тому +1

    superb lecture!

  • @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 2 роки тому +1

      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 Рік тому +1

      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.

  • @ИгорьТ-х6м
    @ИгорьТ-х6м 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.

  • @esra_erimez
    @esra_erimez Рік тому

    Excellent video! Brilliant!

  • @randomness3231
    @randomness3231 3 роки тому +1

    excellent example!

  • @DentrifixoRam88
    @DentrifixoRam88 3 роки тому +1

    Great video.

  • @yigitaltunay
    @yigitaltunay 4 роки тому +3

    clear expression, thanks..

  • @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

  • @mk9834
    @mk9834 3 роки тому +1

    very informative, thanks

  • @Pimphats
    @Pimphats 3 роки тому +1

    thank you for the video :)

  • @joshuamarcano350
    @joshuamarcano350 2 роки тому +1

    🔥🔥🔥

  • @MaksymMinenko
    @MaksymMinenko 2 роки тому

    Where's the github repo?

  • @danimunf
    @danimunf 2 роки тому

    could you or anybody here explain why the minecraft and tetris have the ampersand(&) ???

  • @denizszr8316
    @denizszr8316 2 роки тому +1

    hocam 10 saat doc okusam bu kadar iyi anlamazdım emeğinize sağlık

  • @MaheshCRegmi
    @MaheshCRegmi 4 роки тому +2

    You are the best

  • @ijyotir
    @ijyotir 3 роки тому +1

    Why do u stop? Keep the good work going

  • @wah1dx
    @wah1dx 3 роки тому

    The duck example was enough for me. 🤣
    Ps. I already knew abt interfaces just couldn't visualise it's applications.

  • @beakid7126
    @beakid7126 8 місяців тому

    Hi please continue tour video

  •  5 років тому +5

    very well described

  • @rd-pb5tj
    @rd-pb5tj 4 роки тому +2

    excellent

  • @sechangpark8846
    @sechangpark8846 3 роки тому +1

    omg thank you

  • @michaeltesfaalem3446
    @michaeltesfaalem3446 8 місяців тому

    do i really want to code? nah? do i need to build a life stlye that needs to income? yes

  • @xuzhangning
    @xuzhangning 3 роки тому

    11:09 nice to know

  • @rfatdinc4157
    @rfatdinc4157 3 роки тому

    Biliyorum Ingilizce onemli yazilimda.Keske turkceside olsaydi yinede tesekkur ederim.

  • @reesewilson
    @reesewilson 4 роки тому

    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 роки тому +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.