No, all window of an application are not positioned on the same layer.
But when you tab into an application, all of its windows are brought to the front.
If you want to bring one specific window to the front you are supposed to use Exposé, but some power users don’t like this because it uses the mouse instead of the keyboard.
Conversely, I find the lack of per-app grouping on Windows (outside of the taskbar) irritating, particularly on multi-monitor setups. I understand that it’s not everybody’s preference but it should at least be an option.
The behavior dates back to the original Mac, which could only context switch between applications via a hack that simulated multitasking (the days of 128K memory, etc.)
So that came along in 1987 alongside Macs with 1MB RAM. It built upon Switcher, which appeared with the 512kB Mac in 1985.
The reason all OSes now have file open/save dialog boxes is that the original Mac didn't have enough RAM to show a finder window alongside an app, so apps had to provide their own.
I was referring to Switcher, from 1985, which I believe ran on 128k Mac's. I was referring to Switcher because it set the user experience patterns and expectations for how app switching should work that led to multifinder and OSX per-app switching patterns.
The Mac OS has always been an app-first experience (leading users to tend to talk about the name of the app they are using) where Windows has always been a document-first experience (leading users to talk about the file type of the document they are opening). Apps and Documents are obviously both important, so this is a big of a ying and yang thing where it's clearly two sides of the same coin, and yet they lead to a bias to talking about, for example, keynote, which is an app, and to talking about PowerPoint decks, which are documents (again, a bias, not a totality).
> I was referring to Switcher because it set the user experience patterns and expectations for how app switching should work that led to multifinder and OSX per-app switching patterns.
Super handy! I regularly work on multiple projects at once. Have 3 phpstorm windows open, but working on project A, I can just CMD+Tab because project A is focussed. I switch between browser, terminal, editor, etc. Then, when switching to project B, I do CMD+` once in every app, and I’m done.
To me, this makes windows feel like a maze and macos feel natural.