No matter if you develop for ASP, WordPress, Drupal, Joomla or just PHP, a developer needs a test site/server to develop their sites. Developing live on the actual site is never a good idea no matter the size of the site. That is where XAMPP comes in, XAMPP is a personal test server you can run and install right on your computer.
Now before I get a ton of comments on all the other options, yes I am aware there are other test server type software you can install, but I am covering XAMPP because that is the one I most familiar with.
There are many tutorials on how to install XAMPP, this one here, is a great tutorial you can go through and set up for WordPress. I am not going to go through step by step, but I will give you some pointers, first be careful of Skype.
XAMPP and Skype both use port 80, so one of them you are going to have to set to a different port. Second before you start to create your new website, make sure to create your database first.
Once you have it installed you should be able to go to http://localhost/xampp from here you can access the phpMyAdmin. This is where you can create your database, especially if you plan on using WordPress.
To find where to add your html pages for your website, you usually have to go to the C:xampp/htdocs from here I like to add subfolders, such as WordPress, Drupal, Joomla, or cart. That way I can just install the types of software I want in each folder, makes it easier to find things.
So if you made the subfolders, your url would look like http://localhost/wordpress/. Now you can break it down even further if you have multiple sites to build or just install everything right in this folder.
XAMPP For Site Development
The only downside I have found for using XAMPP to develop sites, is when you need to show your client the site. This can be a pain when dealing with routers and access to your network through the web. An easy way around this I found a couple free services that you can have them install, one is join.me.
Join.me is simple install, and you would give them a code usually a long number to put in their end and then they can see your screen. Another option is Team Viewer, this is similar to Join.Me, but has more options. Again there are tons of programs out there that let you have access to other computers, these are just some of the more simpler options.
XAMPP is just one of many tools you can use when developing themes and websites, there are options out there and would love to hear about them and the process you use in the comments below.