rhm said:JoshRoss said:*snip*
Yeh, as I've commented elsewhere, it's ironic that Jobs opens with a section on open standards when trying to defend a rule that forces native app developers to code to Apple's proprietary APIs. It's a great example of doublethink.
Also, I'm amazed how many people are buying this crap about quality and consistent UI experience - not just Apple shills like John Gruber, but most of the media are taking it at face value also. And yet it doesn't stand up to scrutiny from any angle:-
- Qualtiy - example the app store and you can find lots of low-quality apps that would embarass any competent Flash developer.
- Quality - if Apple decided to care about quality of native apps they already have the App Store approval process to deal with it.
- Quality - the idea that making developers use worse tools will impove the quality of apps is laughable. Everyone has had approved apps crash on their iPhone and 99.9% of the time it was because of a memory leak or a memory access error. Forcing developers, usually ones with no experience in unmanaged languages, to use C/C++/Objective-C is the cause of the problem, not a solution.
- UI Consistency - has anyone ever played a game on the iPhone? Guess what - they're like games on every other platform, i.e. they don't use standard GUI look components. Never have and never will. If people were going to make non-game apps with Flash and use the Flex libraries to code the UI, that would be a problem, but again it could be dealt with in the App Store approval process easily enough.
Games are still reasonably portable between Android, WebOS and iPhone. They all use the same graphics API (OpenGL ES). As long as you code to OpenGL directly and don't use any of the Cocoa widgets it should be fine.
Potentially you could also also have some portability on the mobile platforms for more traditional apps. You just code your business logic in C or C++, and your iPhone specific UI logic in Objective-C. Most smartphone OSes both support C and C++, and could share the business logic.
Of course they could close this loophole by saying "all code written for the iPhone must only be used on the iPhone, no sharing!". Of course, that will be probably be added just before they also add the "all your softwares are belong to us" clause.