Can I start to build a site before choosing/registering its domain?

The idea of starting with a temporary domain or working on local hosting using XAMPP are good. Both assume some knowledge of setting up a hosting environment. The easier approach of the two is to work through your hosting provider who at least will be able to provide a turn-key solution and will help you to move the site once you find the domain.

Bear in mind that moving the site from the domain to the final domain (once you have purchased the name) is not trivial. In particular, you will need to move the core files to the hosting directory for the domain and then will need to search and replace all instances of the old (temporary) domain name with the new (chosen) domain in the pages of the site. There are WordPress Plugins to help with this.

When designing and developing the site, there are a number of considerations apart from the domain name. The article ‘21 Things to be aware of when setting up a new website‘ is worth looking at in this regard.

I hope that this response is useful to you and wish you well in your venture.