I have some Windows Mobile and web experience and tried out Android (besides long-time NT/C++), so these are thoughts on iPhone development in no particular order:
1) Objective-C is easy to pick up for C++/C#/Java developer. Strange at first but you get used to it. Lack of garbage collection on iPhone is a big disappointment given that it's available on MacOS X. Integration with C++ libraries is straightforward.
In general development is somewhat slower than for Andoid or even WinMo, but result is nicer/smoother looking. Tools are OK, editing in XCode lacks some features you get used to in Eclipse or Visual Studio. It's free (unlike Visual Studio), but obviously you need Apple hardware to run it.
2) UI: there is no layout engine to speak of, so some things require more work than in Android for example. From other hand some very nice standard controls are provided (navigation bar, table view is very customizable etc.). Surprisingly some things you would expect are absent: glass buttons used in Apple apps and alerts, function to get height of the keyboard for laying out your controls accordingly, etc.
3) Apple seems somewhat restrictive about access to their developer program (and without this it's all pointless - you are not going to get access to the store). We got ours, but it took some time and they lurked on our website a bit probably to make sure that we are real.
4) Safari web apps look quite solid and it's possible to make them well integrated with the iPhone. Now with the SQLite access from Safari for the local storage for many kinds of apps it makes sense to be developed as web apps because it's generally faster to develop and easier to distribute.
5) I wish Apple would officially support Python for iPhone development.
1) Objective-C is easy to pick up for C++/C#/Java developer. Strange at first but you get used to it. Lack of garbage collection on iPhone is a big disappointment given that it's available on MacOS X. Integration with C++ libraries is straightforward.
In general development is somewhat slower than for Andoid or even WinMo, but result is nicer/smoother looking. Tools are OK, editing in XCode lacks some features you get used to in Eclipse or Visual Studio. It's free (unlike Visual Studio), but obviously you need Apple hardware to run it.
2) UI: there is no layout engine to speak of, so some things require more work than in Android for example. From other hand some very nice standard controls are provided (navigation bar, table view is very customizable etc.). Surprisingly some things you would expect are absent: glass buttons used in Apple apps and alerts, function to get height of the keyboard for laying out your controls accordingly, etc.
3) Apple seems somewhat restrictive about access to their developer program (and without this it's all pointless - you are not going to get access to the store). We got ours, but it took some time and they lurked on our website a bit probably to make sure that we are real.
4) Safari web apps look quite solid and it's possible to make them well integrated with the iPhone. Now with the SQLite access from Safari for the local storage for many kinds of apps it makes sense to be developed as web apps because it's generally faster to develop and easier to distribute.
5) I wish Apple would officially support Python for iPhone development.