Добавлен: 23.04.2023
Просмотров: 1277
Скачиваний: 30
Система имеет множество расширений, что делает работу с системой еще более комфортной. Благодаря наличию в IDE системы контроля версий, работать над проектами можно группами [3]. В системе имеется поддержка связи между IDE и системой управления задачами (ошибками). Кроме того основная поставка IDE имеет поддержку трекера ошибок Bugzilla.
Многие пользователи системы отдают свое предпочтение в пользу Eclipse в силу ее бесплатности и высокого качества.
На рисунке 4 представлен интерфейс Eclipse. Многие пользователи отмечают, что интерфейс системы лишен самого главного – простоты и удобства, что причиняет ряд неудобств при работе в системе [18].
Рисунок 4 – Интерфейс Eclipse
Вывод: Еще несколько лет назад Eclipse была практически монополистом для разработки под платформу Android. На данный момент Eclipse практически не поддерживается Google, связано это с появлением на рынке Android Studio, которая завлекла практически весь рынок.
Стоит подчеркнуть, что Android Studio разрабатывается при поддержке разработчиков платформы Android, что, бесспорно, является существенным преимуществом [14].
Несмотря на то, что Android Studio имеет столько преимуществ, многие пользователи используют Intellij IDEA, отмечая при этом, что совершенно не могут работать в Android Studio, несмотря на их схожий интерфейс [1]. В свою очередь и у Eclipse имеются свои поклонники, по большей части ими являются те, кто начинал разработку именно с данной платформы и уже смирился со всеми ее недостатками и по достоинству ценит ее преимущества.
2. Среды разработки для iOS.
Если для системы Android на рынке имеется несколько IDE, которые ведут постоянную конкурентную борьбу за пользователей, то для платформы iOS следует рассмотреть только одну IDE – XCode. При этом данное решение не означает, что отсутствуют другие IDE для разработки под платформу iOS, это означает, что у XCode нет прямых конкурентов [19].
На рисунке 5 представлен интерфейс XCode.
Рисунок 5 – Интерфейс XCode
XCode обеспечивает инструменты для управления всем потоком операций разработки – от создания приложения, к тестированию, оптимизации и представлению его к App Store.
Важной особенность IDE является то, что она тесно интегрирована с фреймворком Cocoa. Данное решение позволяет получить производительную и простую в использовании среду разработки [3]. При этом стоит отметить, что данной фреймворк используют и при разработке самой операционной системы Apple Mac OS X. Данный набор инструментов включает: Xcode IDE; Interface Builder; инструменты для анализа поведения и производительности; десятки дополнительных инструментов [16].
Таким образом, обзор Xcode IDE позволил сделать вывод, что среда предоставляет разработчикам мощнейшие инструменты для работы, отсюда становится очевидна причина, почему данная среда является практически монополистом рынка IDE мобильной разработки под платформу iOS.
В ходе анализа рассмотренных систем можно сделать вывод, что системы обладают огромной мощностью и широчайшими возможностями. Наиболее интересной средой разработки для Android является Android Studio. Несмотря на то, что система не имеет прозрачный интерфейс, система полностью охватывает требования большинства разработчиков.
IOS разработка на сегодняшний день активно набирает обороты в связи с ростом пользователей Apple-устройств. Для этого XCode является отличным инструментом, предоставляющим широкий спектр возможностей.
Стоит отметить, что выбирая IDE для разработки всегда необходимо отталкиваться от того, какие возможности имеет данная среда, насколько прозрачный интерфейс имеет [9]. Если интерфейс является очень сложным, стоит понять окупает ли себя сложность интерфейса возможностями системы. Кроме того важным является понять, нужны ли те или иные возможности IDE для конкретной разработки, вполне возможно они окажутся излишними, но потребуется изучить сложную IDE. В связи с этим разработчикам необходимо выбирать систему в соответствии со стоящими задачами и индивидуальными предпочтениями.
1.3 Кодирование
После того, как требования к мобильному приложению согласованы и выбрана платформа и среда для разработки, разработчик приступает к написанию кода приложения.
На данном этапе разработчику или команде разработчиков важно согласовать между собой зоны ответственности [7]. В таком случае разработка приложения будет идти в ускоренном темпе и каждому разработчику не придется постоянно контролировать весь код приложения.
После того как зоны ответственности распределены, разработчикам необходимо решить какие технологии они будут использовать во время разработки, как эти технологии будут взаимодействовать между собой. Здесь же необходимо определить каким образом будет между собой взаимодействовать функционал приложения, выявить возможные пути решения поставленных задач и цели проектирования [12].
1.4 Проектирование интерфейса
Конечно, главная роль, в большинстве случаев, отводится наполнению мобильного приложения контентом, ради которого пользователь использует данное приложение. К примеру, для мобильного приложения со справочником рецептов будет важно правильно указать состав блюда. Однако юзабилити и практичность определяют успех или провал любого приложения. В связи с тем, что именно пользователь будет нажимать по кнопкам приложения и, таким образом, принимать решения, то одним из стандартных подходов для создания успешных проектов стал дизайн, ориентированный на пользователя [20].
В момент проектирования интерфейса следует обращать внимание на два ключевых момента
1) восприятие человеком цвета;
2) принципы построения эффективного дизайна.
Цвет часто влияет на настроение и самочувствие человека, некоторые цветовые решения могут, как понравиться пользователям, так и отпугнуть их. Большую роль в разработке интерфейса играет восприятие человеком цвета.
Восприятие зависит от нескольких факторов:
– восприятие приложения целиком;
– психологическое и физиологическое состояние пользователя;
– форма элементов дизайна;
– как выглядят мелкие детали;
– как читается информация [6].
Следует не забывать и о том, на какую аудиторию направлено мобильное приложение. Для детей цветовая схема должна содержать яркие, теплые и красочные цвета, для людей среднего возраста – цвета средней насыщенности, более холодные и смешанные, для людей старшего возраста – пастельные, мягкие тона [11].
При выборе цветовой схемы следует придерживаться следующего:
1. Цвета должны соответствовать тематике приложения и гармонировать между собой (гармонирующие цвета – цвета, которые находятся рядом друг с другом на цветовом круге, к примеру, розовый с красным, желтый с оранжевым, и т.д.);
2. Цветовой тон и насыщенность должны соответствовать фирменному стилю;
3. Количество цветов должно быть около трех (конечно, если это не игровое приложение);
4. Подбирать цвет нужно с учетом возрастной категории посетителей [16].
Каждый человек воспринимает цвета по-своему. Следует помнить, что у каждого цвета есть свое символическое значение, с которым, возможно, связаны эмоции человека.
Рассмотрим основные принципы построения эффективного дизайна.
1. Принцип «Золотого сечения». Основная мысль принципа заключается в том, что при разметке блоков еще на этапе разработки необходимо соблюдать пропорцию, равную приблизительно 1.618. При нарушении пропорции пользователь будет испытывать внутренний диском-форт. Внутренне человек настроен именно на такое соотношение [17].
2. Закон Хика. «Каждый дополнительный этап выбора увеличивает время, необходимое для принятия решения».
Наибольшее распространение данный закон получил в дизайне в навигации. Так, чем сложнее навигация, тем меньше вероятность, что пользователь выберет хоть что-то. Следует избегать огромного числа кнопок и многоуровневого меню
3. Закон Фиттса. Закон предусматривает, что на принятие решения требуется время. Чем труднее совершить это действие, тем больше времени.
Чем сложнее путь для получения результата, тем больше требуется времени, тем больше времени у пользователя на то, чтобы передумать использовать данное приложение в дальнейшем [3].
4. Правило третей. Данное правило построено на упрощении первого правила – золотого сечения. Суть правила заключается в том, что любое изображение делится на девять равных частей. Фрагмент, находящийся в центре, будет самым «видимым» из всех.
5. Законы дизайна гештальта. Для дизайна законы гештальт-теории играют немаловажную роль [11].
Выделим для рассмотрения четыре принципа.
5.1. Закон близости. «Объекты, расположенные ближе друг к другу, воспринимаются как взаимосвязанные в отличие от тех, что расположены дальше друг от друга».
При проектировании дизайна следует располагать элементы, относящиеся к одной смысловой группе близко друг к другу, и наоборот – то, что семантически не близко, следует располагать на расстоянии, чтобы оно не слилось в одно целое.
5.2. Закон подобия. Объекты, имеющие общие внешние параметры (цвет, форма, размер и т. п.) воспринимаются как единое целое [8].
5.3. Закон замкнутости. «При взгляде на сложно расположенные элементы мы стремимся увидеть в них простую узнаваемую форму».
Так, при проектировании интерфейса следует предоставлять пользователю достаточно информации, чтобы он мог мысленно «дорисовать» в своем восприятии недостающие элементы.
5.4. Закон непрерывности. Для человеческого восприятия характерна тенденция воспринимать линию, как некую «связующую нить» [14]. Таким образом, «если два элемента размещены вдалеке друг от друга, но соединены линиями, пусть даже пересекающимися, связь между ними останется неразрывной» [18].
2 Тестирование мобильного приложения
Тестирование мобильного приложения подразумевает под собой процесс выполнения данного приложения с целью обнаружения ошибок. Шаги процесса задаются тестами. Каждый тест определяет: свой набор исходных данных и условий для запуска программы; набор ожидаемых результатов работы программы.
Другое название теста – тестовый вариант. Полную проверку приложения гарантирует исчерпывающее тестирование. Оно требует проверить все наборы исходных данных, все варианты их обработки и включает большое количество тестовых вариантов [3]. Исчерпывающее тестирование во многих случаях затруднительно, поскольку срабатывают ресурсные ограничения (прежде всего, ограничения по времени) [7]. Хорошим считают тестовый вариант с высокой вероятностью обнаружения еще не раскрытой ошибки. Успешным называют тест, который обнаруживает до сих пор не раскрытую ошибку.
Целью проектирования тестовых вариантов является систематическое обнаружение различных классов ошибок при минимальных затратах времени и стоимости.
Тестирование обеспечивает: обнаружение ошибок; демонстрацию соответствия функций приложения его назначению; демонстрацию реализации требований к характеристикам приложения; отображение надежности как индикатора качества мобильного приложения [12].
Тестирование не может показать отсутствия дефектов (оно может показывать только присутствие дефектов).
Для тестирования мобильных приложений используют виды тестирования представленные на рисунке 6.
Рисунок 6 – Виды тестирования
2.1 Тестирование установки
Прежде чем пользователь начинает использовать мобильное приложение, он его устанавливает. В связи с этим в первую очередь необходимо проверить корректность и возможность установки мобильного приложения [1].
При этом важно учесть, чтобы приложение устанавливалось на платформы, для которых оно предназначается, а также на любые устройства, для которых оно предназначается [23]. Если есть ограничения на платформы и устройства, это должно быть прописано в пользовательской документации.
2.2 Тестирование совместимости
Тестирование совместимости позволяет убедиться, что приложение может успешно перемещаться из одной среды в другую [18]. Другими словами, это позволяет определить, готов ли продукт к работе на разных платформах с различными конфигурациями оборудования и/или программного обеспечения. Это особенно актуально для кроссплатформенных приложений, разработанных одновременно под Android и iOS. Перечислим, что может спровоцировать проблемы совместимости: