Prerequisites of Studying Windows Phone Platform

One of the most frequent problems I faced while delivering Windows Phone Sessions using C#/XAML is that some of the attendees are of no background about the .NET Framework especially C# programming language.

As a result, I’ve decided to start “Discovering Windows Platform” with a post that shows the prerequisites of going through Windows Phone Platform whether using C#/XAML or any of the supported languages that will be also showed in this post.

BeReSo Let me start with a quick overview of the supported languages for Windows Phone 8 App Development then I will go deeply in the C#/XAML way.

SAs you see in the previous figure, you have many ways you can follow to develop your Windows Phone 8 App. You can use XAML for the UI and C# or Visual Basic for the code. If you know C++, you can develop a Direct3D app for Windows Phone 8 in that language to take full advantage of the phone’s graphics hardware. Also, you can develop games using DirectX/Direct3D and WP 7.1 XNA.

In this post, I’m targeting those who are willing to discover the .NET world using C# as a first step in their way towards being a Windows Phone Developer where my objective is to draw a road map that acts as a guide in the .NET world in order to be ready for studying Windows Phone Platform or any other .NET Based Platforms Such as Windows 8.

Simply, you will know in this post the following:

  • What topics should you Study to start discovering the .NET world and C#?
  • What are the materials that you can use ?

Let’s Start with Your First Step


Before studying C#, I highly recommend reading about the .NET Framework as you should know about the environment running your code. In the following links, you will find two .NET-related blog posts I wrote before:

1)  Life of Windows Programmers Before the .NET Framework

2)  The .NET Solution

Second Step


After understanding what’s the .NET Framework, you are now ready to start studying C#.

The following list includes the topics you should study to complete level 1 in C#:

  •  Anatomy of a Simple C# Console Application
  •  C# Data Types
  •  Input and Output (Console)
  •  Strings
  •  Narrowing and Widening Data Type Conversions
  •  Branching  (If-else and Switch)
  •  C# Iteration Constructs
  •  Implicitly Typed Local Variables
  •  C# Arrays
  •  Methods
  •  Parameter Modifiers
  •  .NET Value Types and Reference Types
  •  C# Nullable Types
  •  Enum
  •  Structures
  •  C# Class Type
  •  Constructors
  •  “Static” and “this” Keywords
  •  C#’s Encapsulation
  •  C# Access Modifiers
  •  Automatic Properties
  •  Inheritance
  •  Polymorphism
  •  Exception Handling

If you are interested in going deeply through C#, here’s a list of Advanced C# Programming constructs:

  • Interfaces
  • Generics
  • Delegates, Events, and Lambdas

I highly recommend this book ( Pro C# 2010 and the .NET 4 Platform) in studying the previous topics.

Third Step


Now, you have a language that you will use in implementing the backend of your applications which is C# and it’s the time to discover a language for building the User Interface which is XAML (Extensible Application Markup Language).

XAML is a markup language like HTML and it’s a very easy to understand. However, If you are not interested in learning such a language, you can skip it as you can drag and drop UI controls from Windows Phone toolbox to your application where the XAML code is auto generated.

I highly recommend reading these articles (XAML Overview) in discovering XAML.

Final Step

daData Binding is a process of establishing a connection between application UI and data in your application. In order to save time and write smaller code, you should make a heavy use of Data Binding technique.

I highly recommend reading these articles (Data Binding Overview) to understand what Data Binding is.


Finishing this learning trip means that you are ready to start discovering .NET Platforms such as Windows Phone and Windows 8. It also means that you are ready for the next post which is “Required Tools for Windows Phone App Development”.

Thanks for your time and Wish you find the post useful :)

Please Let me know, if you have any feedback :)

Tags: , , , , , , , , , , , , , , , , ,

About Sherif El-Mahdi

MEA DPE Intern at Microsoft, Nokia Developer Champion, Alumni Senior Microsoft Student Partner, Blogger, .NET Developer, 2nd Place Winner at Imagine Cup 2013 Egypt Local Finals, Studied Computer Science at Cairo University.

5 responses to “Prerequisites of Studying Windows Phone Platform”

  1. Eslam M. Ayad says :

    Reblogged this on Windows Phone Fiends and commented:
    Prerequisites of Studying Windows Phone Platform with Sherif Elmahdi Windows Phone Expert at Microsoft Egypt

  2. Ahmed Kamal says :

    Really an awesome blog ! I really was looking for it :D

  3. amit says :

    u r awesome man

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 1,743 other followers