Глава 5: Приложения, платформы
В этой главе речь пойдет не только о платформах, на которых твои приложения будут работать. Мы рассмотрим сегментацию рынка за компанию. Поехали.
Давайте проясним следующую вещь: программа = приложение. Раньше было модно использовать слово программа (Program), а теперь в моде слово приложение (Application, app). Вот и вся разница.
Вне всяких сомнений большинство читателей мне сами расскажут о том, какие есть платформы, но все же.
— — —
Мобильные ОС:
2. Apple iOS.
3. Apple WatchOS (а вы как думали, в часах своя операционка).
4. Google Android.
5. Google Android Wear (привет, аналог WatchOS от Apple).
6. Google Chrome OS (сюрприз). Вроде бы это десктопная ОС, но все же по функционалу она ближе к планшетам, а планшеты — мобильные устройства 👌🏻
7. Вымирающие представители флоры и фауны: Windows Phone, Glofish и их друзья вроде Tizen.
Вне конкурса хочется отметить Windows CE, которая по сей день живет в мобильных терминалах на складах, в магазинах. Надеюсь, когда-нибудь она пополнит список в пункте #7, но пока нет.
— — —
Компьютерные ОС
Название на троечку, конечно =)) Я имею ввиду ПК всех мастей и размеров.
1. Microsoft Windows! Ну куда же без тебя, Солнышко!
2. Apple OS X. И без тебя нет нам, дизайнерам, радости и счастья!
3. Linux. Для суровых админов и тружеников IT-индустрии.
— — —
Нативные приложения
Если с операционными системами все более-менее понятно, то вот с типами приложений не все так гладко. Видите ли, бывают так называемые «нативные» аппы — они всегда сделаны под конкретную ОС и в теории должны хорошо и плавно работать на iOS, Android, Windows и т.д. Нативные приложения разрабатываются долго, много тестируется и постоянно обновляются. Это дорогое удовольствие, но для многих компаний нативные аппы являются единственным продуктом для клиента.
Нативные аппы пишутся на языках типа C# (Windows), Object C и Swift (Apple), Java, Kotlin или даже Skala (Android).
Помимо основных языков программирования существуют всякие другие способы создания а-ля «нативных» аппов — React, Phone gap, Xamarin. На выходе качество страдает ощутимо, зато позволяет писать сразу под несколько платформ. Так сказать, кросс-платформенные решения. Иногда на старте проекта использование такого подхода оказывается более чем экономически обосновано.
Информация эта для дизайнера бесполезна, но для общего развития в будущем обязательно пригодится.
— — —
Веб приложения
Не дайте глазам обмануть вас. Не все сайты являются сайтами =))
- О чём ты, друг?
Сайт – набор страниц, который служит таким целям, как знакомство человека с сервисом/продуктом и хранению базы знаний (KB, она же Knowledge base). Ещё сайт отправляет вас на страницу оплаты на стороне банка. Лендинг-пейдж (Landing page) также относят к сайтам.
Концептуальное отличие сайта от веб-приложения заключается в том, что первый – инструмент продажи товаров и услуг, тогда как веб-приложение и есть услуга, продукт, сервис. К тому же сайт по принципам работы и контенту ближе к принту и диджитал-дизайну, тогда как веб-приложение явно ближе к дизайну интерфейсов.
Всё, что по набору возможностей превышает типичный сайт, является веб-приложением.
Если вам казалось, что интернет-магазины, Dropbox, Google Drive, Ebay, Яндекс.Карты / Музыка / Диск / Маркет, Facebook, ВКонтакте, Online tours, Aviasales, Госуслуги и миллионы других сервисов являются сайтами (а так думает 99.99% людей) — вы жестоко ошибались.
Cайт — это набор html-шаблонов, завернутых в css-стили, и всё это неаккуратно сложено на трёхкопеечный виртуальный сервер. Веб-приложения — серьёзные динамические системы, поверх которых лежит не менее серьёзный и продуманный интерфейс!
От нативных веб-приложения отличаются тем, что почти не умеют хранить данные. А когда пропадает интернет, то пиши пропало. Есть исключения, умеющие хранить данные локально или при помощи плагинов, но они скорее подтверждают общее правило.
Второй отличительной чертой является то, что веб-приложения работают в браузере. Читай: работают почти на любом устройстве за исключением звонилок за полтора рубля. Всё бы хорошо, но в процессе создания веб-приложения разработчику приходится учитывать особенности старых браузеров, поддерживая совместимость с такими динозаврами как Internet Explorer 8. А когда приложение делается для использования в корпорации, то привет Internet Explorer 6! В общем, на синем небе веб-приложений дух древних Internet Explorer является суровым грозовым фронтом, но как-то справляются. Но есть и одна вещь, объединяющая нативные и мобильные приложения — сервера, на которых хранятся данные. Мобильное приложение берёт данные не из воздуха, а из сервера, и туда же записывает изменённые данные. Веб-приложение, в принципе, без бекэнда (инфраструктура из нескольких (или нескольких сотен) серверов, хранящие, выдающие, считающие и обновляющие данные) жить не может!
А раз уж веб-приложения так похожи на нативных собратьев, то и отношение к интерфейсу должно быть ничуть не менее серьёзное.
— — —
Приложения для носимых устройств
Справедливо ли утверждать, что это те же нативные приложения? Справедливо. Но есть нюанс...
Хотя приложения для наших любимых фитнес-трекеров, очень умных часов и прочих гаджетов пишут на том же Swift и Java, отношение к проектированию и дизайну интерфейса совсем другое. 90% времени данные в носимые устройства поступают из смартфона и датчиков, а пользователь лишь манипулирует ими в минимальной степени и очень редко что-то вводит сам при помощи пальца, кнопок, крутилок и голоса. Siri вас не спасёт в ближайшие пять лет, увы...
Фактически, дизайн интерфейса сводится к удобному расположению данных. Ситуация осложняется ещё и тем, что пользователь готов инвестировать 3–10 секунд в то, чтобы считать нужную информацию с миниатюрного экрана. Оставьте иллюзию, что кто-нибудь будет читать на часах книгу или сидеть в Instagram. Не будет.
