- Гайдлайны для новичков в Android-разработке: что прямо сейчас намотать на ус
- Авторизуйтесь
- Гайдлайны для новичков в Android-разработке: что прямо сейчас намотать на ус
- С первых шагов уделяйте внимание производительности
- Не допускайте утечек памяти
- Создавайте побочные треды
- Используйте strings.xml
- Настройте Gradle по умолчанию
- Садитесь учить паттерны проектирования
- И учите Kotlin
- Да и вообще, подходите к обучению комплексно
- Что такое гайдлайны мобильных приложений и зачем они нужны?
- Что это и зачем это вообще нужно?
- Google Material Design System
- Apple Human Interface Guidelines
- Почему нужно использовать гайды?
- Полезные ссылки
- Гайдлайны для мобильных приложений: зачем они нужны?
- Что такое гайдлайн?
- Apple
- Windows Phone
- Выводы
Гайдлайны для новичков в Android-разработке: что прямо сейчас намотать на ус
Авторизуйтесь
Гайдлайны для новичков в Android-разработке: что прямо сейчас намотать на ус
Мы маленькие, а разработка под Android большая и непонятная. Собрали для начинающих несколько гайдлайнов, которые стоит принять во внимание как можно раньше.
С первых шагов уделяйте внимание производительности
Приведем короткий пример. Допустим, написанное вами приложение в процессе работы внезапно запрашивает больше памяти. Если памяти на устройстве не хватает, система закрывает другие работающие программы для обеспечения корректной работы вашего приложения.
Другой пример: вы скачали фильм и решили глянуть его в дороге. По вашим расчетам, зарядки должно хватить часа на 4, но в кульминационный момент телефон вырубается, потому что видеопроигрыватель съел все имеющиеся ресурсы устройства.
Вывод: не заставляйте пользователя и другие программы страдать, грамотно расходуйте оперативную память, CPU, GPU и батарею.
Не допускайте утечек памяти
Грубо говоря, утечка памяти — это когда вы выделили под нужный вам объект оперативную память, а после того, как он стал не актуальным, не обозначаете это. В итоге происходит переполнение стека и как результат — вылет приложения.
Это очень серьезная проблема, значимость которой увеличивается прямо пропорционально времени и интенсивности работы пользователя с приложением.
Несколько полезных рекомендаций:
- никогда не сохраняйте ссылки на Context, Activity, View, Fragment, Service в статических переменных;
- будьте аккуратны при передаче ссылки на Activity, View, Fragment, Service в другие объекты;
- никогда не сохраняйте ссылки на Fragment в Activity.
Чтобы понять, о чем тут вообще речь, и углубиться в исследование темы, почитайте разъясняющий материал.
Создавайте побочные треды
Для того чтобы улучшить производительность приложения, обеспечить хороший отклик и избежать распространенную ошибку ANP («приложение не отвечает»), стоит разделять внутреннюю архитектуру выполнения приложения на потоки (треды). Это позволяет не перегружать главный поток, настроенный по умолчанию. Подробнее про процессы и потоки почитайте на официальном сайте.
Используйте strings.xml
Разработчики обычно не сразу понимают, что с текстом полезно работать как со строковым ресурсом. Но при таком подходе, например, очень просто перевести все приложение целиком на другой язык. strings.xml позволяет хранить все необходимые приложению строки в одном месте и вызывать их по id. Изучите эту технологию как можно раньше — на первых этапах может показаться, что это трата времени и проще хардкодить, но на самом деле это сильно оптимизирует процесс разработки, особенно в долгосрочной перспективе.
Настройте Gradle по умолчанию
Для автоматизации сборки отдайте предпочтение Gradle — инструменту, который активно разрабатывается командой Google и официально считается в этом контексте основной системой. С его помощью удобно управлять зависимостями, он позволяет использовать структуру каталогов и поддерживает инкрементальные сборки.
Садитесь учить паттерны проектирования
Вместо того чтобы изобретать велосипеды, быстро и элегантно катайтесь на проверенных моделях. Для этого как можно раньше начните разбирать шаблоны проектирования — они описывают типичные способы решения распространенных проблем при проектировании программ.
И учите Kotlin
В этом году Kotlin объявили официальным языком для разработки под Android, что обеспечивает всестороннюю поддержку, рост сообщества и подспорье для быстрого развития языка. Пока не советуем хайповать и учить его вместо Java, но точно имеет смысл учить его вместе с Java. А еще лучше — когда чувствуете себя в Java хоть немного уверенно. Почитайте сравнительный обзор двух языков.
Да и вообще, подходите к обучению комплексно
Хватать отрывочные знания — это нормально, но без хорошей структуры и проработанного плана далеко не уедешь. Изучайте книжки, смотрите видеоуроки, общайтесь на StackOverflow, читайте статьи, но в первую очередь реализуйте «скелет», на котором все ваши знания будут жить.
Для этого лучше довериться профессионалам и записаться на программу в онлайн-университете. В отличие от обычных курсов, у вас будет персональный помощник-куратор — он поможет быстро разобраться с вопросами, на которые у новичков часто уходят недели. Помимо этого обучение построено проектно-ориентировано — это значит, что вы будете создавать реальные приложения в процессе прохождения программы. Аналогичный подход используется в ведущих учебных центрах США. Год обучения = год опыта разработки.
Источник
Что такое гайдлайны мобильных приложений и зачем они нужны?
Jun 14, 2018 · 4 min read
Когда речь заходит о дизайне мобильного приложения, первое, что на ум приходит любому дизайнеру, понимающего специфику — это гайдлайны.
Что это и зачем это вообще нужно?
Основная задача мобильного приложения состоит в том, чтобы помочь решить проблему пользователя как можно быстрее. Здесь речь идет о секундах, а иногда и о долях секунд.
Представьте, если бы каждое мобильное приложение имело б ы свой уникальный дизайн и навигацию. Тогда пользователю каждый раз приходилось бы тратить время на то, чтобы разобраться в интерфейсе, понять, где кнопка, которую можно нажать, а где просто текст в рамке. Тогда бы на решение проблемы уходило в разы больше времени и счет шел бы уже не в секундах, а в минутах. Это полностью идет вразрез принципам мобильного приложения.
Именно для ускорения процесса решения проблем пользователя в приложении и были придуманы гайдлайны.
Гайдлайны (Guidelines) — набор рекомендаций, правил, принципов от создателей платформы, операционной системы, благодаря которым приложения под эти платформы и ОС от разных разработчиков выглядят единообразно. Гайдлайны мобильных приложений описывают принципы навигации и взаимодействия, элементы интерфейса и их стиль, используемую типографику и иконографию, цветовые палитры и многое другое.
Кроме того, гайдлайны способны сократить время и стоимость разработки мобильного приложения, так как всё то, что описано в гайдах, как правило, уже реализовано в виде готового элемента в коде и разработчику не нужно изобретать велосипед с нуля.
На данный момент существуют два гайда под две небезызвестные платформы:
Google Material Design System
Google Material Design был представлен вместе с Android 5.0 в июне 2014 года, а с мая этого года стал полноценной дизайн-системой и уже может быть использован и на других платформах (например, смарт-тв, десктоп- или даже веб-приложение, iOS-устройство). Изначально был направлен только на ОС от Google: Android Wear, Android TV, Android Auto.
Основными идеями Material Design являются принцип глубины интерфейса, его интерактивность (отзывчивость) и движение (анимация изменения состояния).
Здесь каждый элемент навигации находится на определенной высоте относительно другого элемента и реагирует на нажатия пользователя. Например, боковое меню находится над панелью навигации, а карточка из списка под ней. Кнопка как бы опускается вниз при нажатии на неё, меняет за собой отбрасываемую тень и заливается цветом с эффектом чернил.
Material Design в качестве прообраза для всей системы использует бумагу и чернила на ней. Любой интерфейс построенный по канонам Material можно представить в виде отдельных листков бумаги, которые наслаиваются друг на друге и отбрасывают тень.
В Material Design System есть все. Здесь есть все системные иконки, UI-киты, шрифты, цветовые палитры, и даже плагин для Sketch для генерации кастомного UI. И все это можно скачать прям тут. Здесь вы найдете все размеры для каждого даже самого незначительного элемента интерфейса. Найдете кучу примеров, как делать можно, а как делать нельзя. Увидите кучу анимированных примеров. Найдете инфу про типографику, где и какой шрифт нужно использовать, с каким отступом, интерлиньяжем и кеглем. Везде по всему гайду есть ссылки на нужные разделы и если вы не знаете чего-то, то об этом сразу будет внизу сноска.
Словом, Google сделали самый лучший гайд (а сейчас уже дизайн-систему) в истории мобильного мира.
Apple Human Interface Guidelines
Apple Human Interface Guidelines был представлен вместе с iOS 7 июне 2013 и с тех пор расширился для использования с другими ОС от Apple (watchOS, macOS, tvOS).
Основной идеей Human Interface Guidelines является простота и «воздушность» интерфейса. Во главу угла возводится контент, а интерфейс уходит на второй план. Приветствуется интерактивность (отзывчивость) и анимация изменения состояния элементов интерфейса. Размытие окон на нижнем уровне, градиентные заливки, болдовая типографика в лучших традициях швейцарского стиля.
В отличие от Material Design System в Human Interface Guidelines нет четких правил и конкретных спецификаций. Например, нельзя в гайдах от Apple посмотреть размер кнопок. Некоторые элементы интерфейса просто в гайде отсутствуют, хотя используются в официальных приложениях от Apple. Здесь в отличие от Google, Apple как бы разрешает дизайнеру «поиграть со шрифтами» и дает больше свободы для кастомизации в рамках платформы.
В разделе загрузок также есть UI-киты для всех популярных инструментов и шрифты. Иконки придется искать свои, по какой-то причине Apple не дает возможности скачать системные иконки.
В общем и целом гайд iOS гораздо более беднее, чем гайд для Android. Поэтому я рекомендую использовать сторонние интерпретации. Например, вот здесь можно найти хорошую интерпретацию.
Почему нужно использовать гайды?
Подводя итог по гайдлайнам. Использовать их при дизайне мобильного приложения просто необходимо по четырем причинам:
- Ускоряется процесс дизайна
- Ускоряется разработка
- Удешевляется разработка
- Пользователь получает быстрый и понятный интерфейс
Полезные ссылки
- material.io — официальные гайды Material Design от Google
- material.io/tools/theme-editor — плагин Sketch для UI кита
- materialdesignicons.com — расширенная версия Material-иконок
- uplabs.com/android — за вдохновением и идеями для Android сюда
- materialdesignkit.com/ — сторонний UI-кит для Photoshop
- developer.apple.com/ios/human-interface-guidelines — гайды Apple HIG
- ivomynttinen.com/blog/ios-design-guidelines — сторонние гайды
- iosdesignkit.io — сторонний UI-кит для Sketch и Photoshop
- uplabs.com/ios — за вдохновением и идеями для iOS сюда
- icons8.com/ios-icons — лучшая коллекция iOS-иконок
Буду рад вашим комментариям 💬 и аплодисментам 👏.
Источник
Гайдлайны для мобильных приложений: зачем они нужны? 
Содержание
Дизайн мобильного приложения – одна из главных составляющих его успеха. Продвижение мобильного приложения методы эффективность этого продвижения напрямую зависят от визуальной привлекательности приложения, удобности его интерфейса. А это как раз таки является задачей дизайнеров. Сделать качественный дизайн, при этом сэкономив время, могут помочь гайдлайны. О том, что такое гайдлайны и как с помощью них можно создать дизайн приложения, мы и расскажем в этой статье.
Что такое гайдлайн?
Любое приложение сделано для быстрого, оперативного решения определенной задачи. Если же это мобильная игра – то управление ею должно быть максимально понятным. Геймер должен сразу же разобраться в том, как играть в эту игру, иначе велик риск, что она незамедлительно будет удалена.
Пользователи привыкли к быстрой работе приложений и интуитивно понятным интерфейсам. Поэтому даже секундные промедления могут стать причиной того, что юзеры начнут покидать ваш проект. Навигация по приложению должна быть предельно ясна. Это залог того, что продвижение игр в google play или App Store пройдет хорошо.
Ни для кого не будет новостью, что принцип, по которому построен дизайн и интерфейса большинства приложений – практически одинаков. Приложения похожи друг на друга. Ведь на самом деле, было бы очень неудобно, если бы у каждого приложения был полностью уникальный интерфейс, который бы кардинально отличался от других. Пользователю приходилось бы очень долго привыкать к новому дизайну, искать, как работает та или иная функция, думать, на какие кнопки нужно нажимать.
Взаимодействие с приложением стало бы гораздо медленнее. А это противоречит самой сути мобильных приложений – скорости и оперативности.
Именно для того, чтобы ускорить работу приложений и сделать их более удобными для юзеров и существуют гайдлайны.
Итак, что же такое гайдлайн? Это набор рекомендаций, принципов и правил создания дизайна, разработанный создателями операционной системы или платформы. Например, у android и apple свои отдельные гайдлайны. Именно поэтому интерфейс всех приложений, скажем, на android, имеет множество общих черт.
В гайдлайнах содержатся рекомендации по стилю интерфейса, навигации по приложению и взаимодействии всех элементов приложения. В них можно прочитать рекомендации о цветовой палитре, иконографии и типографии, а также о многом другом.
Зачем нужны гайдлайны? Чтобы не изобретать велосипед с нуля. Благодаря им разработка и продвижение приложений займет гораздо меньше времени, сил и денег. Все описанное в гайдлайне уже создано в виде готового элемента в коде. Разработчику вовсе не обязательно делать это во второй раз.
Свои гайдлайны имеют такие крупные и известные магазины приложений, как Google Play и App Store. Создаются гайдлайны и не такими крупными игроками, например, Windows Phone.
Гайдлайн от Google называется Google Material Design. Он был разработан в 2014 году одновременно с выходом новой операционной системы, android 5.0. Сегодня это не просто гайдлайн, а уже полноценная дизайн система, которую вполне возможно применять и на других платформах. С помощью “материального дизайна” от Google можно даже создавать веб-сайты.
Гайдлайн от Google – это очень проработанный и строгий набор рекомендаций относительного того, как нужно делать простые и понятные приложения. Благодаря этому продвижение андроид будет гораздо более эффективным.
Инструкция очень наглядна: она сопровождается изображениями и видеороликами. Начинается гайдлайн с общего вступления и рекомендаций, затем начинается подробное объяснение работы различных инструментов.
Это гайдлайн может быть полезен как для новичка, так и для опытного разработчика. В нем очень подробно описаны действия по созданию дизайна, каждый шаг снабжен графическим и текстовым описанием.
Главный принципы уроков дизайна от Google – это отзывчивость интерфейса, его глубина, а также движение.
Элементы навигации располагаются на определенной высоте по отношению к другим элементам и отзываются на нажатия юзера. Прообразом для всей системы дизайна служит бумага и чернила на ней. Интерфейс, созданный с помощью этого гайдлайна – это как бы отдельные листы бумаги, которые наслаиваются друга на друга, при этом, отбрасывают тень.
В этом гайдлайне есть буквально все. Цветовые палитры, значки для приложений, шрифты и многое другое. Кроме того, есть возможность все это скачать. Можно будет найти любые размеры любого элемента интерфейса, даже самого незначительного.
“Материальный дизайн” от Google приводит множество примеров удачного и неудачного оформления интерфейса, показывает как нужно использовать шрифты, какой кегль и отступ выбрать для них. Гайдлайн имеет очень удобную структуру, везде содержатся ссылки на нужные разделы. Работа с этим гайдлайном, используя полезные сервисы продвижения приложений – можно достичь хороших успехов.
Единственным минусом этого гайдлайна можно назвать отсутствие перевода на русский язык.
Apple
Гайдлайн от Apple вышел годом ранее, чем от Google. Он достаточно лаконичный, но тоже довольно проработанный и дает всю необходимую информацию. Каждый инструмент в инструкции описывается небольшим количеством текста. Иллюстративных материалов тоже не так много. Зато освоить этот гайдлайн вполне возможно за короткое время – для этого может хватить даже несколько часов.
Ключевой принцип гайдлайна от Apple – “воздушность” дизайна и его простота. Контент здесь ставится на первое место, а интерфейс уходит на второй план. Гайдлайн учит создавать максимально интерактивный интерфейс. В нем приветствуется анимация изменения состояния элементов. Инструкция содержит рекомендации по градиентным заливкам, размытию окон и т.п.
Если сравнивать с рекомендациями от Google, то этот гайдлайн не такой строгий и подробный. Он оставляет большую свободу для разработчика и дает меньше четких инструкций. К примеру, в гайдлайне Apple нет возможности увидеть размер кнопок. Здесь просто нет некоторых элементов интерфейса.
В данном гайдлайне тоже есть возможность скачать шрифты, а также UI-киты для наиболее распространенных инструментов. Правда, системные иконки скачать не получится – надо будет искать другие.
Гайдлайн от Apple в целом, менее подробен, нежели от Google. Его минусом также является отсутствие перевода на русский. В интернете можно найти различные интерпретации, где расширены и добавлены некоторые моменты. Надо отметить, что хорошо сделанный интерфейс выведет удержание пользователя на стабильный и высокий уровень.
Windows Phone
Не такие популярные платформы как предыдущие тоже имеют свои гайдлайны. Например, Windows Phone. В отличие от предыдущих гайдлайнов, этот переведен на русский, что является его преимуществом. Что касается содержания, то оно достаточно подробно, к тому же, хорошо структурировано. Однако в нем довольно много лишней информации, другими словами, “воды”. Все-таки гайдлайн – это скорее краткий справочник или инструкция, нежели учебник. Поэтому излишества в нем не очень уместны.
Выводы
Гайдлайны – это некий справочник для разработчика, в котором даются рекомендации по созданию качественного интерфейса. Гайдлайны создают под конкретную платформу – в частности, android и iOS.
Гайдлайн позволяют сделать процесс разработки быстрее и намного дешевле. Эти рекомендации помогают сделать понятный и быстрый интерфейс.
После того, как приложение доведено до ума, необходимо позаботиться о его рекламе и продвижении. Грамотная поисковая оптимизация приложений выведет проект на высокую позицию в выдаче.
Источник