the_author() Function
The function the_author() displays the name of the current post's author. It differs from the function get_the_author() in that it echoes the author's name via PHP, rather than just retrieving the author's name as a string that can be stored in a variable or used elsewhere. The author's name on the page will display publicly however it is configured by the site's Admin; it could display as the author's username or an alternate nickname.
the_author_link() Function
This function displays either the author's link (whatever they have set as their Website in their User profile) or their name if no link is set. If they have a valid website URL, the link's text will display their name and will link to their website. The related function get_the_author_link() retrieves their link or name to store as a string.
Differences & Similarities
The functions perform similar tasks with one important difference: the_author() echoes only the author's name as it appears publicly on WordPress, while the_author_link() echoes their name as a link to their selected website. If no website is entered, the functions perform the same task and simply display the author's name.
Summary
The function the_author() displays the name of a WordPress post's author as it appears publicly (set under their User profiles). The function the_author_link() displays the same name formatted as a link to the website selected by the author. If no website is provided, it displays only their name as plain text. Preceding either function with get_ retrieves the author's name or HTML link as a string.