Interfaces Explained in C#
20:51
2 ай бұрын
Inheritance in Blazor Pages
4:42
3 ай бұрын
C# Data Structures Explained
3:34
Пікірлер
@patrykforyszewski4655
@patrykforyszewski4655 2 сағат бұрын
That turned into an axcellent explanation! I wish I had came here earlier so I wouldn't had so much struggle with this topic, yet you made it even clearer.
@Weeb1367
@Weeb1367 2 күн бұрын
Appreciate it
@rahulkelkar1246
@rahulkelkar1246 6 күн бұрын
top tier explanation
@alisriti3002
@alisriti3002 14 күн бұрын
perfect, but I think you got a little bit lost with unnecessary code refactoring
@Mark-D-Inman
@Mark-D-Inman 14 күн бұрын
Thanks. Yes. While this unscripted video style works for some people, I don't think it's for me. I'll chalk this video up as a not entirely successful experiment.
@3DMage
@3DMage 14 күн бұрын
In the second example with the 'static' keyword, it seems to me that when LongLivedLeak() finishes execution, unless 'instance' is stored elsewhere in the program (like returning it or it is assigned elsewhere to a variable outside the function), then 'instance' would essentially be garbage collected due to the function going out of scope when it is done. I can see 'instance' not being garbage collect if that instance was assigned elsewhere and never handled with properly.
@dsfgato
@dsfgato 15 күн бұрын
excelent video
@dsfgato
@dsfgato 15 күн бұрын
great video Mark!
@Mark-D-Inman
@Mark-D-Inman 15 күн бұрын
Thanks!
@thiagolimadesousa4012
@thiagolimadesousa4012 20 күн бұрын
Thanks so much! Your tutorial is the best. It's super clear and to the point. Nice work!
@Mark-D-Inman
@Mark-D-Inman 19 күн бұрын
You're welcome. Glad it helped!
@thatokhumalo2559
@thatokhumalo2559 20 күн бұрын
Exactly the kind of explanation I needed, thank you Mark
@Mark-D-Inman
@Mark-D-Inman 19 күн бұрын
Absolutely my pleasure :-) Glad it helped.
@camilofernandez9542
@camilofernandez9542 20 күн бұрын
Great video, thanks for sharing!! do you have more material? greetings.
@Mark-D-Inman
@Mark-D-Inman 20 күн бұрын
Thanks. Yes there's plenty more videos on the channel, and I put out a new one every week.
@captainsubtext
@captainsubtext 21 күн бұрын
Hey Mark, do u even know a component that is also able to grab the styles, layouts, breaks, images? I created a letter with html but I lose everything except of the text. But I will try that html2pdf converter- thx mate 😊
@Mark-D-Inman
@Mark-D-Inman 21 күн бұрын
Hmmmm... I'm not too sure what you mean by grabbing the styles, layouts etc.
@turcman8684
@turcman8684 21 күн бұрын
Excellent, really helped. Thanks!
@sergeynartovich7541
@sergeynartovich7541 22 күн бұрын
I like your channel. I always learn new things.
@Mark-D-Inman
@Mark-D-Inman 22 күн бұрын
So glad to hear it Sergey. Thank you for watching.
@gahshunker
@gahshunker 25 күн бұрын
Thank you, saved me! 🙏
@Mark-D-Inman
@Mark-D-Inman 25 күн бұрын
Fantastic!
@gahshunker
@gahshunker 25 күн бұрын
@@Mark-D-Inman although I can't find the free licensing disclaimer anymore 😆, they moved to trial-based approach
@emreduman225
@emreduman225 29 күн бұрын
Nice one! I think you should make an another video about threads and multi-threads, That video would be complementary and relevant resource with this video. Thanks again!
@Mark-D-Inman
@Mark-D-Inman 29 күн бұрын
I'll do that for sure. Thanks for the suggestion. To build on this one, the next video will cover exception handling in asynchronous code, which i personally found painful to grasp initially.
@ashtonjackson805
@ashtonjackson805 Ай бұрын
🔥🔥🔥
@Sakach1
@Sakach1 Ай бұрын
So sad that discovered your channel this late, but this helps me learn a lot after tons of struggle. Definitely one of the most underrated coding channels I've ever saw keep it up!.
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
That's great to hear :-) Thank you. I'm so glad to be able to help.
@_Admin
@_Admin Ай бұрын
top tier
@dev_enca
@dev_enca Ай бұрын
Great explanation 💯
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
Thanks:-)
@egonleitgeb9360
@egonleitgeb9360 Ай бұрын
Thanks, really good video! Only one question more: is it possible to show the selected item with another css style?
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
Thanks. And yes you can absolutely style nodes differently with css classes. A simple way to do that would be to create a property on Node C# class, and depending on the value of that property you could give your link element one css class or another.
@egonleitgeb9360
@egonleitgeb9360 Ай бұрын
@@Mark-D-Inman I am rather new with blazor. Please, can you provide a short code snippet?
@wvvwwwvvw
@wvvwwwvvw Ай бұрын
0:43 `grid[1, 2] = 5;` - something looks really fishy here :)
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
:-) The image of the grid shows the data at the time the array is instantiated (shown by the arrow). So element[1,2] hasn't been assigned the value of 5. Yet :-)
@0x8080
@0x8080 Ай бұрын
Great high level overview of what a state machine is.
@0x8080
@0x8080 Ай бұрын
Super helpful as a long-time engineer who needs to brush back up on C# again. I'm finding it's getting harder as I get older to keep up with stuff, maybe I gotta pick up coffee again 😅
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
Glad to hear it :-) You should definitely pick up coffee again.
@rockatanescu
@rockatanescu Ай бұрын
I think the Liskov Substitution Principle is probably one of the most misunderstood principles in programming. It's not about child classes, it's about class hierarchies and the idea is that you *can* have a class hierarchy when the child classes implement similar *behavior* as the parent class, otherwise you will eventually run into inheritance-related issues. Let's work a bit with this specific example: you have a Bird class with two children classes, Pigeon and Eagle. Since the fly behavior is common to both Pigeon and Eagle, you decide to put the method on the Bird class. But then the requirements change and you need to add a Penguin class, which cannot fly. One common solution is to create an inheritance tree, with a FlyingBird class that inherits from Bird and implements the fly method. Pigeon and Eagle will now inherit from the FlyingBird, while Penguin inherits from Bird. It's the *FlyingBird* class that's violating LSP and thus helps you avoid building a complex chain of inheritance. *That's* the value of the Liskov Substitution Principle.
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
Excellently put.
@Don-ii4vm
@Don-ii4vm Ай бұрын
Can it be used to extract information from pdf invoices \ cv's \ etc?
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
Unfortunately, I can't confirm if any of the paid versions support this, but the free version of gemini can extract text from an image. So if the document isn't big you could screenshot it and load it to Gemini if you were desperate.
@kecvu
@kecvu Ай бұрын
I 100% agree on everything. Good tier list
@Mark-D-Inman
@Mark-D-Inman Ай бұрын
Thanks @kecvu! Like minds :-)
@risingforce9648
@risingforce9648 Ай бұрын
I would like that Unity can implements DI in a very friendly friend.
@alexandersjogren889
@alexandersjogren889 2 ай бұрын
Great explanation :) Thanks!
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Glad it was helpful!
@normalhether5806
@normalhether5806 2 ай бұрын
I saw your comment in Travis media and came here, new subscriber
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Glad to have you here :-) I hope you find some value.
@user-dc5qn7hl8z
@user-dc5qn7hl8z 2 ай бұрын
great video
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Thanks :-)
@mawio3763
@mawio3763 2 ай бұрын
Id love to see a tutorial where you put a demo wireframe together. Would be interesting to see the tools you use and your thought process.
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
You got it :-) I was actually thinking about doing a video on wireframes but wasn't sure it anybody would be interested, but now I'll definitely do one. Thanks for the feedback.
@juaninfante7000
@juaninfante7000 2 ай бұрын
@@Mark-D-Inmanyes please!!!
@chizobaharmonyugwa9882
@chizobaharmonyugwa9882 2 ай бұрын
Well explained video, many thanks.
@Ak-zm3ce
@Ak-zm3ce 2 ай бұрын
Great explanation keep it up
@techno7761
@techno7761 2 ай бұрын
Good idea, simple but useful
@mk553
@mk553 2 ай бұрын
How do you get past all the 406 'unacceptable' errors when pushing the packages to the source?
@Mark-D-Inman
@Mark-D-Inman 18 күн бұрын
I'm afraid I didn't come across that error myself. Did you find a solution for it?
@developingwoot
@developingwoot 2 ай бұрын
Really well explained! Looking forward to your next video.
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Awesome, thank you!
@lukevincent4397
@lukevincent4397 2 ай бұрын
Do I detect a fellow South African accent ?
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Yes, you do :-)
@pbooth88
@pbooth88 2 ай бұрын
Useful video, thanks. I disagree with the last comment though, I think the presentation would have been better if planned and scripted because someone who was new to the subject would struggle to keep up when it's a bit all over the place.
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Noted. thanks for commenting. I certainly prefer watching scripted videos myself. I am still brand new to this video thing and still figuring out how to make them better.
@mawio3763
@mawio3763 2 ай бұрын
Very powerful stuff! I like that you kept the unscripted stuff in the tutorial. Watching someone genuinely explain their thoughts is so much more entertaining. Keep them coming.
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Thanks for the feedback - really good to know.
@shawnwu4042
@shawnwu4042 2 ай бұрын
I am a beginner and your videos have helped me a lot. thank you very much
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
It's a pleasure. Thank you for saying so. Knowing that these videos are helping someone gives me inspiration to keep making them.
@stillnotchill2560
@stillnotchill2560 2 ай бұрын
this was very helpful in preparation for my interview, thanks!
@Mark-D-Inman
@Mark-D-Inman 2 ай бұрын
Glad it was helpful. Best of luck with your interview.
@alejandroguardiola9085
@alejandroguardiola9085 3 ай бұрын
I am confused with the second example, is my understanding that the instance will be mark for collection after the function finish, as the variable that holds the pointer is in the stack.
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
I totally agree that it is confusing, but it works like this. The static method itself "LongLivedLeak" is never garbage collected because it's loaded into memory along with the class definition and remains available throughout the program's execution. Even though the local variable "instance" itself might be eligible for garbage collection after the loop, the problem is that the static "LongLivedLeak" method still holds a reference to it. This indirect reference prevents the garbage collector from reclaiming the memory occupied by the instance object and its growing data list.
@alejandroguardiola9085
@alejandroguardiola9085 2 ай бұрын
@@Mark-D-Inman I understand the method is never collected because it is static, but everything created and not returned in a single execution will be collected, the method will never hold the instance that would be catastrophic I would think if this method is called in a loop.
@alejandroguardiola9085
@alejandroguardiola9085 2 ай бұрын
@@Mark-D-Inman A long lived leak I think would be if a static class holds a reference to the instance directly or indirectly inside a property but not a method.
@CarrigansGuitarClub
@CarrigansGuitarClub 3 ай бұрын
Great video - is anybody able to consume your package (when they have your username & key)?
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
Anyone with access to the repo.
@arthell1393
@arthell1393 3 ай бұрын
Great video! Didn`t know about the event listener example
@rohanar-qz6fn
@rohanar-qz6fn 3 ай бұрын
Nice ✨️ 😊
@maxpayne2024
@maxpayne2024 3 ай бұрын
Great video Information about Blazor. Thanks for sharing this. I think Blazor has a great future. Please continue
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
Thank you for saying so. I really love Blazor as a framework, so yes, you can definitely expect more Blazor content on this channel.
@mawa316
@mawa316 3 ай бұрын
So for the GitHub user name you used..... that will be committed and used by other developers? I wonder if making a Packages user in GitHub and maybe use that universally. ??
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
The username in the config file doesn't need to be committed or be part of the repo - use at will whenever you want to upload a package. And then other team members will use their normal GitHub accounts to access the package, provided they have sufficient repo permissions.
@mawa316
@mawa316 3 ай бұрын
@@Mark-D-Inman You may have mentioned it, but what development tool are you using?
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
@@mawa316 In this video, I'm using Rider from JetBrains. It's my .net IDE of choice. It does come with a price tag and so might not be the best thing for you if you are on a budget.
@mawa316
@mawa316 3 ай бұрын
@@Mark-D-Inman I've seen how to generate the package in Visual Studio, but trying to note the same in Visual Studio Code.
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
I've never done that myself, but I would have thought it's possible. Keep at it.
@t3c1337
@t3c1337 3 ай бұрын
I take issue with the idea that Domain Models, Entities, or Models are just simple objects that mirror database records. Ideally, the business layer should be blissfully unaware of the underlying database. It’s the infrastructure layer’s job to translate these Models/Entities into database records. Sure, for small or even medium applications with straightforward CRUD operations, this overlap might seem true. But when business requirements get more complex, we often need sophisticated data structures to represent a single business element. These structures can’t always be squeezed into a single database record.
@PhillipKerman
@PhillipKerman 3 ай бұрын
In all my teams over the last n-years, "infrastructure" always means cloud resources.
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
Thanks, that's good to know. That speaks to my point about terminology.
@user-ly3on4jg7g
@user-ly3on4jg7g 3 ай бұрын
Yup, in my mind Infrastructure is hardware and how it's setup. It actually had very little to do with code...
@ayman4490
@ayman4490 3 ай бұрын
Was literally looking for information on this topic. Great video quality man! Keep up the good work and looking forward to seeing more blazor uploads!
@Mark-D-Inman
@Mark-D-Inman 3 ай бұрын
Awesome, thank you!