With passwords you are handing out what is needed to log in. With the ssh public key scheme, you only prove that you have the private key, but don't hand it out to the server.
This is very easy to do, and quite important for devices that can be stolen - including your desktop computer.
It's easy enough to setup ssh-agent on your desktop so you don't have to keep entering the password.