I work on an experienced and diverse development team and we are preparing to approach our first mobile development which will be for Windows Mobile 6 (platform changes are not an option).
We have skills and experience in both Visual C++ and .Net technologies for Windows desktop and server development.
The mobile development will include some image processing, and read/write access to a bluetooth device. Unfortunately I can’t really give any more details than that.
We are trying to choose between writing the mobile client using managed code or native code. We would use C# or C++ respectively.
My questions are:
-
How big is the expected performance differential between these languages? I have heard that native code is significantly faster on mobile devices, but I would love to hear from someone with experience.
-
Are there any major advantages to either language in terms of working with the Windows Mobile services for accessing bluetooth devices?
-
Is there an impact on battery life between managed or native code?
-
Are there any other major should-knows for us to consider?
I appreciate your feedback.
A very similar question was asked and answered just a few days ago. You can find useful information there.
Short answers to your questions: