Migrating iPhone Applications to Windows Phone 7

 

Migrating iPhone Applications to Windows Phone 7

  • Comments 1
  I recently entertained a number of iPhone developers at Microsoft. The meetup I spoke to was the Silicon Valley iPhone Meetup.

You can read more about the meetup here.
hyperlink2  

Meetup for iPhone at Microsoft

  The goals of this post are simple.
image

The future is pretty clear.
image
We know a few things. There are over 4.5 billion mobile devices. According to Gartner, sales are growing rapidly.
image
  Why the massive growth in the mobile space?
  Phones today are more powerful than the Apollo spacecraft that went to the moon. Phones today can run powerful applications that were impossible just a few years ago.

Core memory of the Apollo spacecraft was 2048 words or 4096 bytes. Today’s Windows Phone 7 has a minimum requirement of 256,000,000 bytes of main memory.
  Flurry has reported very bullish numbers
image
  The Nokia relationship with Microsoft has changed the way developers view revenue potential writing software for the Windows Phone 7 device.
image
  It is obvious that good tooling can make your ideas easier to realize and implemented. However, lets be mindful that the entrepreneurial spirit is really what drives developers.
image
  The steps for Windows Phone 7 are almost identical.
image
  Both platforms (iOS and WP7) offer excellent resources for developers.
image
I recommend downloading the Windows Phone 7 Training Kit. It contains a huge amount of excellent resources.
image

Tool

Environment

XCode

iOS

Visual Studio

Windows Phone 7

 

 


All the tools, training kits, SDKs are free from Microsoft. I recommend the training kit above.

I also recommend going here, location of the free tools:

http://create.msdn.com

image

There is some guidance specifically for iPhone devs:

http://www.msdev.com/phone/iphone.aspx

There is some real advantages using a managed language to write code.

image

Here are some advantages:

Feature Value
Memory Management Don't worry about memory management. Garbage collector saves you from leaks.
Built in Indexers To help with list iteration and property getting.
No crazy typecasting It isn't possible to declare any type of pointer as assign it to any allocated address or cast it to any other type. C# allows only type-safe casting.
Generic Types Allows template classes to remain type-safe at compile time
Avoid Accidental Memory Corruption Bounds checking is performed for managed arrays automatically
More types Such as the Decimal type
Reflection Allows object metadata to be explored during run time.
   

I don’t dare put names on this image. With that said, I will demonstrate Windows Phone 7 leveraging Declarative Markup and High Level Procedural Language, and Advanced tooling, Cloud integration.


image


Some iPhone to WP7 Resources

Jesse Liberty - MVC to MVVM - Key Patterns http://jesseliberty.com/2010/09/04/iphone-to-windows-phone-7-diving-deeper/
How to make the move: iPhone to WP7 http://t3kd.com/blog/2010/11/29/how-to-make-the-move-iphone-to-wp7/
Repository and discussion for tutorial series An iPhone Developer's Guide To Windows Phone 7 Programming http://i2w.codeplex.com/

Getting your app into the Marketplace

Registration Walkthrough http://create.msdn.com/home/about/developer_registration_walkthrough
Windows Phone 7 Application Certification Guide http://go.microsoft.com/?linkid=9730558
Application Submission Walkthrough http://create.msdn.com/home/about/app_submission_walkthrough
Frequently asked questions http://create.msdn.com/en-us/home/faq

Some great internal links:

Catalog – Code Samples http://create.msdn.com/en-US/education/catalog/
Support and Feedback http://create.msdn.com/en-us/home/feedback
Roadmap – Great links to learning http://create.msdn.com/en-us/education/roadmap
Downloads - Developer Tooling http://create.msdn.com/en-us/resources/downloads
Official MSDN Library documentation http://create.msdn.com/en-us/education/documentation
Partner offerings http://create.msdn.com/en-us/resources/partners
Developer talks http://create.msdn.com/en-us/education/talks
Academia http://create.msdn.com/en-US/education/academia

Some useful books:

Book; Foundation Expression Blend 3 with Silverlight (Foundations) http://www.amazon.com/Foundation-Expression-Blend-Silverlight-Foundations/dp/1430219505/
C# 3.0 Cookbook, Third Edition: More than 250 Solutions http://msdn.microsoft.com/en-us/library/orm-9780596516109-03.aspx
C# 3.0 Design Patterns: Use the Power of C# 3.0 to Solve Real-World Problems http://msdn.microsoft.com/en-us/library/orm-9780596527730-01.aspx
C# 3.0 in a Nutshell, Third Edition: A Desktop Quick Reference http://msdn.microsoft.com/en-us/library/orm-9780596527570-03.aspx
Essential C# 3.0 for .NET Framework 3.5, Mark Michaelis http://www.amazon.com/Essential-3-0-NET-Framework-3-5/dp/0321533925/ref=sr_1_1?ie=UTF8&s=books&qid=1264528696&sr=1-1%20
Essential LINQ http://www.amazon.com/Essential-LINQ-Charlie-Calvert/dp/0321564162
Essential Silverlight (Ashraf Michail) http://www.amazon.com/Essential-Silverlight-3-Ashraf-Michail/dp/0321554167/ref=sr_1_1?ie=UTF8&s=books&qid=1264528797&sr=1-1%20
Professional Silverlight 4 (Jason Beres, Bill Evjen, Devin Rader) http://www.wrox.com/WileyCDA/WroxTitle/productCd-0470650923.html?cid=RSS_WROX_ALLNEW
Beginning Windows Phone 7 Development http://www.amazon.co.uk/gp/product/1430232161?ie=UTF8&tag=evedevshokno-21&linkCode=as2&camp=1634&creative=19450&creativeASIN=1430232161
Book; Learning Windows Phone (O'reilly) http://answers.oreilly.com/topic/1191-how-to-get-started-with-windows-phone-programming/
Ebook; Programming Windows Phone 7 Series (Petzold) http://charlespetzold.com/phone/index.html
Learning Windows Phone Programming (Yochay Kiriaty, Jaime Rodriguez) http://oreilly.com/catalog/0636920010210?cmp=il-orm-ans-learnmore-0636920010210
Professional Windows Phone 7 Application Development: Building Windows Phone Applications and Games using Silverlight and XNA http://www.amazon.co.uk/gp/product/0470891661?ie=UTF8&tag=evedevshokno-21&linkCode=as2&camp=1634&creative=19450&creativeASIN=0470891661
Windows Phone 7 Plain & Simple (Michael Stroh) http://www.amazon.com/Windows-Phone-7-Plain-Simple/dp/0735643423/ref=sr_1_13?ie=UTF8&s=books&qid=1280173629&sr=8-13
Windows Phone Secrets (Paul Thurrott) http://windowsphonesecrets.com/
Windows Presentation Foundation Unleashed http://www.amazon.com/Windows-Presentation-Foundation-Unleashed-WPF/dp/0672328917/ref=sr_1_1?ie=UTF8&s=books&qid=1266509776&sr=8-1
Learning XNA 3.0, O'Reilly http://www.amazon.com/Learning-XNA-3-0-Game-Development/dp/0596521952
Microsoft XNA Game Studio 3.0: Learning Programming Now! - Revised to cover Windows Phone 7 (Rob Miles) http://blogs.msdn.com/b/microsoft_press/archive/2010/04/14/rob-miles-on-windows-phone-7-application-and-game-development.aspx
Microsoft XNA Game Studio Creator's Guide, Second Edition http://www.amazon.com/dp/0071614060/ref=pe_606_15041530_pe_ar_t1
Windows Phone 7 Game Development (Adam Dawes) http://www.adamdawes.com/books/wp7gamedev.html
XNA 3D Primer http://www.wrox.com/WileyCDA/WroxTitle/XNA-3D-Primer.productCd-0470596937.html?cid=0225newwroxblox1%20

More to come…Thanks for reading !

  • I hope Windows Phone 7 gets native support at some time in the future, even if it's only through P/Invoke. The overhead and limits introduced by those "advantages" can significantly affect performance and battery life.  It would be nice to be able to drop down to "monkey" level in the small number of cases where it makes sense to do so.

    - A C# dev since 1.0, already a WP7 dev, and a lover of C++.

Page 1 of 1 (1 items)
Leave a Comment
  • Please add 8 and 8 and type the answer here:
  • Post