\Joomla\CMS\Input\Input $input An optional argument to provide dependency injection for the application's input
object. If the argument is a JInput object that object will become the
application's input object, otherwise a default input object is created.
\Joomla\Registry\Registry $config An optional argument to provide dependency injection for the application's config
object. If the argument is a Registry object that object will become the
application's config object, otherwise a default config object is created.
\Joomla\Application\Web\WebClient $client An optional argument to provide dependency injection for the application's client
object. If the argument is a WebClient object that object will become the
application's client object, otherwise a default client object is created.
Rendering is the process of pushing the document buffers into the template
placeholders, retrieving data from the document and pushing it into
the application response buffer.