What is Web Hosting?
A web server that stores the actual files for the site. The domain name is linked to the web hosting account via a set of addresses called DNS entries.
When a web browser tries to view a web address (starting http://), the first thing it does is convert the first part of the address from a name (like www.ttllp.co.uk) into a numeric address that tells it which webserver to contact to ask for the page.
The conversion is done by asking a Domain Name System (DNS) Server. Most Internet Service Providers run their own DNS servers and their customers' computers get the details when they connect.
Domain names are purchased on a yearly basis and are owned by a ‘registrar’.
Why do you need Web Hosting and a Domain Name?
A domain name is the address by which people access your site.
The short answer is yes.
Why do you want to optimize your site for mobile devices?
As part of their search algorithm, Google looks at the code for your site and how well the site is rendered on mobile devices. If you site has a lower ranking in their PageSpeed Insights tool, that can affect your ranking in the major search engines. There are more people in the world using mobile devices than desktop computers.