| They did it before in the PowerPC to Intel change. Migration was helped by: - Fat binaries (Mach-O binaries can support multiple platforms). - A PowerPC emulator for applications that are not ported. I think they are even better positioned for an architecture change than during PowerPC -> Intel. They now have the app store where they can impose certain requirements (like supporting two architectures). And they now have their own compiler backend, which opens the possibility of supporting architecture-independent IR (along the lines of bitcode). |
And for a lot of the older Mac developers, iOS was kind of like another migration. And iOS has gone from armv6 to armv7 to arm64, plus the x86 and x86-64 simulator targets. Not to mention that there is now an LLVM Bitcode requirement for Apple TV and watchOS.
Apple and its developer community has a lot of experience with architecture migration. Each transition built on the experience of the previous and got smoother each time. Apple has been very good insulating their frameworks and tools from the architecture, and the Apple developer community has gotten very good at following Apple's guidelines to minimize disruption since there have been so many of these transitions.