Охрана труда:
нормативно-правовые основы и особенности организации
Обучение по оказанию первой помощи пострадавшим
Аккредитация Минтруда (№ 10348)
Подготовьтесь к внеочередной проверке знаний по охране труда и оказанию первой помощи.
Допуск сотрудника к работе без обучения или нарушение порядка его проведения
грозит организации штрафом до 130 000 ₽ (ч. 3 статьи 5.27.1 КоАП РФ).
Повышение квалификации

Свидетельство о регистрации
СМИ: ЭЛ № ФС 77-58841
от 28.07.2014

Почему стоит размещать разработки у нас?
  • Бесплатное свидетельство – подтверждайте авторство без лишних затрат.
  • Доверие профессионалов – нас выбирают тысячи педагогов и экспертов.
  • Подходит для аттестации – дополнительные баллы и документальное подтверждение вашей работы.
Свидетельство о публикации
в СМИ
свидетельство о публикации в СМИ
Дождитесь публикации материала и скачайте свидетельство о публикации в СМИ бесплатно.
Диплом за инновационную
профессиональную
деятельность
Диплом за инновационную профессиональную деятельность
Опубликует не менее 15 материалов в методической библиотеке портала и скачайте документ бесплатно.
02.03.2017

Особенности разработки мобильных приложений

Разработка мобильных приложений — это увлекательный процесс создания программ для смартфонов и планшетов. Материал подробно объясняет ключевые этапы: от генерации идеи и проектирования интерфейса до написания кода и тестирования. Вы узнаете об основных платформах (Android и iOS), различиях в их разработке и популярных инструментах. Особое внимание уделяется важности удобства для пользователя, дизайна и безопасности приложения. Это руководство поможет школьникам понять, с чего начать свой путь в мобильной разработке и какие навыки для этого необходимы.

Содержимое разработки

ОСОБЕННОСТИ РАЗРАБОТКИ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ

Количество используемых смартфонов на планете Земля понемногу подбирается к двум миллиардам. На каждом из этих смартфонов установлены мобильные приложения — от часов и погоды до интересных игр и калькуляторов. Переломный момент, когда мы из простых телефонов с простыми функциями получили сложные смартфоны с приложениями «телефонов», «сообщений», «часов» и «калькуляторов», положил начало развитию этого рынка. Множество разработчиков делают свои приложения и загружают их в Google Play или App Store, чтобы такие как мы могли их скачать бесплатно или купить. Сказать, что мобильных приложений много — ничего не сказать. И нам это определенно нравится.

В Xamarin.Forms визуальный интерфейс состоит из страниц. Страница представляет собой объект класса Page, она занимает все пространство экрана. То есть то, что мы видим на экране мобильного устройства - это страница. Приложение может иметь одну или несколько страниц.

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

Возьмем созданный в прошлой теме проект HelloApp. По умолчанию весь интерфейс создается в классе App, который представляет текущее приложение:

Но данный путь не единственный. Xamarin.Forms позволяет создавать визуальный интерфейс как с помощью кода C#, так и декларативным путем с помощью языка xaml, аналогично html.

Создние интерфейса из кода C#

Добавим в проект HelloApp новый класс, который назовем MainPage. И определим в нем следующее содержимое:

Данный класс представляет страницу, поэтому наследуется от класса ContentPage. В конструкторе создается метка с текстом, которая задается в качестве содержимого страницы (this.Content = header).

Чтобы обозначить MainPage в качестве стартовой страницы, изменим класс App:

Также стоит отметить, что в Visual Studio есть готовый шаблон для добавления новых классов страниц с простейшим кодом. Так, чтобы добавить новую страницу, надо при добавлении нового элемента выбрать шаблон Forms Content Page:

Данный класс добавляется в главный проект решения (в данном случае это HelloApp (Portable)).

Добавленный класс страницы будет иметь следующий код:

Этот класс также будет наследоваться от базового класса ContentPage и будет иметь практически ту же самую организацию, что и выше созданный класс MainPage.

И также в классе приложения мы можем установить эту страницу в качестве стартовой:

Хотя мы можем создавать весь интерфейс и в коде C#, но более предпочтительным способом является его описание в XAML. XAML представляет язык разметки на основе xml для создания объектов декларативным образом.

В прошлой теме мы рассмотрели создание класса страницы, которая представляет графический интерфейс, и собственно можем вообще обойтись без кода XAML. Однако использование XAML все-таки несет некоторые преимущества.

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

Во-вторых, XAML позволяет описать интерфейс более ясным и понятным способом, такой код гораздо проще поддерживать и обновлять.

XAML позволяет организовать весь пользовательский интерфейс в виде набора страниц подобно тому, как это делается в HTML. Для добавления новой страницы с кодом xaml в проект, необходимо выбрать тип элемента "Forms Xaml Page":

В результате Visual Studio добавит в проект два файла - StartPage.xaml и файл связанного кода StartPage.xaml.cs:

StartPage.xaml будет содержать разметку визуального интерфейса новой страницы:

Запуск страницы

Чтобы определить эту страницу в качестве стартовой, перейдем в проекте в файл App.cs и изменим класс App следующим образом:

Теперь в качестве главной страницы задается определяется объект класса StartPage. И если мы запустим проект, то увидим эту страницу на тестируемом устройстве.

Структура файла XAML

Файл с разметкой на xaml представляет собой обычный файл xml, и первой строкой идет стандартное определение xml-файла. Далее здесь определен элемент ContentPage, внутри которого определена метка с текстом.

В определении корневого элемента ContentPage подключаются два пространства имен с помощью атрибутов xmlns.

Пространство имен http://xamarin.com/schemas/2014/forms определяет большинство типов из Xamarin Forms, которые применяются для построения графического интерфейса.

Второе пространство имен http://schemas.microsoft.com/winfx/2009/xaml определяет ряд типов XAML и типы CLR. Так как только одно пространство имен может быть базовым, то это пространство используется с префиксом (или проекцируется на префикс) x: xmlns:x. Это значит, что те свойства элементов, которые заключены в этом пространстве имен, будут использоваться с префиксом x - x:Name или x:Class

После подключения пространств имен идет атрибут x:Class="HelloApp.StartPage, который указывает на класс, представляющий данную страницу.

Далее внутри ContentPage определены непосредственно элементы, которые и будут представлять графический интерфейс.

Элементы и их свойства

XAML предлагает очень простую и ясную схему определения различных элементов и их свойств. Каждый элемент, как и любой элемент XML, должен иметь открытый и закрытый тег, как в случае с элементом ContentPage:

<Label></Label>

Либо элемент может иметь сокращенню форму с закрывающим слешем в конце, наподобие:

<Label />

Каждый элемент в XAML представляет объект определнного класса C#, а атрибуты элементов соотносятся со свойствами этих классом. Например, элемент ContentPage фактически будет представлять объект одноименного класса ContentPage, а элемент Label - объект класса Label.

Каждый элемент в xaml можно сопоставить определенному классу в C#, а каждый атрибут элемента - свойству этого класса. Однако если свойства классов могут принимать значения различных типов: string, double, int и т.д. То в XAML атрибуты элементов имеют текстовые значения:

<Label Text="Hello World" VerticalOptions="Center" HorizontalOptions="Center" />

Свойство Text класса Label в качестве значение принимает строку, поэтому здесь никаких преобразований не потребуется. Но, к примеру, свойство VerticalOptions в качестве значения принимает одну из констант перечисления LayoutOptions, например, LayoutOptions.Center. Однако в коде XAML мы присваиваем просто значение Center. Дело в том, что в Xamarin Forms действуют конвертеры типов, которые позволяют преобразовать от одного типа к другому.

Кроме простых свойств, которые могут устанавливаться в с помощью простой строки, например, <Label Text="Hello World" />, в XAML могут применяться сложные или комплексные свойства. В таких случаях свойство класса может принимать в качестве значения какой-нибудь сложный объект, который в свою очередь имеет некоторый набор свойств. Сложные свойства определяются в формате:

<Элемент.Свойство>

<Сложный_объект />

</Элемент.Свойство>

Например, у класса Label есть свойство Style, которое в качестве значения принимает сложный объект одноименного класса Style:

Элемент Style устанавливает стилевые свойства метки через вложенные элементы Setter.

Также простые свойства можно представить в виде сложных, например, вместо VerticalOptions="Center" написать:

<Label.VerticalOptions>

<LayoutOptions>Center</LayoutOptions>

</Label.VerticalOptions>

Также в xaml применяются прикрепляемые свойства (attached properties). Например:

Здесь определен контейнер Grid, который создает табличное представление. С помощью сложного свойства Grid.RowDefinitions определяется набор строк грида.

В элементе Label применяется прикрепляемое свойство Grid.Row, которое определено в классе Grid, но используется или прикрепляется к объекту Label. В данном случае свойство указывает, что метка будет находиться во второй строке (отсчет строк начинается с нуля).

Адрес публикации: https://www.prodlenka.org/metodicheskie-razrabotki/247425-osobennosti-razrabotki-mobilnyh-prilozhenij

Свидетельство участника экспертной комиссии
Рецензия на методическую разработку
Опубликуйте материал и закажите рецензию на методическую разработку.
Также вас может заинтересовать
Свидетельство участника экспертной комиссии
Свидетельство участника экспертной комиссии
Оставляйте комментарии к работам коллег и получите документ
БЕСПЛАТНО!
У вас недостаточно прав для добавления комментариев.

Чтобы оставлять комментарии, вам необходимо авторизоваться на сайте. Если у вас еще нет учетной записи на нашем сайте, предлагаем зарегистрироваться. Это займет не более 5 минут.

 

Для скачивания материалов с сайта необходимо авторизоваться на сайте (войти под своим логином и паролем)

Если Вы не регистрировались ранее, Вы можете зарегистрироваться.
После авторизации/регистрации на сайте Вы сможете скачивать необходимый в работе материал.

Рекомендуем Вам курсы повышения квалификации и переподготовки