I think it's partly because alt + tab does not exist on Mac. Command + tab is between applications rather than windows. Command + ~ is between windows within an application. I had to downloaded HyperSwitch to get the same functionality.
edit: HyperSwitch is free. HyperDock is what I paid for.