Ещё совсем недавно веб-приложениям (а в простонародье – сайтам) пророчили скорую смерть, а на их место выдвигали нативные приложения, которые буквально наводнили AppStore, Google Play и др. А наиболее предприимчивые «разработчики» в момент отсутствия собственных идей упаковывали классическую литературу в самостоятельные программы-читалки.
Однако, зря я пишу о тренде в прошедшем времени – пророчество успеха приложений сегодня подхвачено массами, которые не забывают сверкнуть своими глубокими знаниями темы в беседах со знакомыми «айтишниками».
Мне, как жителю сферы веб-разработки со стажем, честно говоря, обидно повсеместное вознесение приложений и смешки в сторону веб-ремесла. Поэтому сегодня я попробую выяснить, какое будущее действительно ждёт мир мобильного ПО и почему оно будет именно таким.
Предварительные договорённости
Этой статьей я постараюсь помочь:
- Наблюдателю – взглянуть на ситуацию в целом и побудить составить свой прогноз относительно развития технологий и просто приятно провести время, читая контент.
- Предпринимателю – убедить не тратить деньги на бесполезные новые мобильные приложения, а уделить больше внимания мобильной версии (которая существенно дешевле и быстрее по срокам разработки).
- Начинающему инвестору – дать почву для размышлений, относительно финансовых вложений.
- Студентам – определиться с выбором направления для своего стартапа.
Статья носит исключительно обзорный характер и предназначена для широкого круга читателей, поэтому я опустил некоторые техническими термины.
Прежде, чем мы отправимся в путешествие по истории конфронтации веб-приложений и нативных, я бы хотел внести маленькую сознательную неточность по формулировкам: в дальнейшем тексте я буду заменять слово «веб-приложение» на «сайт». Это сделано целенаправленно и исключительно в литературных целях. Надеюсь, эксперты простят меня, а обычные люди не заметят разницы, хотя она есть.
Вот что думает Google о будущем приложений.
Немного истории
Для того, чтобы начать разбираться в каком-либо вопросе, необходимо познакомиться с его историей. Хотя бы в цифрах и фактах.
Смартфоны появились в результате слияния развития двух независимых направлений: мобильных телефонов и карманных компьютеров (КПК). Первые умели совершать звонки, но обладали слабой программной составляющей, обычно включающей в себя адресную книгу, календарь, секундомер и пару игр – например, «змейку». Вторые же имели полноценную операционную систему (сначала собственные, а потом уже такие известные, как Windows Mobile, Palm OS и др.), но не могли совершать звонки.
Первые попытки разработки смартфонов были предприняты ещё в 1992 году, которые назывались в то время коммуникаторами. Сам же термин «смартфон» появился только в 2000м году с подачи компании Ericsson. Сегодня эти термины в массах обозначают одно и то же.
Тем не менее, начиная с 1996 года (появление Nokia 9000 Communicator – первое успешное устройство, объединяющее КПК и мобильный телефон), разработчики получили теоретическую возможность разрабатывать приложения для мобильных устройств. Теоретическую, так как платформа, предоставленная Nokia, была закрыта и открытая версия OC появилась лишь в 2001 году. В тот же период начинает выходить множество устройств разных производителей и начинается эра разработки приложений.
Я встретил это время с КПК HP iPaq на базе Windows Mobile, на котором был Word, Excel, Internet Explorer и прочие радости жизни.
После выхода первого iPhone и запуска AppStore на рынке мобильной разработки произошёл просто настоящий бум. Через короткое время появился Android. Это 2007-2008 годы. С тех пор и зародился миф о гибели сайтов и здравии приложений.
А что в это время происходило с веб? Как и любая конкурентная среда – он развивался. Особенно по части взаимодействия пользователей с сайтами, потребления контента и пр. Именно в это время (2004 – 2008 годы) стали появляться социальные сети, YouTube и пр. Часто об этом времени можно услышать спорную формулировку «Веб 2.0».
И всё же технологии опередили реальность: интернет оставался медленным, а его комфортное использование при передвижении на улице или в транспорте – было практически невозможным. С целью снижения потребляемого трафика каждый более менее популярный веб-сервис стал выпускать собственные приложения.
И здесь интересна история с Facebook, которые попробовали опередить время, за что и поплатились.
Быль про Facebook
Удивительно, но своё первое приложение для смартфонов Facebook выпустили лишь в 2012 году, уже являясь лидирующей социальной сетью и приближаясь к миллиардному пользователю.
До этой даты команда Цукерберга активно работала над своей мобильной версией сайта, считая нативные приложения временной мерой. Но вышло иначе: мобильная версия тормозила, а зачастую и вовсе некорректно отображалась, поэтому Facebook признали опрометчивость решения и быстро создали нативные приложения под каждую из основных операционных систем.
Большая ошибка? Так назвал её сам Марк. Мне кажется, что крупнейшая соц. сеть на волне успеха немного увлеклась последними успехами HTML5 и опередила время. Если бы технологии того времени соответствовали сегодняшним, то провала могло бы и не быть. Но об этом далее.
Преимущества и недостатки нативных приложений
Итак, подкрепившись историей, можно сделать выводы о том, почему нативные приложения успешны и какими преимуществами обладают:
Во-первых, это высокая скорость работы (при прямых руках разработчиков) и использование всех преимуществ операционных систем, что особенно важно для игровой индустрии.
Во-вторых, это снижение потребления интернет-трафика, что положительно сказывается как на скорости работы, так и на доступности приложений без Сети, что, как следствие, повышает частоту их использования и полезность конечному пользователю.
В-третьих, корректное отображение на большом количестве устройств: кнопки и блоки отображаются одинаково на всех устройствах Android, iPhone и пр.
Честно говоря, на этом преимущества и заканчиваются. А вот что я отношу к недостаткам:
Дороговизна разработки. Отдельное приложение для каждой операционной системы. Возможность не учесть такие экзотические ОС, как Windows Phone, старый Symbian (им ещё пользуются люди), Blackberry и пр. Конечно, сегодня уже существуют замечательные решения портирования единого кода сразу на несколько операционных систем, однако это делает приложения менее гибкими и стоит всё равно дороже одной единственной мобильной версии сайта.
Потенциальный риск ошибок старых версий. Вы не можете быть уверены, что новая версия приложения автоматически обновляется каждым пользователем. И уж тем более не можете быть уверены, что это будет сделано в ближайшие сутки.
Излишество. Вы знаете, что приложение Skype для Android занимает 150мб без учёта кэша и загруженных данных? Facebook – 62мб, Яндекс.Навигатор – 105. Я не представляю, какой код должен быть написан, чтобы Skype занимал так много места. Думаете, я скуп? Но в совокупности получаются весьма чувствительные показатели, когда только программы занимают около 3гб данных без серьёзных игр (каждая из которых прибавляет ещё как минимум 500мб данных).
Если учесть, что ещё в 2013 году количество подключённых к сети мобильных устройств должно было превысить общее население Планеты (link), то страшно представить тот совокупный объём информации, который бездарно растрачен на копии одного и того же программного кода. Сколько места бы освободилось, если хотя бы часть приложений всё-таки жила исключительно в веб. Это кладезь для всех любителей оптимизации хранения информации.
Как дела у веб-приложений?
Со времён неудачной мобильной версии Facebook прошло всего 4 года, но ситуация вокруг значительно изменилась:
- Мобильный трафик вырос уже в 7,6 раз и вырастет к 2017 году в 13 раз (link). Тренд сохранится.
- Зона покрытия мобильных сетей также увеличилась. Активно стал внедряться 4G (link).
- Качество самих браузеров и поддержка ими HTML5 также улучшились. Произошла революция в отношении Internet Explorer и замена его на Edge.
- Использование локального хранилища с каждым годом становится всё более обыденным делом.
- Появилась поддержка push-уведомлений на уровне браузеров.
Вы могли уже заметить, что зайти в любимую социальную сеть мимоходом во время интернет-сёрфинга, не выходя из браузера стало значительно проще и быстрее, чем заходить в меню и искать соответствующую иконку. Хорошее современное веб-приложение имеет абсолютно одинаковый функционал с нативным. А браузеры уже не так тормозят как раньше.
Думаю, вы уже поняли, к чему я клоню.
Взгляд в будущее
Ребята из Facebook, в конечном счёте, оказались правы, высказывая мнение, что приложения – переходящая тенденция. Единственное, в чём они ошиблись, так это в сроках.
Регулярное расширение возможностей браузеров, повышение их производительности, повсеместное распространение качественного интернета, делают использование мобильных версий сайтов наиболее предпочтительным вариантом как для пользователя, так и для бизнеса. А приложения – пережитком прошлого, как, например, сберегательные книжки:
Удивительно, но ориентация в сторону веб-приложений приносит пользу, так как теперь код не будет дублироваться на каждое приложение, а, значит, нет ничего лишнего. Веб-отрасль очень гибкая, поэтому я уверен, что она будет жить ещё долго.
И конечно:
Не все приложения вымрут – функционал тех же мессенджеров браузеры пока не в состоянии повторить. Да и сложные игры тоже останутся. Но для разработчиков мобильных приложений тенденция неутешительная, отчего мне, как стороннику веб, весьма приятно на душе :)
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: