Connect with us

Разработка

Интересные материалы для разработчика мобильных приложений #212 (7-13 мая)

Возвращаемся к работе с новым дайджестом, и в нем вы найдете обновленный материальный дизайн, победителей Google Play Award, размышления про архитектуру, порог входа в технологии и создание нового конструктора приложений.

AppTractor

Опубликовано

/

     
     

Material Design 2.0 и Android P

Google показал обновлённую дизайн-систему Material Design 2.0 на конференции I/O. Это серьёзное изменение визуального стиля и расширение инструментария, первые звоночки которого появились ещё в марте.

От дополненной реальности до Kotlin: как прошёл Mobius 2018 Piter

Конференция Mobius проходит в Питере не первый год, и у нас есть традиция — каждый раз писать на Хабр краткий отчет о произошедшем. Обычно такие отчеты пишут участники и спикеры, но на этот раз его напишу я — как ведущий интервью.

 iOS

 Android

 Разработка

 Аналитика, маркетинг и монетизация

 AI, Устройства, IoT

 Вакансии

Комментарии
Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
Advertisement
Click to comment

You must be logged in to post a comment Login

Leave a Reply

Разработка

Мобильная разработка в “Билайн”: архитектура, инструменты и цели

Софт поглощает мир, как обещал еще в 2011 году Марк Андриссен. “Билайн”, подобно многим другие технологическим компаниям, из оператора сотовой связи превращается в софтверную компанию, оперирующую большими данными и кодом. И после долгих лет сотрудничества с аутсорс разработчиками компания открывает собственный отдел полного цикла разработки мобильных приложений. Он не просто будет заниматься разработкой приложений, но и наращивать технологические компетенции и применять их к собственным проектам и предоставлять всем, кто будет базироваться на технологиях “Билайна”.

Beeline

Опубликовано

/

Автор:

Разработка изнутри

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

Что касается экономической эффективности, то собственная команда это не просто накопление опыта, но и улучшение качества продуктов, аналитики, сокращение экономических затрат в перспективе.

И так, в “Билайн” создаются собственные объединенные команды — управления разработкой приложений, iOS, Android, Backend, QA — и мы активно набираем работников во все департаменты.

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

Стек

Команда разработчиков будет осуществлять полный цикл работ, включая проектирование, написание кода,  развитие бэкенд-систем, тестирования, а во внутренней инфраструктуре компании можно будет опираться на уже полученные результаты с ИИ и работать с Big data.

Технологии мы выбирали сами, этот стек был принят в ходе дискуссии ведущих разработчиков:

  • Архитектура: Uber RIB
  • iOS: Swift 4 и Objective-C, RxSwift, Alamofire
  • Android: Kotlin и Java, Retrofit 2, RxJava2 + RxAndroid, JodaTime, Moxy, Dagger2
  • Python для бэкенда
  • Appium, TestFairy, Crashlytics, Postman, LoadRunner, Jira + Confluence, TestLink для аналитики, тестирования и управления проектами

RIB: кроссплатформенная архитектура, придуманная и используемая в компании Uber. Причин ее выбора несколько.

  1. Унифицированная архитектура для обеих платформ (iOS и Android), которая позволяет командам обоих направлений работать в единой среде, оперируя одними и теми же архитектурными компонентами.
  2. RIB позволяет вести работу независимыми командами над одним проектом, не создавая помех друг другу (для Uber, например, это сотни инженеров, работающих одновременно над одним проектом). На данный момент наше приложение состоит из трех независимых модулей, разделенными по типам абонентов, работа над которыми ведется совершенно разными командами.
  3. В отличие от привычных для мобильного разработчика архитектур, вся структура приложения представляет из себя дерево состояний, которое выстраивается исходя из бизнес-логики, а view-слой следует за ней.

Больше о RIB-архитектуре вы можете прочитать тут: https://github.com/uber/RIBs

Документация: https://github.com/uber/RIBs/wiki

Туториалы: https://github.com/uber/RIBs/wiki

Swift: мы не видим смысла начинать новые и долгоживущие проекты на Objective-C.  Swift активно развивается, еще более активно поддерживается и продвигается самой Apple, код получается нагляднее, лаконичнее и безопаснее. Также, в последнее время, становится легче найти iOS-разработчика, пишущего на Swift, чем на Objective-C и в ближайшее время этот разрыв будет увеличиваться. Хотя, мы считаем, что в данный момент времени знание Objective-C — необходимость для хорошего iOS-разработчика.

Разделение и взаимосвязь Kotlin и Java обоснованы такими же причинами.

Текущее приложение, в большей его части, написано на Objective-C и Java и нам важно понимать устройство проекта, обращаться к нему, чтобы увидеть “подводные камни” — мы стараемся как раз быть носителями экспертизы в каждом из языков для обеих платформ.

Реактивное программирование: для реализации некоторых составных частей архитектуры намного более удобно использовать именно такой подход. Это решение позволяет нам осуществлять разработку проекта с большей эффективностью и пластичностью.

Для чего это все

В первую очередь команда мобильной разработки занимается перезапуском мобильного приложения “Мой Билайн” — у него уже более 4 миллионов пользователей и настала пора изменений.

Основной сложностью в работе с текущим приложением стал тот факт, что у него практически нет поддерживающей backend-системы — вся логика работает на клиенте, что за годы развития сделало приложение абсолютно не поддерживаемым и не способным к фундаментальным обновлениям. Поэтому приложение ждет архитектурный и стековый апдейт, после чего команда перейдет к работе над новыми возможностями для юзеров.

Задача номер один для команды сейчас — выпустить обновленное приложение “Мой Билайн”. Дальше все будет ограничено только нашей фантазией — нас ждут внутренние проекты, приложения для абонентов, приложения для всех, кто использует среду, большие данные и большие возможности “Билайн”.

Присоединяйтесь!

 

Комментарии
Продолжить чтение

Новости

Digest MBLTdev: Новости для iOS разработчиков №182

В течение недели топовые iOS-разработчики Руслан Гуменный, Саша Черный и директор по продукту VK Иван Козлов собирают для вас интересные и полезные ссылки на статьи, необходимые для прочтения каждому начинающему и опытному разработчику. В каждом выпуске – новости, коды, инструменты, дизайн и прочее.

e-Legion

Опубликовано

/

Автор:

Дайджест заботливо напоминает вам о необходимости отпуска. Ходить в отпуск тоже нужно уметь: подготовить дела до, назначить «заместителей», предусмотреть канал аварийной связи, плавно вернуться к после… Мало кто так умеет. Обычно всё дёргано, скомкано. Зачем так? Не надо.

Ладно отпуск. Большинство ходит дважды в год. Как насчёт умения отдыхать в более широком смысле? Ещё сложнее. Неважно, отделяете ли вы работу от своей жизни. Важно, как вы себя чувствуете. Трудоголиков и любителей эффективности можно вводить в состояние сомнения вопросом «Уверен, что без хорошего отдыха ты работаешь лучше?», наблюдать за реакцией и попытками выкрутиться.

Да-да, внимательные старожилы этой рассылки скажут, что мы уже писали об отдыхе. А мы знаем. И пишем ещё. И ещё будем. И бархатный сезон скоро.

1

Билеты на MBLT DEV 2018

Ещё есть время купить билет по сниженной цене на MBLT DEV 2018. Регистрируйтесь сегодня до 00:00.

MBLTDEV.RU

Melbourne teen hacked into Apple’s secure computer network, court told

Подросток из Австралии получил доступ к одной из внутренней сетей Apple и скачал около 90 Гб данных. Хочется, конечно, подробностей: что именно за сеть, в чём была уязвимость, что конкретно скачал… А то как-то скучно. Нам вряд ли расскажут. Как будто это игра и спортивный интерес, никуда данные не ушли. Единственная яркая подробность — название папки, в которой товарищ хранил скачанные данные: hacky hack hack. Ммм… Молодец.

WWW.THEAGE.COM.AU

App Store

Apple выложила график с информацией о том, что на 31 мая 2018 года iOS 11 установлена на 81% устройств, а iOS 10 — на 14%. Данные с одного проекта в Яндексе показывают: 82% — iOS 11, 12% — iOS 10 и 2% — iOS 12.

DEVELOPER.APPLE.COM

4

An iOS alert view with a text field and a “smart” OK button

Ole написал UIAlertController с валидируемым полем ввода и кнопкой OK, которая становится enabled только при выполнении условия. Условие может быть задано предикатом, регуляркой, проверкой на пустоту или отсутствовать. Кода мало, весь код есть в gist.

OLEB.NET

Running UITests with Facebook login in iOS

Готовый тест для логина в FB. Можно создать в настройках приложения специального тестового пользователя! Если вы не знали, стоит посмотреть хотя бы это. Есть неоднозначные места типа использования координат для работы с некоторыми полями, но про них в статье тоже есть ремарка.

HACKERNOON.COM

Hashable / Hasher

Самостоятельная реализация hash, во-первых, не всегда нужна, во-вторых, имеет много нюансов. Очередной заход по излюбленной теме на собеседованиях найдёте в статье Мэта.

NSHIPSTER.COM

Why learn algorithms?

Реальные примеры задач, для решения которых нужно придумывать сложный алгоритм.

MACHINETHINK.NET

Triple_Fetch Analysis and iOS 10.3.2 Sandbox Escape

Разбор эксплоита для iOS 10.3.2, который даёт максимальные права вашему приложению.

JAQ.ALIBABA.COM

2

Knil

Штуковина для тестирования Universal Links. Парсит AASA-файл. А что, такое можно и в отладочный экран своего приложения добавить, чтобы облегчить QA-задачу.

GITHUB.COM

CocoaHeads + MBLT DEV 2018: iOS meetup

29 августа, 19:00, Петербург. Три доклада, дискуссия за поеданием пиццы и традиционная викторина от CocoaHeads с крутыми призами от конференции MBLT DEV.

ELEGION.TIMEPAD.RU

16f106c0eaa442b184873f18f426a916

Долгая история ноутбуков Apple: от Macintosh Portable до наших дней

Хотя бы полистать картиночки. Кстати, в Москве есть частный музей техники Apple. А ещё есть музей у Яндекса. В той же Москве. Техники Apple всего ничего, но iMac есть.

APPLEINSIDER.RU

Предыдущие выпуски Digest MBLTDEV и подписка доступны на официальном сайте. Всё бесплатно и никакого спама, честно!

Комментарии
Продолжить чтение

Разработка

Интересные материалы для разработчика мобильных приложений #226 (13-19 августа)

На этой неделе мы снова делали приложения для Ассистента Google, обсуждали Google Pay и плохих дизайнеров, разрабатывали смешанную реальность и PWA, погружались в геймдизайн и маркетплейс продуктов. Все это и многое другое в нашем новом дайджесте!

AppTractor

Опубликовано

/

Автор:

Actions on Google: пишем простое приложение для Google Ассистента на Dialogflow и Cloud Functions for Firebase

В этой статье мы рассмотрим создание экшена в Actions on Google, разберём процесс извлечения сущностей и интентов из фраз в Dialogflow, узнаем, как писать обработчики извлеченной информации и работать с сетью в Cloud Functions for Firebase.

Как писать программы на стыке мобильной разработки и алгоритмов? Конкурс и истории Яндекса

По случаю конкурса мы поговорили с коллегами об интересных задачах, относящихся сразу и к мобильным платформам, и к алгоритмам.

iOS

Android

Разработка

Аналитика, маркетинг и монетизация

AI, Устройства, IoT

 Вакансии

Комментарии
Продолжить чтение

Новости

Интересные материалы: 16.08

В дайджесте две статьи от Яндекса, музыка Super Nintendo и рассказ о бедах разработка сайтов для взрослых.

AppTractor

Опубликовано

/

Автор:

Весь день мы собираем лучшие материалы о разработке и маркетинге технологий, стартапов, мобильных приложений и игр для iOS и Android из самых разных источников:

Комментарии
Продолжить чтение

Реклама

Наша рассылка

Нажимая на кнопку "Подписаться" вы даете согласие на обработку персональных данных.

Вакансии

Популярное

X
X

Спасибо!

Теперь редакторы в курсе.