Итак, для того, чтобы начать писать на этой молодой и амбициозной, но уже ставшей очень популярной, мобильной платформе Windows Phone 7 (далее WP7), необходимо совсем немного.

    • Необходимо подружиться с .NET Framework – программной платформой, на которой и ведётся вся разработка. Если вы чувствуете себя достаточно опытным программистом, вы вполне можете начать с книги известного гуру Джеффри Рихтера «CLR via C#». Новички в программировании или те, кто пока не чувствует себя опытным разработчиком, могут посетить ресурс для начинающих от Microsoft или прочитать, например, книгу Эндрю Троелсена «Язык программирования C# 2010 и платформа .NET 4.0».
    • Выбрать направление разработки. Платформа .NET содержит в себе множество технологий и фреймворков, которые служат для разработки в различных областях: десктоп, веб, etc. Для мобильных приложений WP7 предлагается на выбор два варианта: Silverlight for Windows Phone и Microsoft XNA. Если вы хотите писать бизнес-приложения, lifestyle-приложения, а также приложения в стиле Metro (интерфейс платформы WP7), то выбор ваш ложится на первый вариант. Если же вы разработчик динамических, живых игр, то XNA идеально подходит вам.

      Обе технологии очень успешно рассматриваются почти во всех сегодняшних книгах по WP7: например книга Роба Кэмерона “Pro Windows Phone 7 Development” или Чарльза Петцольда “Программируем на Windows Phone 7”.
    • Получить средства и инструменты разработки. Нам понадобятся:
        • среда разработки Visual Studio 2010 Express for Windows Phone (не стоит переживать, «обычная» Visual Studio 2010 SP1 тоже на это способна :) ). Получить можно здесь: http://www.microsoft.com/visualstudio/ru-ru/products/2010-editions/windows-phone-developer-tools
        • Windows Phone 7.1 SDK. Скачать отсюда http://create.msdn.com/en-us/resources/downloads

Это самый минимум, который необходим для написания и тестирования. Вместе с SKD на ваш компьютер установится эмулятор аппарата под WP7. XNA Game Studio 4.0 можно взять отсюда http://create.msdn.com/en-us/resources/downloads

Необязательные пункты

  • Если вы хотите делиться своими приложениями с другими пользователями или продавать их, то вам необходимо зарегистрироваться в Windows Marketplace. Регистрация проходит через App Hub. В ней абсолютно нет ничего сложного. Если вы являетесь студентом, программа поддержки студентов Dreamspark от Microsoft поможет вам в том, чтобы получить бесплатный аккаунт. А в целом регистрация платная. Регистрироваться здесь http://create.msdn.com/en-US/home/membership. Получение доступа на участие в программе DreamSpark тут http://www.dreamspark.ru/access.aspx
  • Быть в курсе событий, читать свежие статьи, посещать конференции, форумы, следить за последними обновлениями и новинками. Это здорово пригодится и вы получите дополнительный опыт и знания. Ресурсы:
    • любимый iDev.by ☺
    • wp7rocks.com
    • wp7forum.ru
    • MSDN http://msdn.microsoft.com/en-us/library/ff402535(v=vs.92).aspx
    • habrahabr.ru с тегом wp7 или windows phone.

Hello world на Windows Phone 7

Три первые пункта успешно пройдены и мы можем перейти в главному – начать что-то разрабатывать.

Откроем нашу среду разработки, выберем новый проект. Из типов проектов выберем Silverlight for Windows Phone, далее из доступных шаблонов проектов выберем Windows Phone Application, впишем проекту имя и нажмём кнопочку ОК.

Готово. Среда разработки сгенерировала нам проект, который уже готов к запуску и загрузке в телефон. Путём нехитрых манипуляций, а именно нажатием Debug -> Start debugging в строке меню нашей среды разработки, запускаем наш проект и видим примерно следующую картину:

Произошло вот что: среда скомпилировала наш проект и запустила его. Затем появился эмулятор и показал нам результат.

Давайте теперь сделаем что-нибудь своё. Итак, задача такова: добавить на экран кнопку, при нажатии которой всплывёт системное окошко с сообщением: “Hello idev.by !”

Приступим. Справа мы видим так называемый Solution Explorer, который позволяет нам управлять структурой проекта. Вот как он выглядит в развёрнутом виде.

Дважды щёлкнем на MainPage.xaml. Это файл с графическим представлением нашей стартовой страницы приложения. Содержимое этого файла представляет собой XAML-разметку, которая и формирует интерфейс приложения. Если вы до этого сталкивались с XAML в WPF или Silverlight, то это просто замечательно. Тем, кто знаком с HTML, будет гораздо легче освоить его, чем тем, кто никогда не верстал интернет-странички.

Верхняя часть файла выглядит очень громоздко и страшно, но пугать она не должна, т.к. здесь описываются библиотеки, из которых мы будем использовать те или иные элементы управления, а также свойства страницы. В нижней части располагается всё содержимое.

Именно здесь мы должны добавить кнопку на нашу страницу. Для этого уберём всё лишнее, в контейнер содержимого страницы добавим элемент управления Button, а его свойству Content, отвечающему за содержимое кнопки, дадим значение “Click me”. Кроме этого, нам нужно сделать специальный обработчик нажатия кнопки, который позволит нам показать системное сообщение. Назовём его OnButtonClick. В результате всех этий действий, наш файл с разметкой страницы будет выглядить следующим образом:


<phone:PhoneApplicationPage
x:Class="WP7HelloWorld.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
shell:SystemTray.IsVisible="True">
<Grid x:Name="LayoutRoot">
<Button Height="96"
Content="Click me"
Click="OnButtonClick"/>
</Grid>
</phone:PhoneApplicationPage>

Каждая страница, кроме своего внешнего представления, обладает так называемым code-behind файлом, в котором расписывается вся логика страницы. Для MainPage.xaml он называется MainPage.xaml.cs. В Solution Explorer он является как бы дочерним файлом нашей страницы, его можно увидеть, развернув файл MainPage.xaml. Давайте дважды щёлкнем на него. Отсюда мы уберем все ненужные нам пространства имён, подключённые автоматически нашей средой разработки и добавим кусочек кода, выполнение которого, при нажатии кнопки, приведёт к показу системного сообщения. В результате мы должны получить вот такое содержимое:

using System.Windows;

namespace WP7HelloWorld
{
public partial class MainPage
{
public MainPage()
{
InitializeComponent();
}
private void OnButtonClick(object sender, RoutedEventArgs e)
{
MessageBox.Show("Hello, idev.by =)");
}
}
}

Снова запустим наш проект. При нажатии на кнопку мы видим искомое сообщение.

Если теперь мы нажмём на аппаратную кнопку Назад на эмуляторе, то мы покинем проект и попадём в стартовое меню эмулятора. Здесь мы увидим одинокий Internet Explorer. А если мы нажмём на стрелочку сверху или просто передвинем это меню влево (так же, как в айфоне), то увидим, что наше приложение осталось на эмуляторе и мы можем его запустить вручную. Правда при следующем запуске эмулятора, нашего проекта там уже не будет ☹.

Вот пожалуй и всё. Хочу пожелать вам творческих успехов и больших свершений в освоении этой молодой, но очень перспективной платформы Windows Phone 7.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *