Common Programming Concepts in Rust

Поділитися
Вставка
  • Опубліковано 3 жов 2024

КОМЕНТАРІ •

  • @letsgetrusty
    @letsgetrusty  3 роки тому +12

    📝 Get your *FREE Rust cheat sheet* : www.letsgetrusty.com/cheatsheet

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

      I guess I am kinda off topic but do anyone know a good site to watch new tv shows online ?

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

      @Braylon Dominick Flixportal :)

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

      @Kane Karter Thank you, signed up and it seems like they got a lot of movies there :) Appreciate it !!

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

      @Braylon Dominick you are welcome xD

  • @veekthorcodes
    @veekthorcodes 8 місяців тому +48

    just when you set subscriber count to 100k and said we can all dream, looking at the actual count rn, your dream came through :)

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

      I've just looked in the comments to see if someone's already commented this

  • @Joel-yp4yt
    @Joel-yp4yt 3 роки тому +137

    People might criticize following the book, but it's really helpful to have this in video/audio format to reinforce the lessons

    • @antonpodkur3520
      @antonpodkur3520 4 місяці тому +4

      Agree, also Bohdan has very good implementation

  • @soldadonieve8764
    @soldadonieve8764 3 роки тому +111

    So much more approachable than the book on its own. Def appreciate your content.

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

      Thank you Raul!

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

      @@letsgetrusty I agree, love reading a chapter and following up with your videos, super helpful honestly, especially when trying to consume such complex knowledge.

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

      Sweet. Working through the book now.

  • @productivewallace
    @productivewallace 3 роки тому +7

    Best rust tutorial I’ve ever seen. Period!

  • @thingsiplay
    @thingsiplay 3 роки тому +37

    3:07 Another difference between `let` variables and `const` "values is, that you cannot shadow constant variables/values (or am I wrong here?). That gives an additional security that you don't accidentally redefine its value.

    • @letsgetrusty
      @letsgetrusty  3 роки тому +9

      That's right!

    • @thingsiplay
      @thingsiplay 3 роки тому +5

      @@letsgetrusty I want to add another note. Sometimes initialize the variable with `let mut new` and then later redefine it as `let changed = new`.
      - The name change has the benefit of making it clear in the document we are using a changed state of the initialized variable. Just a little bit more readable at times.
      - But most importantly the mutability changes.
      Now the best part of it: If the variable/struct or whatever object it is does not implement the copy trait, then no new space is allocated. The ownership is just transferred and the benefits like changing mutability comes for free.

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

      Well constants don’t exist past compilation

  • @tobi9648
    @tobi9648 9 місяців тому +10

    now, 2 years later, your dream of 100000 subs almost came true....great job!!!!!!! I love your videos!! would be nice to now how many subs you had when you published this video :-)

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

    This is awesome, I'm non-native-english person, so reading the book and having somebody explaining some things in voice is a really good support. Keep it up man! Great job!

  • @gabrock55
    @gabrock55 10 місяців тому +1

    Watching this and seeing you smile when you say "we can all dream" after setting Subscriber count to 100,000 and looking at your subscriber count sitting at 93.5k gets me so stoked for you! You'll be getting there in no time Bogdan! Keep up the amazing content, watching through this playlist has taught me so much. Thanks for teaching everything so clearly!! Cheers :D

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

    freaking unreal level of teaching abilities. I am honestly speechless by how easy it is to understand your way of speaking / teaching lol

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

    Thank God the if statement only looks for boolean. In Ruby the if statement can be boolean, numeric, nil and I have seen crazy codes in the if statement where a function is used and the function can return any 3 variations of bool, numeric, or nil. It makes it extremely difficult to read the code and convoluted. I love how in Rust it is explicit boolean.

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

    Amazing! No nonsense. Covered all the basics in one short video. Excellent video.

  • @joelmontesdeoca6572
    @joelmontesdeoca6572 3 роки тому +22

    Keep popping out quality tuts and you'll reach 100,000 subscribers for sure! Thanks for the great tuts. One thing I was wondering tho, would it be possible to add chapter numbers the the vid titles?

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

      I will consider this. Thanks for the feedback!

    • @rahulsaxena5015
      @rahulsaxena5015 8 місяців тому +1

      Man just hit 100k subs. WILD!!

  • @JSWarcrimes
    @JSWarcrimes 10 місяців тому +1

    "100k subs. We can all dream." Well, you are getting close to it, bud. Thanks for the series!

  • @mihunt3r929
    @mihunt3r929 5 місяців тому

    Thank you very much. Your content is great.
    It is much more fun to watch videos than to just read the book

  • @tomward2130
    @tomward2130 28 днів тому

    I love this video. Amazing way to lay a strong foundation. Thanks a lot ❤

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

    Hit with the question just after I asked it in my head, subbed

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

    Great videos, really good pace and full of useful extra information.

  • @TarasShabatin
    @TarasShabatin 5 місяців тому +2

    Now you have more subscribers than you've dreamed of :)

  • @isaacnaughton5206
    @isaacnaughton5206 Рік тому +3

    Quick tip on for loops over ranges at 13:25. If your use case requires the last value to be included, you can do 1..=4

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

    I've been doing rust in non professional setup for a while and I watched advanced videos of LGR and learned a lot of stuff I didn't know about traits/smart pointers/error handling. I said "surely I won't learn anything from basic control flow video here" - and I learned that break from loop can actually return... So far, I keep finding gems in every video, no matter how basic.

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

    Very nice video of nice playlist, bro you can think of this as your investment coz as rust finds more popularity you will surely get noticed. Cheers !!

  • @pavanadhitya6028
    @pavanadhitya6028 8 місяців тому +3

    Short Summary for [Common Programming Concepts in Rust](ua-cam.com/video/2V0JaMVjzws/v-deo.html) by [Merlin](merlin.foyer.work/)
    Title: Understanding Basic Programming Concepts in Rust
    [00:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=2) Chapter three covers basic programming concepts in Rust
    [01:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=110) Constants in Rust have key differences from variables
    [03:38](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=218) Scalar data types and integer overflow in Rust
    [05:29](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=329) Rust supports floating point numbers, booleans, and character types.
    [07:13](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=433) Using vectors and array indexing in Rust
    [09:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=542) Returning values from a function in Rust
    [10:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=650) Different types of loops in Rust
    [12:44](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=764) Use 'for' loop to iterate over arrays and ranges
    ---------------------------------
    Detailed Summary for [Common Programming Concepts in Rust](ua-cam.com/video/2V0JaMVjzws/v-deo.html) by [Merlin](merlin.foyer.work/)
    Title: Understanding Basic Programming Concepts in Rust
    [00:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=2) Chapter three covers basic programming concepts in Rust
    - Variables in Rust are immutable by default, to make them mutable, use 'mut' keyword after the let keyword.
    - Rust also has the concept of constant values, which are created using the const keyword.
    [01:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=110) Constants in Rust have key differences from variables
    - Constants cannot be mutated and must be type annotated
    - Constants can only be set to constant expressions and have more readable numeric literals
    [03:38](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=218) Scalar data types and integer overflow in Rust
    - Scalar data types in Rust include integers, floating point numbers, booleans, and characters.
    - Integer overflow results in two's complement wrapping, with values greater than the maximum wrapping around back to the minimum value.
    [05:29](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=329) Rust supports floating point numbers, booleans, and character types.
    - Floating point numbers are numbers with decimal points and have default precision of 64 bits.
    - Booleans represent true or false values, and character types represent Unicode characters.
    [07:13](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=433) Using vectors and array indexing in Rust
    - Accessing individual values within an array using standard bracket syntax
    - Rust prevents out of bounds exceptions and memory unsafe behaviors by knowing the size of the array
    [09:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=542) Returning values from a function in Rust
    - Rust allows returning values from a function using the return statement. The return type can be specified after the parentheses by using a dash and an arrow, followed by the desired return type.
    - Inside a function, the last expression is implicitly returned. An example is shown where the return keyword is removed, and the semicolon is omitted for the last expression.
    [10:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=650) Different types of loops in Rust
    - The basic loop created using the loop keyword executes the code until the break statement is called. It can also return values from the loop.
    - The classic while loop executes as long as a certain condition is true, and the for loop is useful for looping through a collection.
    [12:44](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=764) Use 'for' loop to iterate over arrays and ranges
    - Iterating over arrays using the 'for' loop and printing each element.
    - Using the 'for' loop to iterate over a range of numbers and printing them.

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

    really clear and help video

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

    Well I don't know how to say it but thanks for existing and making this series I was looking for it
    I hope I'll see some real rust projects on channel too that'll be helpful

  • @techbytefrontier
    @techbytefrontier 7 місяців тому

    You have more then 100k now, congrats!

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

    a question: when looping through an array, what's the difference between `for el in a.iter()` and `for el in a`, because both works and in the Rust book (as of July 2022) it uses the `for el in a` version, without mentioning the `iter()` function

    • @ocdy-gk9pw
      @ocdy-gk9pw 2 роки тому +1

      `for el in a` will loop over a but will also consume a. `for el in &a` is the same as `for el in a.iter()`.

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

    i really appreciate you taking the book and converting it into video format, i have a hard time keeping focus when reading programming books and much better learned when i can "hear" & "see" something rather than "read" it.
    a bit ironic given programming is all about reading and writing code, but 🤷‍♂️

  • @akash-
    @akash- 8 місяців тому +1

    finally the sub_count matched the real sub!

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

    4:31 meme flashbacks
    eeeight beeeet
    sixeeen beet
    thirty twooo bit
    64 BIT
    ONE HUNDRED TWENTY EIGHT BIT!!

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

    great series, thanks heaps for your effort. BTW the link to the The Rust book seems broken.

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

    Weird to come from JS, I tend to think about tuples as a convention for arrays instead of a different kind of data type. Also arrays with variable length and fixed length arrays as different is also weird.

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

    Great videos! Thanks a lot for this content!

  • @Uppers101
    @Uppers101 6 місяців тому

    Hi I'm coming from python, It's kinda weird that at 12:00 you have to "return" or in your case "break counter" to return the counter assigned to a new variable "result" couldn't you just break, and println!("The result is {}", counter)
    Seems like overkill.

  • @a_maxed_out_handle_of_30_chars
    @a_maxed_out_handle_of_30_chars 11 місяців тому +1

    this was good, thank you :)

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

    Good lad. Thank you.

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

    Богдан, ти молодець!

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

    1:50 Well, you don't have to dream much longer. As of end of 2023, you have 98.3 K subscribers. Thanks for a great video.

  • @hilawes
    @hilawes 2 місяці тому

    if you're reassigning an immutable variable and even changing its type through "shadowing", then how is it still immutable? I can see if you were doing shadowing inside of a function but we're able to redefine the top line declarations. Confused because it doesn't seem like strict typing and potentially not memory safe.

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

    Цікава ідея, екранізація туторіала, лайкос :)

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

    I am getting error in rust 1.75.0 for the below line:
    let a: [i32; _] = [10, 20, 30, 40, 50];

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

    It would be really nice if Rust had return type deduction i.e. “fn x() -> auto {…}”.

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

    Hmm...the video is one year old, and you already have 56K subscribers. You're already more than half way to your dream! (1:50)

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

    1000 likes for you

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

    well from what i can see rust would definitely never work for game programming

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

    what extension are you using in vs code for rust using that you getting full details of the each datatypes and its features,
    just like for html css MDN reffrence is recommend when hovered
    would be helpfull if you tell me please

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

    You sir are a legend :)

  • @ilikegeorgiabutiveonlybeen6705

    constants might be also (probably?) stored in data segment of the process's memory (i dont know im guessing please correct me if im wrong)

  • @osheagalen
    @osheagalen 5 місяців тому

    watching this and your subscribers are at 114k congrats and thanks for the awesome content!

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

    Thank you for this tutorail, tried running loop in different languages
    rust is way faster than every other languages !

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

    great content but man... these jump cuts all the time are annoying and I basically can't focus on what you're saying :(

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

    Subscribed!

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

    Making subscriber count a const was depressing.
    Hope you grow my dude.

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

    What a beautiful language!

  • @superfortekiai
    @superfortekiai 11 місяців тому

    Your explanation is very good, congratulations for creating this channel

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

    Lets get Rusty

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

    These videos are gold. Thanks for your work!

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

    Thanks to ur vid! I am getting rusty :)

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

    Won't have to dream for much longer, almost there to 100k!

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

    Nice clear videos at the right pace for noobs like me. Thanks!

  • @sweetjimmy
    @sweetjimmy 2 місяці тому

    how to change the steps from 1 to a higher value in the for loops using range?

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

    The music at the end, I could hear it during the video! Anyone else heard it?

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

    I read and practice the chapters in the book then I come here to reflect and hear another perspective.

  • @sweetjimmy
    @sweetjimmy 2 місяці тому

    are there only two compound data types in rust? tuple and array?

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

    Congratulations on 100k! Heh.

  • @alienews0
    @alienews0 5 місяців тому

    1:44 u want your subscriber count to be a constant ? U like to stagnate ? 😋

  • @murielgonzalez
    @murielgonzalez 10 місяців тому

    Getting pretty close to 100k subscribers :D +1 to everyone's previous comments. It's been super easy to follow these tutorials along with reading the book.

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

    Guys, I rarely read books and have web dev background, I think the rust programming book is pretty good. Definitely these videos are also a great resource.

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

    I love this series. Thanks!

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

    Great stuff

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

    No one in the comment section talked about shadowing being bad. I work in legacy c code and the codebase is very big with thousands of line in a function. It makes me anxious about the number of bugs that shadowing of variables can create allowed in the same scope.

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

    This series is insanely helpful, thank you so much.

  • @Kyle-rf5mb
    @Kyle-rf5mb Рік тому

    Really liking these videos, i hav ethe book but sometimes after coding all day at work i cant focus as much so just following along with the videos helps and once i start i get into it again. Thank you

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

    Very Useful Thank you

  • @k1tajfar714
    @k1tajfar714 6 місяців тому

    Rust's the best.
    thank you budd

  • @cherry-j5b
    @cherry-j5b 7 місяців тому

    Thank you for the video.

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

    💕👍 Thanks for video!

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

    Halfway to 100k

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

    Hey buddy, what plugin are you using that is helping you to declare the variable type?

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

    Data Types

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

    Great series so far

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

    Wonderful

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

    hi husky

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

    Thanks a lot ^_^

  • @jR-tm3ko
    @jR-tm3ko 2 роки тому

    Great vid!!!!

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

    Awesome video man, very helpful!!

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

    I’m watching it just as a hobby as it’s being so easily perceived.
    I really enjoy the format, how compact and at the same time comprehensive the videos are!
    High five for the efforts !

    ps
    The hell with that, this is probably gonna be an unusual comment but I also enjoy your background !

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

    LOL, that's the university district.

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

    Is it just me or why is shadowing a thing?

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

      because appearently naming variables quantity_string and quantity_number is le bad

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

    Эх, Богдан, Богом дан Богдан! :D Спасибо за видео!

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

    awsome

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

    chapter 3 completed ....

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

    Practicing one video a day to get rusty.

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

    😎

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

    You can actually just do the for loop without the iter

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

    in shadowing, how we can use the first variable, for example - let x =5; let x =9; println!("x = {}", x); this is always print 9, but how we can use the first 'x' now??

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

    I've watched so much of this series, and loved every minute. Then I heard you pronounce tuple, and it was so jarring and I instantly forgot everything I've watched. I'm sad that you're part of an enemy faction. I don't even want to know where you stand on tabs v spaces. I don't know if I could stand to hear the answer.

  • @GeorgeSukFuk
    @GeorgeSukFuk 7 місяців тому

    Why does "Let's Get Rusty" have to be typed, of all things, as &str. Literally useful for nothing. How many other string types does rust have now? Ridiculous. So many problems.