Ok, lets sum up what Apple does different:
the OS is software tied to the set of hardware they sell. The hardware it self is basically a custom designed x86/x64 Plattform resp. Custom ARM on iOS side
on MacOS however you can install any software you want. The App Store is optional (always has been)
when you develop for MacOS/iOS exclusively then you have to do this on a Mac commonly with XCode. On cross platform development (depending on the technology) you have at least to compile on a Mac to get a Mac specific build/binary. To be fair: same is mandatory if you want a Windows executable. May there are exceptions (pointing to the new .net core: are there exe‘s created when compiling on a different platform?)
Hmm that’s all that comes up to my mind. I will add/ correct things when something else comes up or I was wrong :)