SlideShare uma empresa Scribd logo
1 de 18
О разработке приложений для разных
 мобильных платформ
  Виктор Кузьмин
  Руководитель разработки компании AlterGeo
О разработке приложений для разных
мобильных платформ
AlterGeo: сайт, мобильный сайт, приложения для
iPhone, Android, WP7, Bada
Введение: зачем приложение нужно нам



    Геопозиционирование

    Геотаргетинг

    Постоянное участие в сервисе

    Различная аудитория у платформ

    Новые инструменты
    взаимодействия
Введение: зачем приложение нужно пользователю



    Поиск мест

    Социальные фишки

    Отметки и отзывы

    Получение скидок и медалей
Введение: специфика проекта




    Поддержка веб-сервиса
    Аутсорс
    Взаимодействие с партнерами
    Частая выкатка
    Agile-цикл разработки
Что мы хотим в результате



    Красивая обертка для пользователя

    Единый стиль дизайна на всех платформах

    Функционал, недоступный с сервера

    Простота тестирования и стабильность работы
Архитектура проекта: серверная часть


    Amazon

    PHP + MySQL + nginx + Memcache + Sphinx

    Redis для работы с notifications

    GET запросы, единая точка входа

    JSON или XML на входе и выходе

    Горизонтальное масштабирование
Ключевые моменты: версионность




    Передача версии в запросе

    Версионность документации

    Стимул обновить приложение
Ключевые моменты: клиентский веб



    Получение ответа в виде html

    Обработка событий через приложение

    Широкое использование ссылок
     altergeo://

    Отправка запросов к API через js
Ключевые моменты: разделение процессов




    Выкатка API

    Выкатка версий в маркет

    Выкатка функционала
Ключевые моменты: кэширование


   Кэш файлов (JS, CSS)

   Кэш списков, выборок, объектов

   Кэш изображений

   Client DB

   Сброс кэширования – версия и eToken
Ключевые моменты: JS



    jQuery – тяжелый

    Работа с селекторами

    Помните про webKit! (iOS, Android, Bada)

    iScroll
Тестирование




    Общий пул test case

    Selenium

    Эмулятор
Проблемы



   Единообразие html и приложения

   Срыв сроков по аутсорсу

   Координация команд разработчиков

   Минимизация трафика
Утверждение


Выкатка раз в три недели на каждую платформу в
соответствии со спринтом.

    Android Market – легко и просто

    AppStore – неделя

    Windows Phone Marketplace – 4-6 дней
Сбор статистики и отзывов




    0.6% пользователей пишут отзыв

    Отзывы читать очень, очень полезно
Полезные ссылки



 http://altergeo.ru/download :)

 http://code.google.com/p/robotium/ – Robotium

 http://flurry.com – Flurry

 http://cubiq.org/iscroll – iScroll

 http://redis.io/ – Redis

 http://www.json.ru/files/mobile_internet_in_russia.pdf –
 статистика по мобильному интернету
Спасибо за внимание!


    http://altergeo.ru
     @AlterGeo_ru

Mais conteúdo relacionado

Mais procurados

Dot.net building scalable java script application using react and typescript,...
Dot.net building scalable java script application using react and typescript,...Dot.net building scalable java script application using react and typescript,...
Dot.net building scalable java script application using react and typescript,...Sigma Software
 
Анализ инструментов автоматизации мобильного тестирования
Анализ инструментов автоматизации мобильного тестированияАнализ инструментов автоматизации мобильного тестирования
Анализ инструментов автоматизации мобильного тестированияSQALab
 
Clean architecture on Android
Clean architecture on AndroidClean architecture on Android
Clean architecture on AndroidGDG Odessa
 
Как и зачем мы тестируем UI
Как и зачем мы тестируем UIКак и зачем мы тестируем UI
Как и зачем мы тестируем UIVyacheslav Lyalkin
 
AppClick || Презентация для разработчика
AppClick || Презентация для разработчикаAppClick || Презентация для разработчика
AppClick || Презентация для разработчикаDmitry C
 
Azure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребностиAzure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребностиАлександр Шамрай
 
SCRUMopen Developer Max Kolodezniy
SCRUMopen Developer Max KolodezniySCRUMopen Developer Max Kolodezniy
SCRUMopen Developer Max KolodezniyAlexey Krivitsky
 
Azure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контрольAzure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контрольАлександр Шамрай
 
Azure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестированиеAzure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестированиеАлександр Шамрай
 
AngularJS basics & theory
AngularJS basics & theoryAngularJS basics & theory
AngularJS basics & theoryDevOWL Meetup
 
Презентация прототипа GUI Machine: Система подтверждения подписи должностных лиц
Презентация прототипа GUI Machine: Система подтверждения подписи должностных лицПрезентация прототипа GUI Machine: Система подтверждения подписи должностных лиц
Презентация прототипа GUI Machine: Система подтверждения подписи должностных лицRustem Gayfutdinov
 
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public APIВиктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public APIMoscowJS
 
Версионирование требований. Бейзлайны
Версионирование требований. БейзлайныВерсионирование требований. Бейзлайны
Версионирование требований. БейзлайныEvgeny Savitsky
 
Создаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад ПлотникСоздаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад ПлотникSigma Software
 
Service oriented architecture, Oracle Service Bus
Service oriented architecture, Oracle Service BusService oriented architecture, Oracle Service Bus
Service oriented architecture, Oracle Service BusSergey Nemchinsky
 
Особенности тестирования веб приложение
Особенности тестирования веб приложениеОсобенности тестирования веб приложение
Особенности тестирования веб приложениеDressTester
 
Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...
Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...
Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...DataArt
 
ПартФорум DIRECTUM 2013 - разработка прикладных решений
ПартФорум DIRECTUM 2013 - разработка прикладных решенийПартФорум DIRECTUM 2013 - разработка прикладных решений
ПартФорум DIRECTUM 2013 - разработка прикладных решенийВиктор Золотов
 
Adrime Presentation for Agencies v.2
Adrime Presentation for Agencies v.2Adrime Presentation for Agencies v.2
Adrime Presentation for Agencies v.2weborama_rus
 
Application insights for visual studio online
Application insights for visual studio onlineApplication insights for visual studio online
Application insights for visual studio onlineOleg Chorny
 

Mais procurados (20)

Dot.net building scalable java script application using react and typescript,...
Dot.net building scalable java script application using react and typescript,...Dot.net building scalable java script application using react and typescript,...
Dot.net building scalable java script application using react and typescript,...
 
Анализ инструментов автоматизации мобильного тестирования
Анализ инструментов автоматизации мобильного тестированияАнализ инструментов автоматизации мобильного тестирования
Анализ инструментов автоматизации мобильного тестирования
 
Clean architecture on Android
Clean architecture on AndroidClean architecture on Android
Clean architecture on Android
 
Как и зачем мы тестируем UI
Как и зачем мы тестируем UIКак и зачем мы тестируем UI
Как и зачем мы тестируем UI
 
AppClick || Презентация для разработчика
AppClick || Презентация для разработчикаAppClick || Презентация для разработчика
AppClick || Презентация для разработчика
 
Azure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребностиAzure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребности
 
SCRUMopen Developer Max Kolodezniy
SCRUMopen Developer Max KolodezniySCRUMopen Developer Max Kolodezniy
SCRUMopen Developer Max Kolodezniy
 
Azure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контрольAzure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контроль
 
Azure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестированиеAzure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестирование
 
AngularJS basics & theory
AngularJS basics & theoryAngularJS basics & theory
AngularJS basics & theory
 
Презентация прототипа GUI Machine: Система подтверждения подписи должностных лиц
Презентация прототипа GUI Machine: Система подтверждения подписи должностных лицПрезентация прототипа GUI Machine: Система подтверждения подписи должностных лиц
Презентация прототипа GUI Machine: Система подтверждения подписи должностных лиц
 
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public APIВиктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public API
 
Версионирование требований. Бейзлайны
Версионирование требований. БейзлайныВерсионирование требований. Бейзлайны
Версионирование требований. Бейзлайны
 
Создаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад ПлотникСоздаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
 
Service oriented architecture, Oracle Service Bus
Service oriented architecture, Oracle Service BusService oriented architecture, Oracle Service Bus
Service oriented architecture, Oracle Service Bus
 
Особенности тестирования веб приложение
Особенности тестирования веб приложениеОсобенности тестирования веб приложение
Особенности тестирования веб приложение
 
Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...
Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...
Людмила Гулик, ( Project and Process Management Consultant, PhD at DA-14 Soft...
 
ПартФорум DIRECTUM 2013 - разработка прикладных решений
ПартФорум DIRECTUM 2013 - разработка прикладных решенийПартФорум DIRECTUM 2013 - разработка прикладных решений
ПартФорум DIRECTUM 2013 - разработка прикладных решений
 
Adrime Presentation for Agencies v.2
Adrime Presentation for Agencies v.2Adrime Presentation for Agencies v.2
Adrime Presentation for Agencies v.2
 
Application insights for visual studio online
Application insights for visual studio onlineApplication insights for visual studio online
Application insights for visual studio online
 

Destaque

1a kno how on direct democracy & referendum
1a kno how on direct democracy & referendum1a kno how on direct democracy & referendum
1a kno how on direct democracy & referendumpjvicary
 
Hidden History - Slavery in American Colonies, Black and White
Hidden History - Slavery in American Colonies, Black and WhiteHidden History - Slavery in American Colonies, Black and White
Hidden History - Slavery in American Colonies, Black and WhiteChuck Thompson
 
т00266 рама с модулем в сборе wd
т00266 рама с модулем в сборе wdт00266 рама с модулем в сборе wd
т00266 рама с модулем в сборе wdGalleryMedia
 
Prisoners of The American Revolution
Prisoners of The American RevolutionPrisoners of The American Revolution
Prisoners of The American RevolutionChuck Thompson
 

Destaque (6)

1a kno how on direct democracy & referendum
1a kno how on direct democracy & referendum1a kno how on direct democracy & referendum
1a kno how on direct democracy & referendum
 
Hidden History - Slavery in American Colonies, Black and White
Hidden History - Slavery in American Colonies, Black and WhiteHidden History - Slavery in American Colonies, Black and White
Hidden History - Slavery in American Colonies, Black and White
 
Mai
MaiMai
Mai
 
т00266 рама с модулем в сборе wd
т00266 рама с модулем в сборе wdт00266 рама с модулем в сборе wd
т00266 рама с модулем в сборе wd
 
Prisoners of The American Revolution
Prisoners of The American RevolutionPrisoners of The American Revolution
Prisoners of The American Revolution
 
Diapositivas (1)
Diapositivas (1)Diapositivas (1)
Diapositivas (1)
 

Semelhante a DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под несколько мобильных платформ" Виктор Кузьмин (AlterGeo)

API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...Ontico
 
Continuous integration testing of mobile SDK
Continuous integration testing of mobile SDKContinuous integration testing of mobile SDK
Continuous integration testing of mobile SDKTestableapple
 
Виды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спроститьВиды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спроститьGoIT
 
Архитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.NetАрхитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.NetGoSharp
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NETMedia Gorod
 
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...QA Club Minsk
 
Автоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюАвтоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюSQALab
 
Qualium Systems – Introduction
Qualium Systems – IntroductionQualium Systems – Introduction
Qualium Systems – IntroductionKostiantyn Levin
 
Эффективная архитектура мобильной автоматизации
Эффективная архитектура мобильной автоматизации Эффективная архитектура мобильной автоматизации
Эффективная архитектура мобильной автоматизации ISsoft
 
Автоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложенийАвтоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложенийТранслируем.бел
 
Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...
Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...
Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...Microsoft
 
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.Vadim Martynov
 
JET BI - Мобильные решения для Бизнеса
JET BI - Мобильные решения для БизнесаJET BI - Мобильные решения для Бизнеса
JET BI - Мобильные решения для БизнесаNadezhda Avramenko
 
Azure Mobile Backend
Azure Mobile BackendAzure Mobile Backend
Azure Mobile BackendVitaly Baum
 
AZadonsky Mobile Applications Development
AZadonsky Mobile Applications DevelopmentAZadonsky Mobile Applications Development
AZadonsky Mobile Applications DevelopmentVasily Demin
 
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...borovoystudio
 

Semelhante a DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под несколько мобильных платформ" Виктор Кузьмин (AlterGeo) (20)

Appery.io Ukraine_2016
Appery.io Ukraine_2016Appery.io Ukraine_2016
Appery.io Ukraine_2016
 
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
 
Continuous integration testing of mobile SDK
Continuous integration testing of mobile SDKContinuous integration testing of mobile SDK
Continuous integration testing of mobile SDK
 
Agile & .net
Agile & .netAgile & .net
Agile & .net
 
Виды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спроститьВиды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спростить
 
Artsofte for b2 b
Artsofte for b2 b Artsofte for b2 b
Artsofte for b2 b
 
Архитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.NetАрхитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.Net
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET
 
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
Эльдар Гусейнов "Эффективная архитектура мобильной автоматизации для проектов...
 
Автоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюАвтоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решению
 
Qualium Systems – Introduction
Qualium Systems – IntroductionQualium Systems – Introduction
Qualium Systems – Introduction
 
Эффективная архитектура мобильной автоматизации
Эффективная архитектура мобильной автоматизации Эффективная архитектура мобильной автоматизации
Эффективная архитектура мобильной автоматизации
 
Автоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложенийАвтоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложений
 
Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...
Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...
Microsoft и облако Azure для разработчиков на Android – сервисы для бэкенда, ...
 
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
 
JET BI - Мобильные решения для Бизнеса
JET BI - Мобильные решения для БизнесаJET BI - Мобильные решения для Бизнеса
JET BI - Мобильные решения для Бизнеса
 
Azure Mobile Backend
Azure Mobile BackendAzure Mobile Backend
Azure Mobile Backend
 
AZadonsky Mobile Applications Development
AZadonsky Mobile Applications DevelopmentAZadonsky Mobile Applications Development
AZadonsky Mobile Applications Development
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...
 

Mais de it-people

«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Coit-people
 
«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghubit-people
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrainsit-people
 
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologiesit-people
 
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндексit-people
 
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...it-people
 
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalrit-people
 
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...it-people
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАНit-people
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банкit-people
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Coit-people
 
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНСit-people
 
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...it-people
 
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologiesit-people
 
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn Systemit-people
 
«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologiesit-people
 
«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндексit-people
 
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...it-people
 
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognicianit-people
 
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...it-people
 

Mais de it-people (20)

«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
 
«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
 
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
 
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
 
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
 
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
 
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
 
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
 
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
 
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
 
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
 
«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies
 
«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс
 
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
 
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
 
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
 

DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под несколько мобильных платформ" Виктор Кузьмин (AlterGeo)

  • 1. О разработке приложений для разных мобильных платформ Виктор Кузьмин Руководитель разработки компании AlterGeo О разработке приложений для разных мобильных платформ
  • 2. AlterGeo: сайт, мобильный сайт, приложения для iPhone, Android, WP7, Bada
  • 3. Введение: зачем приложение нужно нам Геопозиционирование Геотаргетинг Постоянное участие в сервисе Различная аудитория у платформ Новые инструменты взаимодействия
  • 4. Введение: зачем приложение нужно пользователю Поиск мест Социальные фишки Отметки и отзывы Получение скидок и медалей
  • 5. Введение: специфика проекта Поддержка веб-сервиса Аутсорс Взаимодействие с партнерами Частая выкатка Agile-цикл разработки
  • 6. Что мы хотим в результате Красивая обертка для пользователя Единый стиль дизайна на всех платформах Функционал, недоступный с сервера Простота тестирования и стабильность работы
  • 7. Архитектура проекта: серверная часть Amazon PHP + MySQL + nginx + Memcache + Sphinx Redis для работы с notifications GET запросы, единая точка входа JSON или XML на входе и выходе Горизонтальное масштабирование
  • 8. Ключевые моменты: версионность Передача версии в запросе Версионность документации Стимул обновить приложение
  • 9. Ключевые моменты: клиентский веб Получение ответа в виде html Обработка событий через приложение Широкое использование ссылок altergeo:// Отправка запросов к API через js
  • 10. Ключевые моменты: разделение процессов Выкатка API Выкатка версий в маркет Выкатка функционала
  • 11. Ключевые моменты: кэширование Кэш файлов (JS, CSS) Кэш списков, выборок, объектов Кэш изображений Client DB Сброс кэширования – версия и eToken
  • 12. Ключевые моменты: JS jQuery – тяжелый Работа с селекторами Помните про webKit! (iOS, Android, Bada) iScroll
  • 13. Тестирование Общий пул test case Selenium Эмулятор
  • 14. Проблемы Единообразие html и приложения Срыв сроков по аутсорсу Координация команд разработчиков Минимизация трафика
  • 15. Утверждение Выкатка раз в три недели на каждую платформу в соответствии со спринтом. Android Market – легко и просто AppStore – неделя Windows Phone Marketplace – 4-6 дней
  • 16. Сбор статистики и отзывов 0.6% пользователей пишут отзыв Отзывы читать очень, очень полезно
  • 17. Полезные ссылки http://altergeo.ru/download :) http://code.google.com/p/robotium/ – Robotium http://flurry.com – Flurry http://cubiq.org/iscroll – iScroll http://redis.io/ – Redis http://www.json.ru/files/mobile_internet_in_russia.pdf – статистика по мобильному интернету
  • 18. Спасибо за внимание! http://altergeo.ru @AlterGeo_ru