Separate environment for personal and development use under macOS How can I separate my professional use of Apple computer from the personal use?

I am about to get a new Apple computer soon. I am a developer (actually .NET developer ^___^) and would like to have my personal and professional use separated under the same machine.

I know there is the possibility to use Bootcamp to install Windows, probably the cleanest approach, but I am learning .NET Core and other frameworks available in macOS that I like to work with.

Which approach would you try to keep both personal and developers use away from each other?
There are multiple options:

The simplest would be to create two user accounts. Your first account is created during the first use of the Mac. Create a second account by clicking the Apple-menu in the top left corner, select System Preferences, Users &amp; Groups, open the lock and click + to add a new user.

This way you can login to either a personal or professional account. In the same place you add accounts, you can click "Login Options" where you can enble "Fast User Switching". This allows you to easily switch between the personal and private account (both can be logged in at the same time).

Other options for seperating personal and professional use are:

1) BootCamp Windows installation for professional use, macOS installation for personal use. Major drawbacks are that it requires a full reboot every time you want to switch between the two, and it is a hassle to ensure that disk space is available according to where you need it.

2) Virtual Machine with Windows (or macOS) for professional use, and the macOS native system for personal use. Can be done with for example VMware Fusion, Parallels Desktop or free alternatives such as VirtualBox. You can run the two environments simultaneously and share files, clipboard, etc. However allocating storage correctly can still be a nuisance.

3) Spaces. You can divide your open application windows in different "spaces" on the Mac. When you change "spaces" a whole set of windows are exchanged, such that you can keep a virtual desktop with all your professional stuff seperated from the private stuff. It is however up to yourself to organize windows between the two spaces, and there's no seperation of files, etc. on the disk.