Building Your First Windows Phone App

Learn all the necessary steps and skills to make your first Windows Phone app the best it can be.
Course info
Rating
(172)
Level
Beginner
Updated
Jul 16, 2014
Duration
3h 42m
Table of contents
Introduction
How to Get the Great Idea
Use Cases and Workflow
Design Your App
Your App Comes To Life
Organize Your Code
Business Logic
Testing Solution
Future Proofing Your App
Description
Course info
Rating
(172)
Level
Beginner
Updated
Jul 16, 2014
Duration
3h 42m
Description

You have this amazing idea and it is all in your head. Or you might be keen to build a Windows Phone app, but don't know where to start. This course will teach you everything you need to know to build your first Windows Phone app. From getting the great idea and conceptualizing it, analyzing how it can stand out in the marketplace, designing it, building it, testing it, and taking it to market. With this course you will be fully prepared to make your first Windows Phone app a great success. Even if you have built apps before, this course will teach you valuable insights into leveraging your tools and keeping you one step ahead of the competition.

About the author
About the author

Lars is an author, trainer, Microsoft MVP, community leader, authority on all things Windows Platform, and part time crocodile wrangler. He is heavily involved in the space of HoloLens and mixed reality, as well as a published Pluralsight author, freelance solution architect, and writer for numerous publications.

More from the author
Managing Scope Creep
Beginner
1h 22m
5 Jul 2018
More courses by Lars Klint
Section Introduction Transcripts
Section Introduction Transcripts

How to Get the Great Idea
Hi, I'm Lars Klint with Pluralsight, and in this module we'll look at how to get the great idea. In this module, we'll go through how you nail down that perfect idea for your first app. There is quite an involved process and you might even have to do a bit of soul-searching combined with compromise and objective evaluation. It is not the easiest thing to do, but getting a great start to your project makes the remaining 90% of the process run so much smoother. We'll look at finding the passion to build the best project you can, and how you should choose an area for your app that you are passionate about. You need to research your competition and be aware of what it is doing in the same space. You need to know what problem you want to solve and then make sure it is a problem that needs solving. This research includes looking at the Windows Phone Store and any current articles in your space of choice. You have to make sure you can differentiate yourself in order to let users choose your app over the others. And once you've gone through these steps, self-checking your idea using personas is a must. You have to distance yourself from your idea and looking at it through the eyes of your potential users.

Use Cases and Workflow
Hi, I'm Lars Klint, and this module is on Use Cases and Workflow. Having laid down the project idea and defined what you'll be working on for the next while, it is time to get into the meatier stuff. You probably have a head full of ideas, and you are aware of what your competition is doing and how you can stand out from the crowd of apps, good and bad. In this module, I'll start off with helping you define development strategies appropriate for your project. This is dependent on a few factors, but is relatively simple to decide. We'll look at identifying the features you want to include in your app and creating a backlog of items that can be used to layout a roadmap for development. We'll use the personas created in module 2 to prioritize the features and get a clear picture of what is the highest priority. Use case diagrams are used to relate features to each other and to build a picture of how your app will be developed as a complete experience for your future users. Finally, we'll look at workflows that will predict how you want users to use your app and get the best user experience. This includes wireframes and, again, putting yourself in the place of your personas.

Design Your App
Hi I'm Lars Klint from Pluralsight and this module is on designing your app. Apps have to be visually engaging to users and in this module we'll look at how you can design your app, what to look out for, and how to leverage the existing resources. First off we'll tackle how you might start out designing an app being a developer. There are a few handy tips to keep you out of trouble. We'll go through some basic design guidelines and how you can approach the various layouts and elements that make up your app. We'll look at grid layouts, theming your app, and the most common elements of the Windows Phone platform that you need to include in your design. Next up is the actual implementation of your design. You need to be aware of how elements are built up in a hierarchy of containers and either the panorama or pivot elements are present in most apps. You have to make your app unique and that goes for design as well. But you still have to be aware of certain aspects to keep your integrity and to keep your users on side. Lastly, we'll go through how you might bring designer resource on board, either as a contracting role, purely for the initial design guidelines. Leveraging someone else's talent might be better for you in the long run. We will also touch on some of the tools that you can use to make your design journey much easier.

Your App Comes To Life
Hi I'm Lars Klint with Pluralsight and in this module we'll make your app come to life. We are now up to where the magic starts happening. In this module we'll make your app come to life. We'll look at tools for both writing business logic for your app as well as designing the user interface. These tools include Blend and Visual Studio, which are ubiquitous when it comes to Windows Phone development. I'll show you why it is the most awesome development environment around, whether you are a single developer or part of a larger team. We'll go through where to get the tools and what their strengths and weaknesses are. A key differentiator for the development environment is the workflow between designer and developer. We'll delve into how you can get the most out of this partnership and improve a range of key metrics. Once you have a fully fluid workflow, you will be unstoppable. Of course it is possible and likely you are a sole developer. This works very well as well, but you need to be aware of when to use which tool. We'll look at what a standard workflow could be once you start building your app. Finally, we'll start building a simple app using both Blend and Visual Studio. We're going to set up your first project and create some basic structures and design using the tools we just talked about.

Organize Your Code
Hi, I'm Lars Klint, and this module is on organizing your code. Starting a new Windows Phone app project is easy, as we saw in the previous module when we set up a new project in Visual Studio. However, organizing your code can prove much more challenging. In this module, we will first look at why it's important to get the right start on your project. We will look at some of the dangers lurking if you don't implement the right strategy and structure, before we will delve into how you can use the Model, View, View Model or MVVM framework to organize your code. MVVM adds decoupling of your code and structures it into logical units and layers that can be easily unit tested. We will look at how you can implement MVVM into your solution and where some of the pitfalls might be. We'll look at how you implement Source Control being an essential part of your project. Source Control adds control, confidence, and collaboration to your project, and as you'll see you can't really live without it, at least not if you want your project to have longevity and be extendable. We'll follow up that discussion with some practical examples on using Git and GitHub in practice and you'll see how easy it really is. We'll look at some pointers to keep your project on track and make use of the resources that are available to guide you through any issues you come across.

Business Logic
Hi, I'm Lars Klint with Pluralsight and this module is on implementing business logic. In previous modules, we've gone through how to determine your app idea, how to flesh it out and define value value adds for your users, how to design it, and how you start implementing it using the right components and tools. In the last module, we went through MVVM and how to use Source Control to excel your project. In this module, we will look at some structures that can help implementing your business logic in the best and most efficient way. We will look at portable class libraries, which provides a native way to separate logic into a library that can be reused across platforms such as Windows 8 and Windows Phone. The PCLs lend themselves very well to contained models in your MVVM architecture and we will delve into how that is accomplished. We will have a closer look at using cloud services, in particular Windows Azure, to centralize some of your core features and functionality using toast notifications and live tile updates. You'll learn the basics of using programming best practices, which can be hard to obtain on occasions, but is always something to strive for. On top of all this, there will be general sprinkling of demos and live examples to get you on your way implementing the business logic in your app.

Testing Solution
Hi, I'm Lars Klint with Pluralsight, and this module is on testing the solution. You've by now got some features and the structure of your project is on the right track. In this module, we'll get into keeping everything running smoothly by introducing testing for parts of the project. First off, we will identify what you should test. There are many components to a Windows Phone app and it is not necessary to test some aspects, but very important to test others. We'll cover testing business logic and the proprietary modules and units that make up the core of your intellectual property. We'll look at the areas that are focused on when you submit your app for certification. You need to prepare your app for events that are out of your control, for when a user runs the app for the first time, and you need to keep performance in mind. This module covers a lot of areas that are essential to tests, and it can seem overwhelming, but a good test plan gives the best outcome, and in fact, can save you a lot of headaches and time over the course of the project. We go into more detail of unit tests, integration testing, and the built-in tests that come with Visual Studio. Built-in tests are the tests that you should always keep in mind as they are tests performed by the certification process as well. Although testing can seem arduous and tedious, this module will point out why it is such an essential part to get right.

Future Proofing Your App
Hi, I'm Lars Klint and this module is on future proofing your app. We are almost at the end. You've now learned how to build the majority of your app. Granted, all the hard work is now with you to use the building blocks from this course to create something awesome for your first Windows Phone app. The various lessons and techniques in the previous eight modules will make sure that you don't get sidetracked or into trouble when building your first Windows Phone app. In this last module, we will look at how you can future proof your app as much as possible. We will look at the feedback from users about how your app performs and why it is so important. You can get feedback in different ways and we will go into detail on each. Code maintenance is part of future proofing your app by fixing bugs and adhering to your original architecture. Providing updates is a way of keeping your app alive and relevant, and we will look at strategies for releases. Finally, we will look at marketing your app and some different strategies and approaches to get you and your app known to potential users and customers. This final module will set your Windows Phone app up for continued success and be the last piece of the puzzle for building your first Windows Phone app.