Рубрика «разработка мобильных приложений»

 

Мобильная разработка в СберТехе: разговор на бегу / Хабрахабр

Читать полностью »

Оригинальное название статьи: Composable, type-safe UIView styling with Swift functions

Прежде, чем вы познакомитесь с материалом, мне хочется добавить кое-что про абстрагирование стилей от себя. Этот метод может облегчить вашу жизнь при работе на крупных проектах и особенно — в активно меняющемся продукте. Мы в полной силе ощутили это на таком проекте, как ИЛЬ ДЕ БОТЭ, где требования к визуальной составляющей приложения были значительными.

По мере развития в проект вносились существенные UI-изменения, и благодаря выделению стилей нам удалось отделаться малой кровью. В своем подходе мы использовали расширения для стандартных классов (UITextField, UILabel, UITextView, UIFont, UIColor). Нам кажется, что автору статьи удалось поднять данный подход на пару ступеней выше — настолько, что мы, потирая ладошки, бросились использовать его в нашем новом проекте. Надеемся, наш перевод поможет вам оптимизировать время на разработку и сделать проекты лучше.

CSS для Swift: использование стилей для любых подклассов UIView - 1
Читать полностью »

Определяем лучшее место для жизни в США при помощи собственного приложения на IBM Bluemix - 1

Платформа IBM Bluemix позволяет работать с различными службами компании IBM для создания когнитивных приложений. В качестве примера можно привести сервис IBM Watson Tradeoff Analytics Service. При помощи математических методов фильтрации он позволяет определить оптимальные варианты по большому количеству критериев. В результате специалисты (если речь идет о профессиональном приложении) могут принимать сложные решения из лучших предложенных вариантов.

Сегодня мы предлагаем познакомиться с ходом создания одного такого приложения, при помощи которого можно выбрать лучшее место для жизни в США. Понятно, что одной этой страной возможности приложения не ограничиваются — при желании можно создать любую схожую программу и выбрать оптимальное место для жизни в другой стране — России, Великобритании, Эквадоре или ином регионе. Давайте посмотрим, как все это работает.
Читать полностью »

«Порог вхождения сводится к знанию основ компьютерной графики»: разработчик Александр Коршак о мобильном VR - 1

Ещё в мае 2016-го Google громко анонсировал VR-платформу Daydream, но только теперь она становится действительно актуальна: маркировку «Daydream-ready» вслед за флагманом Pixel стали получать и другие смартфоны. Означает ли это, что для Android-разработчиков настало время разбираться с VR? Есть ли смысл посвящать этому своё время, если не имеешь отношения к игровой индустрии? С чем на практике сталкиваешься в мобильной VR-разработке?

«Порог вхождения сводится к знанию основ компьютерной графики»: разработчик Александр Коршак о мобильном VR - 2На такие вопросы лучше всего может ответить человек с соответствующим опытом, и этот опыт есть у Александра Коршака: сначала он делал VR-приложение из личного интереса, затем в компании MERA разрабатывал мобильный видеоредактор с поддержкой 360-градусного видео, а теперь участвует в стартапе, связанном со сферическим видео, интернет- и TV-трансляциями. В результате он успел поработать и с тем же Daydream, и с предшествовавшим ему Cardboard, и с Gear VR — а мы расспросили его обо всём и сразу.
Читать полностью »

Разработка транзакционных микросервисов с помощью Агрегатов, Event Sourcing и CQRS (Часть 2) - 1

Это завершение переводной статьи о разработке транзакционных приложений с использованием микросервисной архитектуры. Начало.

В первой части статьи мы говорили, что основным препятствием при использовании микросервисной архитектуры является то, что модели предметной области (domain model), транзакции и запросы удивительно устойчивы к разделению по функциональному признаку. Было показано, что решение заключается в реализации бизнес-логики каждого сервиса в виде набора DDD-агрегатов. Каждая транзакция обновляет или создает один единственный агрегат. События используются для поддержания целостности данных между агрегатами (и сервисами).

Во второй части статьи мы увидим, что ключевой задачей при использовании событий является атомарное изменение состояния агрегата и одновременная публикация события. Посмотрим, как решить эту проблему с помощью Event Sourcing — используя событийно-ориентированный подход к проектированию бизнес-логики и системы сохранения состояния. После этого опишем, как микросервисная архитектура затрудняет реализацию запросов к базе данных, и как подход, называемый Command Query Responsibility Segregation (CQRS), помогает реализовывать масштабируемые и производительные запросы.
Читать полностью »

Последние несколько месяцев я работаю над новым способом создания кросс-платформенных приложений для Android и iOS под названием Jasonette. Он позволяет написать приложение от начала до конца, используя только разметку JSON.

Как разработать кросс-платформенное приложение с помощью одной лишь разметки JSON - 1

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

Больше нет необходимости в том, чтобы приложение было захардкорено на девайсе, Вы можете обновлять его по желанию посредством обновления разметки JSON на серверной стороне. При каждом запуске ваше приложение будет заново загружаться с сервера.
Читать полностью »

В 2012 году пользователь с ником rovo89 на комьюнити XDA опубликовал исходные коды и готовый к использованию фреймворк, упрощающий кастомизацию прошивок, с подробной инструкцией и примерами, предложив альтернативу традицоинному, на тот момент, способу (деоксидирование → дизассемблирование → декомпиляция → рекомпиляция → тестирование → загрузка патчей в телефон): Часть 1, Часть 2, Часть 3, Часть 4

Он предложил использовать отдельные модули, которые можно изменять фактически налету, не вмешиваясь в исходный код прошивки или отдельных ее компонентов. Но авторитетные разработчики хором ответили: "Неа… никому это не нужно"

Rovo не забросил свое детище, а продолжил развитие. Когда в 2013-ом году вышла версия KitKat, все то же сообщество именитых девелоперов ответило: "Неа, это слишком опасно… хотя..."

Тем временем Google принял решение выпускать новую версию операционной системы ежегодно. Разумеется, стало накладно кастомизировать прошивки: не успеваешь сделать одну, как появляется новая версия ОС. Так в 2014-ом выходит версия Lollipop и разработчики наконец обращают внимание на фреймфорк с мыслями: "Может все же стоит посмотреть что это такое? Выглядит многообещающим".

В 2015-ом году вышла очередная версия (Marshmallow) и большая часть сообщества, в итоге, признала разработку весьма стоящей, на порядок сокращающей время разработки кастомизаций стоковых прошивок в виде установки отдельных модулей, расширяющих функционал. "Ничего себе, это же совсем безопасно и есть библиотека готовых полезных модулей!" — воскликнули они.

Сейчас конец февраля 2017-го. Xposed под Nougat все еще не доступен, а толпы страждущих разработчиков и пользователей то и дело открывают темы под тип "Xposed не работает! Он мне нужен! Rovo, пожалуйста!"

Сегодня я расскажу об Xposed Framework.
Читать полностью »

Большой и интересный дайджест про работу Avito, разработку и публикацию AR/VR-приложений, интерфейсы, библиотеки, продуктовую аналитику и вовлеченность.

Дайджест интересных материалов для мобильного разработчика #191 (13-19 февраля) - 1Читать полностью »

image

Сегодня зарождающиеся отрасли воздушных и наземных беспилотных средств требуют надежного высокоточного позиционирования. Приложения на мобильных устройствах также требуют более высокой точности позиционирования. Эти средства должны быть малогабаритными, малопотребляющими и дешевыми. До сегодняшнего момента существовал разрыв между этими новыми требованиями и характеристиками продуктов и ценами. Гиганты навигационной отрасли не хотели или не могли предложить продукты с требуемыми свойствами.

Сейчас ситуация начинает стремительно меняться.

Читать полностью »

Никогда не было желания заниматься программированием профессионально, но сам процесс — пишешь буквы, а «оно» оживает, мне доставляет огромное удовольствие. Тем кто желает программировать, но не знает с чего начать — вот вам мой пример.
Читать полностью »