having a domain gives you a deffinitive internet presence.
not only is it a shorter address, but its more trusted. i wouldn't but anything from someone hosted on a free domain, purely because it screams scam at me. if you have a domain name, people trust you more immediately.
it gives you a base from which to build and sell your product. having a domain is like having a shop on the highstreet rather than selling out of a car boot. which one would you rather buy from?
you can get your own private company name as your domain, and thus begin to build up a reputation. rather than having a long URL where no one ever remembers your name and might find you once in a blue moon via a search engine, you get an immediate presence and people remember you.
search engines rank "proper" domains better than free ones, understandably. they are more "secure" and less likely to dissappear overnight.
people that want to link to your site because it has good content will be far more likely to link to a proper domain, because its more secure, more trustable, and generally more professional.
professional companies have domains, no two ways about it. if you're young and you can't afford it, then get free hosting with a short domain, my favourite, and one that i used for ages before i could raise the funds for domain + hosting, was
www.freeservers.com where i got whatiwanted.s5.com giving me one of the shortest free URL's on the net.
nothing beats a high-level .com address, get one if you can, because you'll do so much better with it