If you start a Tweet with "@username" then only that person and people following you and that person will see the Tweet.
If you want to be seen to be addressing a particular person then adding something before the "@username" is the simplest way to do it.
You could do something like:
Did you know @username ...
Hi, @username ....
but these would take up even more characters from the rest of the message. A single character takes up the least space and a dot is the least obtrusive.
It's all about bragging to your followers. You are saying "Look, I'm in a conversation with @username" :)