On why there is a ban on intermediate layers of software development on the iPhone OS.
But the reason isn’t technical. It’s partly business (Apple doesn’t want another company to control any important part of the iPhone platform), but it’s also in no small part grounded in aesthetics and the progress of the platform. Apple wants developers to do things the iPhone and iPad Way because they believe it will result in a better user experience and better designed apps. That’s an aesthetic, design-centered argument about how touch apps should be done. Apple has created tools customized to the iPhone and iPad; hell, they built a whole new touch-based operating system. They created a whole set of user interface metaphors that are supposed to be standard and system-wide, and they want developers to do things the new way not because Apple just loves power, but because they believe it’s necessary to force developers to think about the new world of touch-based computing correctly. All of this in service of giving users who are taking their first steps into touch-based computing a great experience.
Developers who want to write software for the iPhone have to write iPhone-like software. To do otherwise will hinder the progress of the platform.