Rust Ownership and Borrowing

  Рет қаралды 69,162

Doug Milford

Doug Milford

Күн бұрын

Пікірлер: 267
@sumechans
@sumechans 4 жыл бұрын
Not sure why I bought all these tutorials from Udemy, Packt etc, when this amazing tutorial was there free for everyone. Kudos to Doug. You are an amazing instructor.
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Thanks! Just wish you could have saved a few bucks. Oh well.
@sumechans
@sumechans 4 жыл бұрын
@@dougmilford7814 You mentioned on this video, tutorials on arrays, vectors and collections are coming, are they out?
@dougmilford7814
@dougmilford7814 4 жыл бұрын
@@sumechans Sorry... haven't gotten to it yet. Life gets in the way sometimes.
@sumechans
@sumechans 4 жыл бұрын
@@dougmilford7814 Definitely worth waiting. Thanks!
@canardeur8390
@canardeur8390 4 жыл бұрын
@@dougmilford7814 Timing: sometimes, when we want to start something, the great product for free is not there yet and we have no idea that this great product would come a couple of weeks later. Since we do not have the patience, we pay for courses. And yes: awesome tutorial and great job. Thanks to you, I now understand why we use references and not the objects themselves.
@parthokr
@parthokr 6 ай бұрын
This man has mastered the art of teaching for sure. Memory management has never been this easier.
@chucknorris7995
@chucknorris7995 Жыл бұрын
I finally understand this concept! thank you so much!!!!
@TheZazatv
@TheZazatv 8 ай бұрын
This is by far the best tutorial on that topic out there. I love that you've included every use case!
@yanchaoli551
@yanchaoli551 5 жыл бұрын
best rust tutorial ever, looking forward more stuff coming
@dougmilford7814
@dougmilford7814 5 жыл бұрын
Wow, quite the compliment! I'm finishing up Rust 3D Graphics in the Browser right now. Hopefully by the end of the year it'll be out. I needed a break from the bread-and-butter topics to do something a little more fun. After that I'll circle back to some important fundamental topics like concurrency and creating macros. So, yes, more stuff is coming!
@anubhav200
@anubhav200 3 жыл бұрын
exactly
@hamzamohd.zubair1709
@hamzamohd.zubair1709 3 жыл бұрын
You have mastered Rust as well as the art of teaching
@amans6504
@amans6504 2 жыл бұрын
oh my god, never seen this much clear explanation of programming in general. Wonderful
@kennethmarete5329
@kennethmarete5329 Жыл бұрын
This is the finest tutorial I have ever seen. It's well explained and illustrated with clear examples. Thank you Milford
@estupefatos
@estupefatos Жыл бұрын
He teached me Rust and also how to teach. Thank you, Mr. Milford. You're a legend.
@nathanielwoodbury2692
@nathanielwoodbury2692 4 жыл бұрын
Holy crap it has never felt so simple. This dude is a teaching master haha
@nikoicardo9474
@nikoicardo9474 2 жыл бұрын
Doug this is a great video. I like your sense of humor.
@waynelee7320
@waynelee7320 4 жыл бұрын
I'm a JS programmer. I found this idea of ownership and borrowing is exactly what I need in JS. Copies and Refs are so messed up in JS. It is the best explanation on this topic I've seen and cleaned up a hell lot of mess for me to understand Rust. Thanks!
@freedoompictures6839
@freedoompictures6839 5 ай бұрын
Concise, to the point, fun to follow and really explains the thing in whole, not bits and parts of it. Your teaching speed is calibrated ideally which makes following the course easy. Finally found a channel to follow learning Rust. Thank you!
@RenaudDenis
@RenaudDenis Жыл бұрын
Great tutorial. That is easily the most troubling programming stuff I've learned in years but I think it's growing on me.
@dim-2d
@dim-2d 2 жыл бұрын
This is by far the best Rust tutorial series I’ve ever watched! Excellent work!
@danvilela
@danvilela 4 жыл бұрын
I am amazed with how can they build this kind of compiler
@yuong8139
@yuong8139 2 жыл бұрын
All these tutorials in rust are amazing. Your teaching is exceptionally engaging, clear and organized. You are an amazing and wonderful teacher . Thank you very much for teaching. Much appreciated.
@OP-hw4xj
@OP-hw4xj 3 жыл бұрын
"If you cannot explain it simply enough, you do not understand it well enough", you sir most definitely understand the subject to the minute details! hats off to you for the amazing explanation!
@niravprajapati1267
@niravprajapati1267 2 жыл бұрын
Mind blowing 🤯! Thank you for video.
@marcelijankowski9593
@marcelijankowski9593 7 ай бұрын
In my new job Im being transfered to a Rust project, this video was really helpful, thanks!
@sgwong513
@sgwong513 2 жыл бұрын
so far this is the best and crystal clear explanation for rust ownership and borrowing video that I had watched. appreciate for the hard work.
@lukash7660
@lukash7660 Жыл бұрын
Wow! Lucky to run onto your tutorial, it makes a lot of sense compared to other Rust tutorials, great job! As a python/js developer with some knowledge of c/cpp I find that Rust combines both worlds in a unique way which somehow makes more sense than traditional concepts.
@maximodakila2873
@maximodakila2873 2 жыл бұрын
Where before I was hesitant to learn Rust because of it's high learning curve, now I am emboldened to learn it because you explain it so clearly. Thank you. Glad I stumbled upon your channel.
@abraham7966
@abraham7966 3 жыл бұрын
Very fine and well created material. Concise, straight to the point, and easy to understand. Well done, sir. Well done.
@adehenry9591
@adehenry9591 Жыл бұрын
Best tutorials on rust ownership and borrowing i've seen so far....the humor made it easier too 😊
@hamol3d
@hamol3d Жыл бұрын
One of the best Rust tutorial series I have come across. Thanks for sharing!!
@stphane
@stphane 4 жыл бұрын
Thank you for such a clear and exhaustive overview on Ownership and Borrowing concepts. Such free contents have no price and there should be as much "thank you" comments as there are thumbs-up on this video.
@auniquehandle
@auniquehandle Жыл бұрын
thank u ser, this is the best video on rust ownership and borrowing on the entire youtube
@WouterStudioHD
@WouterStudioHD 4 жыл бұрын
Rust is brilliant. I have quite some experience with C++ and I can totally see that Rust is just so much better. It's so explicit, consistent and well defined, while still being just as fast if not faster. I don't even know if I can bring up the motivation to write one more line of C++... Thank you for this clear explanation.
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Couldn't agree more!
@-taz-
@-taz- 4 жыл бұрын
Some languages are bringing back functional ideas that are older than computer science, even. Some try to clean up C++ like D and Go, or clean up Java like Kotlin. They usually remove or minimize inheritance, and maximize immutability. But Rust is the only one trying fundamentally new ideas. I've used C++ for 27 years, and I'm having a hard time with lifetime management in Rust -- the notations. Pattern matching is what lured me in, because I tried for years to do that well in C++, and I did alright, but then try getting some random C++ coworkers interested in algebraic types and overload sets. Good luck! I gave up. C++23 will probably get pattern matching, but lifetimes? Nope. Plus std::optional, std::any, and std::variant are a hodgepodge, and std::expected is still just a proposal.
@drippedoutlawyer8166
@drippedoutlawyer8166 5 ай бұрын
I finally get how it works thanks to you!
@JDalmasca
@JDalmasca Жыл бұрын
Love the enthusiasm you bring to these videos! It's really reassuring to hear you explain things as a newcomer might experience it: "What the ding-dong is that??" -- me, in the future (probably)
@amidfallen
@amidfallen 2 жыл бұрын
wow! After watchin this video, the stuff with ownership and borrowing seems pretty straightforward. Thanks!
@seanlacey
@seanlacey Жыл бұрын
Been working my way through the Book and have struggled with the ideas of ownership and borrowing. This video has really helped my understanding so thank you! I will definitely have to check out your others
@bobgodwinx
@bobgodwinx 2 жыл бұрын
Thanks very much it really helped me understand the craziness behind the hood of borrowing and ownership!
@rahulek914
@rahulek914 5 жыл бұрын
Very good coverage of seemingly difficult concepts. Your efforts are experienced through easy to understand samples. I suggest the topic of covering the standard library as much as you can. Thanks.
@dougmilford7814
@dougmilford7814 5 жыл бұрын
Thanks :) I appreciate the feedback. I'm currently polishing up a mini-series on doing 3D Graphics in the browser with Rust, and it should be out in the next few days. I needed to tackle something fun, but I'll be able to get back to the bread-and-butter topics (including the standard library) by next week. There's so many topics I want to cover, and only so much time. It's motivating to get messages like yours, though.
@fbytgeek
@fbytgeek 4 жыл бұрын
Subscribed after watching just one video!! Content is of quality! Thanks a lot for your efforts! Please continue creating more content as time and circumstances permit.
@ClabirdDoudou
@ClabirdDoudou 4 жыл бұрын
Thank you very much ! The quality of all your Rust tutorials is amazing.
@TrevorSullivan
@TrevorSullivan Жыл бұрын
This is an amazing video! Thanks for helping me understand memory management in Rust better. I'm working on my own video series on Rust, that's currently available on my channel, but I haven't covered borrowing and memory management yet. Keep up the great work, Doug!
@dkarlovi
@dkarlovi 4 жыл бұрын
Excellent explanation, it finally made it click for me! Thank you very much!
@williamb.2031
@williamb.2031 4 жыл бұрын
Awesome tutorial as always! Love how your commentary has a perfect mix of technical with a hint of goofy. Always makes them fun to watch. You briefly touched on functional programming, seeing some functional programming related tutorials in Rust would be fantastic :)
@dougmilford7814
@dougmilford7814 4 жыл бұрын
This is the second request I've had regarding functional programming I had in a week. I'll go ahead and move it up the list. Thanks for watching!
@cerex1273
@cerex1273 4 жыл бұрын
I got the concept reading the official rust book but your clean explanation with examples is true gold. I'm sure you spent much time creating this tutorial with passion so you deserve all my gratitude for your hard work. Thanks so much :)
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Ah, thank you! Yeah, these videos are much more work intensive than they appear. This topic I spent quite some time trying to figure out how to describe it to others without confusing them more. I'm just so glad it seemed to come out well and the viewers are finding it so useful :)
@ehsankhorasani_
@ehsankhorasani_ 2 жыл бұрын
These tutorials are like a GEM. Thank you very much
@keeganspeck
@keeganspeck 4 жыл бұрын
I don't often comment on videos, but I've watched about a dozen today on the concept of ownership/borrowing/references in Rust and yours was *by far* (and I really mean *by far*) the clearest and most effective lesson I've seen on the topic. Kudos and thanks. Seriously.
@LinuxForLife
@LinuxForLife 4 жыл бұрын
The best video I have ever seen about this topic! Thank you.
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Hey, thanks!... you're very welcome :)
@KiffinGish
@KiffinGish 4 жыл бұрын
This has to be the best explanation of ownership that I've ever seen ... it now is all suddenly making a lot of sense!
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Hey, great! Yeah, tricky topic. Took me some time to wrap my head around it, too. I think it takes everyone a bit of time. Glad it's starting to click for ya :)
@KiffinGish
@KiffinGish 4 жыл бұрын
@@dougmilford7814 Your approach by handling the heap and stack separately is what helped me get a better grip on this tricky subject.
@avatar098
@avatar098 4 жыл бұрын
Went on the journey to create a game entirely with Rust! Ran into your video and it totally helped me understand this!
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Hey, great! I'm glad the video helped :)
@pshar2931
@pshar2931 5 жыл бұрын
Very helpful. Thanks for taking time to create such videos. I liked the way you represented the concept.
@dougmilford7814
@dougmilford7814 5 жыл бұрын
Hey, thanks for the compliment! I appreciate it :)
@_myron
@_myron 4 жыл бұрын
Great tutorial Doug, can't wait for the parallel programming guide!
@sudhir1274
@sudhir1274 4 жыл бұрын
The explanation of ownership and borrowing is very well explained in this tutorial. A lot of misunderstandings and misconceptions in Rust have been cleared up by viewing this tutorial. This concept is not very well explained in any other literature or tutorial. I really appreciate this whole series. One of the best tutorials on Rust in my humble opinion. I have viewed others and none are as clear and concise as this one. Thank you once again.
@dougmilford7814
@dougmilford7814 4 жыл бұрын
I truly appreciate all of the positive feedback! I don't make any money from these videos, so having others enjoy and learn from them makes me happy that I could help others learn Rust. It makes my day when I get feedback like this :)
@zoidian601
@zoidian601 2 жыл бұрын
Ownership... what the ding dong is that?! But for real, great presentation. This was really clearly explained. Glad I found this channel
@mattforrest9010
@mattforrest9010 2 жыл бұрын
Really great tutorial, way more clear than anything else I've come across
@greyson_thao
@greyson_thao 3 жыл бұрын
This was such a helpful video. I feel like I actually understand ownership and borrowing in Rust now. Thanks Doug!
@MrPetzold123
@MrPetzold123 4 жыл бұрын
Best explanation of ownership and borrowing I've seen, thanks ! I'm sure this will help when "negotiating" with borrow checker next time :-).
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Hey, thanks! I'm glad it was helpful :)
@myhendry
@myhendry 4 жыл бұрын
Gosh! Can i give 2 thumbs up?? Amazing video on Rust!!!! TQ very much Doug
@dougmilford7814
@dougmilford7814 4 жыл бұрын
I live for comments like these! I really appreciate it :)
@nickschmitt8594
@nickschmitt8594 4 жыл бұрын
26:10 putting var_a.push('a'); after var_b and var_c.... awesome explanation!! thank you!!
@pheonex4180
@pheonex4180 4 жыл бұрын
Thank you so much for your Rust tutorials. They have been extremely valuable and definitely the best I've found.
@sylver76
@sylver76 3 жыл бұрын
Thanks! This clears thing up a lot.
@andermetalbrasil
@andermetalbrasil 4 жыл бұрын
Your videos are very well explained. I'm just a beginner hobbyist programmer trying to learn the Rust language, and your videos surely are a great help. My only experience with programming is a little of GDScript, the scripting language used in Godot game engine. I'm studying Rust for about only two weeks, reading the The Rust Language Book from the official website and watching some videos about the language, and I think I'm starting to understand how borrowing and ownership works, but I'll have to practice it a lot to make it natural to me. When I think I'm ready I'll try to make a game in Rust. Thanks for your work teaching this amazing language.
@jpedrob
@jpedrob 2 жыл бұрын
Jupp. The best video on this. Thanks Doug!
@joaoguilhermejarochinskima1820
@joaoguilhermejarochinskima1820 4 жыл бұрын
A true hidden gem on youtube
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Hey, thanks!
@Ltsoftware3139
@Ltsoftware3139 2 жыл бұрын
This channel is underrated!
@jmoz
@jmoz Жыл бұрын
Fantastic video Doug and your style is quite funny.
@lukekim825
@lukekim825 3 жыл бұрын
what a hidden gem. thank you so much for an amazing tutorial
@santerek28
@santerek28 4 жыл бұрын
really amazing ! kind of myth busting on Rust ! Thanks Doug !
@peperudpeperudski1911
@peperudpeperudski1911 4 жыл бұрын
Best explanation I’ve heard. Can’t say I care much for the web assembly gymnastics at the moment, but I really hope to hear your take on threading, async io and other features that make a language “complete”.
@philipjin7572
@philipjin7572 4 жыл бұрын
Thanks Doug , a very good video to explain rust key function!
@mageprometheus
@mageprometheus 4 жыл бұрын
Perfect clarity of concept. Thank you.
@indrajitbanerjee4350
@indrajitbanerjee4350 4 жыл бұрын
Wow rust's memory management is kind of revolutionary. It feels almost unbelievable that we came this far in programming languages and took us this long to figure out the fact that it is indeed possible to define rules of a language that doesn't permit most memory issues in the first place without a runtime garbage collection. Kind of makes the subject of garbage collector moot doesn't it? C++ does a good job despite being backward compatible with C. The only issue is C++'s solutions are library features mostly and can't come close to the rust's features that have much deeper ties with the language and the compiler
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Yeah, Rust really re-thought the rules and came up with something groundbreaking. That took real courage.
@nickssmirkingrevenge
@nickssmirkingrevenge 4 жыл бұрын
Great job! You explain everything so clearly and in a really engaging manner. Thank you!
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Glad you enjoyed it!
@KontaJapan
@KontaJapan 2 жыл бұрын
I finally understand ownership and borrowing, thank you!
@idiot7leon
@idiot7leon 4 жыл бұрын
Thanks! Very clear explanation, and fun lecturing! I enjoy it very much~
@Barskest
@Barskest 4 жыл бұрын
You mention in the video that functional programming is the way to go. I've been trying to find information about it with moderate amounts of luck, could you possibly make an introductory video explainign some of the concepts with simple examples as you do with the topic of ownership in this video? :)
@irlshrek
@irlshrek 2 жыл бұрын
so good! cant wait to watch more of your Rust content!
@igorkuchin9302
@igorkuchin9302 4 жыл бұрын
Thank you very much! This makes ownership and borrowing quite clear.
@Utubewonderful
@Utubewonderful 5 жыл бұрын
Very clearly explained this topic. Since past 1 month I'm learning rust, your videos shows how much i missed. Please add more in-depth videos and mini-projects with those concepts. Thanks ;)
@dougmilford7814
@dougmilford7814 4 жыл бұрын
I saw this message that you wrote. I know it's a little late, but I've published a few more videos. I'm currently considering doing a video on "Macros". Let me know if you'd be interested in that.
@PoisonAlienful
@PoisonAlienful 4 жыл бұрын
THIS. IS. THE. BEST. TUTORIAL. EVER.
@dougmilford7814
@dougmilford7814 4 жыл бұрын
THANKS! STEVE! :)
@JamesColeUk
@JamesColeUk 5 жыл бұрын
This is a very clear explanation. Great job!
@dougmilford7814
@dougmilford7814 5 жыл бұрын
Ah, thank!
@anuraghazra4772
@anuraghazra4772 4 жыл бұрын
Amazing video... very clear and concise. and loved the way you teach.
@joculator9820
@joculator9820 3 жыл бұрын
Great video sir - informative and enjoyable. Thanks
@paradoxfx
@paradoxfx Жыл бұрын
Respect!!! And thank you for the best explanation on the subject
@not_yet_implemented
@not_yet_implemented 2 жыл бұрын
This is great, and needs more views!
@maz_uwu
@maz_uwu 2 жыл бұрын
Fantastic explanation of a difficult topic in Rust. Thanks!
@invisiblian
@invisiblian 4 жыл бұрын
great tutorial. concise and to the point. many thanks
@KennethKasajian
@KennethKasajian 2 жыл бұрын
This is the type of thing that old-type C++ programmers used to do. Everyone was expected to know it, even high-level Application developers creating User Interfaces. The exception were the BASIC programmers, which is why VB became so popular
@sudhir1274
@sudhir1274 4 жыл бұрын
Another very good tutorial. I was struggling to under this concept. Very well explained.
@dougmilford7814
@dougmilford7814 4 жыл бұрын
This video is my favorite as it really dives into the heart of Rust and it's idiosyncrasies. I'm so glad you and others have found it to be useful.
@chiwbaka
@chiwbaka 3 жыл бұрын
This guy speaks directly into my brain. It's like learning in the Matrix.
@dougmilford7814
@dougmilford7814 3 жыл бұрын
I know kung fu
@Y3arin
@Y3arin 3 жыл бұрын
That was extremely helpful Doug, thanks!
@luhem7
@luhem7 4 жыл бұрын
Thanks for making this entertaining and informative to watch!
@dougmilford7814
@dougmilford7814 4 жыл бұрын
Sure thing :)
@lairely
@lairely 5 жыл бұрын
The best video rust tutorial we never had! If you do a course on udemy or others I'll definitely take it.
@dougmilford7814
@dougmilford7814 5 жыл бұрын
I'm happy you like them :)
@MaheshCRegmi
@MaheshCRegmi 3 жыл бұрын
So quality content! I thought this was a talk in conference!
@harrypotil860
@harrypotil860 10 ай бұрын
This is amazing content. But 30:41 why Rust will think so ? Struct can have thousand fields ..! Compiler will check the struct too right?? Can anybody explain?
@harrypotil860
@harrypotil860 10 ай бұрын
I got to know that it’s nothing to do with thousands of fields. By default struct doesn’t implement copy and that’s it. You should either implement COPY or reference.
@h1k0usen13
@h1k0usen13 4 жыл бұрын
These videos seriously deserve more views
@dougmilford7814
@dougmilford7814 4 жыл бұрын
I've noticed a distinct pickup in the last couple of months, so that's good. Maybe KZbin's algorithms finally picked em up.
@Victoria-jq9xz
@Victoria-jq9xz 3 жыл бұрын
great tutorial, you explain things very well!
@pinch-of-salt
@pinch-of-salt 3 жыл бұрын
Love your rustlang videos! 8:41 you said String can't be allocated on stack, I think you can allocate &str on stack. I know they aren't the same thing.
@JitenPalaparthi
@JitenPalaparthi Жыл бұрын
The best video on this topic
@tylerhanson133
@tylerhanson133 3 жыл бұрын
Fantastic!
@Vierone
@Vierone 4 жыл бұрын
Thanks to you I get it better now:) and I created a video for people in my language who wants to learn ownership&borrowing as well.
@farhanyousaf5616
@farhanyousaf5616 4 жыл бұрын
Inspiring videos and fun!
@marevsgodzilla
@marevsgodzilla 3 жыл бұрын
Great tutorial!!! Super helpful
@wilstonoreo
@wilstonoreo 4 жыл бұрын
Awesome stuff, thanks so much Doug!
Rust Lifetimes
26:52
Doug Milford
Рет қаралды 53 М.
Rust Structs, Traits and Impl
24:53
Doug Milford
Рет қаралды 34 М.
КОНЦЕРТЫ:  2 сезон | 1 выпуск | Камызяки
46:36
ТНТ Смотри еще!
Рет қаралды 3,7 МЛН
Considering Rust
1:03:57
Jon Gjengset
Рет қаралды 193 М.
Understanding Ownership in Rust
25:30
Let's Get Rusty
Рет қаралды 277 М.
Rust Generics
22:10
Doug Milford
Рет қаралды 22 М.
Async Rust Is A Bad Language | Prime Reacts
28:46
ThePrimeTime
Рет қаралды 112 М.
All Rust features explained
21:30
Let's Get Rusty
Рет қаралды 337 М.
Rust String vs str slices
14:58
Doug Milford
Рет қаралды 24 М.
Understanding Rust Lifetimes
1:21:06
Ryan Levick
Рет қаралды 32 М.
Rust Programming Techniques
1:32:02
LinuxConfAu 2018 - Sydney, Australia
Рет қаралды 96 М.
Visualizing memory layout of Rust's data types
39:39
Sreekanth
Рет қаралды 29 М.