Комментарии:
Was a hard lesson but I finally understood DI Containers, thanks Gio
Ответитьwhat a great explanation.
no one ever explain DI smooth like that.
honestly you should be the main reference to who wants to dive deep in programing in right way
Wow, i have been trying to undestard how DI work and how to be implemented, now i get the point. Thanks alot.
ОтветитьThis is exactly what I was searching for. Thank you so much brother💙
ОтветитьGio expĺanation is flawless. If you still have troubles getting this right, checkout this vid -> watch?v=y7EbrV4ChJs&ab_channel=LaraconEU do the code in that presentation and then comeback here :)
Ответитьthis is obvious that you are so qualified in php, i have not ever watched a lesson like your lesson, Thank You 👋👋👌
ОтветитьGio, although there was a lot in here that i needed to digest, this is fantastic. It gave me great understanding of PHP. My only worry is that if i used all these advanced stuff in my app, my other co-developers will have a hard time understanding the app 😀
ОтветитьThank you for your video course. Please advise - this lesson missing index.php, but in your example it works on localhost:8000 just by reloading the page. What is in the index.php? Thanks!
Ответитьawesome explanation, thanx a lot
ОтветитьI’m running into the problem that I can’t use promoted properties as constructor parameters in my Controller classes anymore. It says the params are invalid. Could you tell me if that’s intended? Thanks a lot!
ОтветитьDude, your ability to simply breakdown each step, articulate and visually demonstrate, especially over a topic that can seem complex at the beginning, is amazing.
Having knowledge and experience is one thing, but having the ability to explain it, like you just did, is a gift.
Well done, good sir.
nette framework have better di container
ОтветитьIt is the best explanation of DI Container I ever saw, Wit tutorials like Yours going further with modern frameworks like symfony is a piece of cake.
ОтветитьYou are super great ❤️
ОтветитьNice Job Gio. From the comments, i see that people understand what you are doing. but honestly i am lost. I think i need to go back to the previous videos
Ответитьis it magic?
ОтветитьI think Learning this lessons well I can go from trying to get into internship to get to the senior at once. This is the type of the lessons that are hard but I have not watched to any other courses as well. Well done, Top G!
ОтветитьAlso please let me know if I understand it correctly Gio, So the Dependency Injection is a design pattern where dependencies of a class are provided from the outside, rather than created internally. The Dependency Injection Container is a tool that automates the management of object dependencies within a software system?
Ответитьgreat work dude, now i have idea how the DI in frameworks work , and that awesome, using something and having the knowledge how it work behind scene it really great.thanks a lot
ОтветитьYou definitely went the extra mile explaining this topic. Thanks a million!
ОтветитьMaybe I am understanding it wrong but... how do you handle the base types? If I understand this tutorial right (which maybe I do not...) they will throw an exception within the container?
Thank you for your explanations!
I was upgrading Symfony to v4.4 three months ago and got so confused with the DI and auto-wiring changes. I read most of their docs and still get confused. This is the best explanation ever!!! Thank you!
Ответитьcan u add vietnamese subtitle, please !!!!!
ОтветитьThanks!
ОтветитьSir, I've to watch this specific videos multiple times to get better understanding, as I've to notice smaller things happening, like [this] captured by closure confused me for a longer time, and I've to use ChatGPT which informed. that closure captures surrounding environment, and because it's new topic for me, I've a request if you don't mind, like could you create a full-fledged DI. container things in a separate playlist again for all of us?? It would be much more helpful, because you've explained things, but about union types and other things, you skipped, as I'm the type of person who likes to go in-depth, it would be great if you add another playlist and make video on DI container only, like which we can use in production. Thank you for the course again... I'm still learning ☺😀
ОтветитьThanks!
ОтветитьThanks you! You have a really simple way of explaining things.
ОтветитьSheesh, what a straightforward explanation about DI. thanks for sharing this knowledge to the community.
ОтветитьSo for the past week or so I have been trying to wrap my head around this concept. I have searched and read many articles about it, asked on a forum and received many replies, but nobody has explained it as well as this video. It has pretty much answered all the questions I have on the subject.
ОтветитьHey Gio. Can you explain how can we use methods like ->get() for `Container $c` function parameter if we did not instantiate it first? The code is following:
static::$container->set(InvoiceService::class, function (Container $c) {
return new InvoiceService(
$c->get(SalesTaxService::class),
$c->get(PaymentGatewayService::class),
$c->get(EmailService::class));
});
Hi Sir, will wish to know the difference between ReflectionNamedType and ReflectionUnionTypes. And as of php 8.1, ReflectionIntersectionType has been added. Will wish to know the difference between them
ОтветитьWow, I was surprised. you teach it amazingly. I wish I could do the same as you. I'll try my best.
ОтветитьGreate explanation, thank you
Ответитьif you are using composer, you have already lost control of your code.
ОтветитьThanks for the great explanation.
You've mentioned that the ContainerInterface doesn't define set method because it may have many different implementations.
But why the interface doesn't provide the method anyway ? at the end it's only an abstract method and any framewrok can provide it's own implementation and any class that implements this interface has to provide an implementation to the set method or it has no meaning.
So, In my opinion there is no problem adding the set definition to the interface and adding union type to the ($concrete param) or am i missing something ?
Greate video! but can you explain how these instances can be resolved? If im not wrong your resolve method will call get() but the get() also call resolve(), can you explain this?
ОтветитьVraiment extraordinaire
ОтветитьPresented, chopped, cooked, served on a platter. Masterpiece.
ОтветитьAnother excellent video, very informative. Thank you so much
ОтветитьReally the Dependency Container part by this lesson is really great! Thank you Gio for all the precious input!
As far as I understand you "this is not for productive use" means that if I would implement:
- caching
- aliasing
- singleton support
- autowiring
- support for optional parameters
- support for variadic parameters
- support for interface (that comes in the next lesson I guess)
or if I would avoid using single steps such as Singletom pattern in my code. I could use it in productive? Or would you still not recommend?
This explanation of DI is the best I've ever seen in a tutorial. You've done an impressive job!
ОтветитьMy great teacher, thank you for your great lessons
English is not my language, but I am good at it. The important thing is that the simplicity and smoothness of your explanations help you a lot to understand
Your student from under the war, Gaza Strip, Palestine
Wowowowo incroyable my friend
Ответить