Summary
This chapter was about understanding that services are nothing more than usual PHP objects that are constructed on demand. We saw that their real power comes from the fact that no memory is allocated to them until they are called and, more importantly, no matter how many instances of them are created, the allocated memory never grows over one instance.
You learned where and how to create the required configurations that a Service Container needs in order to instantiate the services. Decoupling bundles by putting their configurations in the DependencyInjection
folder was another subject that we studied. Lastly, we saw how to use tags in the service configuration in order to organize them better.
So far, we have used default Symfony commands or commands that come with third-party bundles. In the next chapter, we will see how to create our own commands.