Apple wanted users to have a uniform, high quality UI across all apps. That required some policing and a close relationship with a small number of favored developers. Their API was probably too complex and brittle for widespread unfettered software development, and they probably didn't want their platform to be defined by a proliferation of "bad" software from developers like me who didn't care about their UI standards. Many users would accept "bad" software that got the job done: Small apps for automating business processes, engineering tools (cross assemblers for microcontrollers), games, etc. Developers turned to MS-DOS, which had a vastly simpler API. I wrote "bad" software, i.e., that respected no centralized UI standard.
I'm not sure Windows was much better before Visual Basic came along, but long into the Windows 3.1 era, programmers still used MS-DOS for simple things.