I received an email inquiry about this topic and I have decided to reply here. This is a common question and no one solution fits all situations. If you have a live site, how do you go about creating a new site without messing up that live site? The answer depends on your hosting account and your skill level.
If you have a single hosting account without any way to add a second, separate account, you can develop the site in a subfolder that is named something like 'new'. If your hosting allows, create a new database for the new site. If you can only use a single database, when you install Joomla, select a new prefix for the tables. When you're ready to go live, take a backup of the entire folder and the database(s). Delete everything from the hosting folder EXCEPT the 'new' folder. Move the files to the root hosting folder. Open configuration.php and change the path to the log and temp folders. Test, test, test and then you're up and running. Pros - doesn't require you to buy another hosting account. Cons - easy to stuff up if you're not careful.
If you can create a second hosting account using a sub-domain such as new.example.com then this is preferrable. There is no risk of losing files during your move or deleting the wrong thing. When ready, change your live domain to something like old.example.com. Then rename new.example.com to your live domain. Your host can help with this if necessary. Pros - harder to mess up. Cons - might cost depending on your host and sometimes the domain switching process can get messed up.
Finally you can develop offline by creating a local environment using XAMPP (Windows) or MAMP (Mac). When you're ready, take a backup of your local site using Akeeba Backup, delete your live site and restore your local site using Akeeba Kickstart. Pros - some developers find a local hosting environment provides a faster response and as such it is quicker to develop (not my experience). Cons - getting XAMPP setup can be a pain and you're not building in the same environment as your live server which can lead to unexpected results.
Feel free to reply if you need anything clarified.