As I'll be off for the holidays and not blogging until January, I thought to wrap up this year with this quickstart guide. I put together it together earlier this year for some of the business development guys at Microsoft who were helping other devs get started.

Getting Started Developing for Windows 8.1

A Cheat Sheet for Ramping Up Quickly

Getting started developing for Windows very much depends on the type of app being developed and the choice of language/presentation layer. The following information provides developers and designers with a foundation for finding the right path to explore the rich library of content available from Microsoft, including the best places to start your research.

Documentation

1.       Begin with Start Here which is a presentation-style walkthrough with the most essential links you need.

a.       The first page, Start, gets you the tools.

b.      The second page, Explore, highlights the language options and gives essential links to those starting tutorials. The key here is that you need to choose a language, and the basic guidance is “use what you know”. If you know more than one option, then you probably have a good sense of what is better for the app you want to build. If there are questions, we recommend consult with your Microsoft contacts on specific details that might make a difference in the choice:

                                                              i.      JavaScript with HTML:Create your first Windows Store app using JavaScript

                                                             ii.      C# or Visual Basic with XAML: Create your first Windows Store app using C# or Visual Basic

                                                            iii.      C++ with XAML: Create your first Windows Store app using C++

                                                            iv.      C++ with DirectX: Create your first Windows Store app using DirectX

c.       The third page, Design, points to planning and design guidance.

                                                               i.      Defining Vision is a good topic to think about what you’re trying to accomplish with an app. It has a number of sub-topics that go deeper into various areas.

                                                             ii.      Designers in particular need to start withDesigning UX for Apps as that contains the guidance around that aspect.

d.      The fourth page, Develop, gives the key on-ramping links to feature-specific tutorials. Many of these are also linked from the Learn to build Windows Store apps, which is the top-level table of contents for many areas of detail. This page is something you really just look at to know what’s all there—takes only a minute.

e.      The fifth page, Sell your app, is about the Store.

2.       I also recommend Chapter 1 of Programming Windows Store Apps in HTML, CSS, and JavaScript (a free ebook from Microsoft Press). This is an introduction to the platform from the viewpoint of an app, most of which is language-neutral.

a.       Alongside this, the topics under Windows Store app fundamentals will go a little deeper into each key platform area, like capabilities, contracts, app lifecycle, packaging, and app data.

b.      Two videos called “Beyond Just Beautiful” (Part 1 and Part 2) help raise awareness of non-so-obvious fundamentals of apps. (I made these for Windows 8; they are mostly applicable for 8.1 except that the slide on view states applies now to variable view sizing.)

c.       Note also that the above eBook, though directed toward HTML/CSS/JavaScript apps, is also very helpful to developers working in other languages as approximately 50% of the book is focused on the Windows Runtime APIs and other language-neutral aspects of the platform.

3.       There is also another set of tutorial series based on language choice:

a.       Developing apps (JavaScript and HTML5)–for this we also suggest Chapter 2: QuickStart of Programming Windows Store Apps in HTML, CSS, and JavaScript.

b.      Developing apps (C#/VB/C++ and XAML)

c.       Developing apps (C++ and DirectX)

4.      For some specific scenarios, see the list on In-depth guidance, which includes topics on games, reader apps, banking apps, the Hilo app, getting started for iOS developers, and migrating web or phone apps.

 

Samples

Learning to utilize the extensive samples in the Windows SDK, which cover 95% of the Windows Runtime APIs, is one of the great secrets of rapid app development. We recommend spending a day or so just getting familiar with the samples. Developers who do so will realize a high return on that invested time, as many bits of code that one needs in an app is already written in these samples.

The samples start on http://code.msdn.microsoft.com/windowsapps. The best thing to do is to download the whole kit and caboodle in your chosen language from http://code.msdn.microsoft.com/windowsapps/Windows-8-Modern-Style-App-Samples. Download the “full” package with all the languages so you just have everything. With this you can then:

·         Search in the sample tree for any API you’re interested in (make sure you have Windows index them).

·         The tutorials listed earlier often make reference to these samples, so you’ll already have them when you work through that material.

·         It’s instructive to just spend about 15-30 minutes browsing the folder after you’ve downloaded and unzipped the samples package. The folder names for each sample are very descriptive and will give you a great sense of what’s available (better yet, spend a day doing this, as noted above).

·         The aforementioned ebook, Programming Windows Store Apps in HTML, CSS, and JavaScript, links to every one of the JavaScript samples, and in the process also provides contextual links to the C#/VB and C++ variants of those same samples. The WinRT-related sections of the book, in other words, serve as a contextual index into the samples.

 

When you’re on the samples page, doing a search with feature keywords does a very good job at picking up the right samples. For example, if you want secondary tiles, searching on that term will give you the exact sample you need at the top of the list.

Also, with any given sample, it’s worth spending 5-10 minutes running the sample in VS and trying out all the different scenarios. Almost every sample has a choice of specific scenarios that are demonstrated, and provide descriptive text of what’s going on. They are a fabulous resource.


Comments are closed