Super Puper Library SDK
Яблоко от
Андроида
недалеко
падает
● Кусок JS, который надо портировать под Android & iOS
● Вызовы...
Моя первая мысль
● Я продамся
яблофилам?
● Я продамся java-
скриптизерам?
● НЕНАВИСТЬ!!!!!!
Мой первый коммерческий
проект на Android
Что такое делать библиотеку на
аутсорсе
● Другие
разработчики
обязательно
напишут злой
отзыв
● Поддержка
ляжет на плечи
за...
А кому это надо?
И как с ним говорить?
● Два индуса и один разработчик
● Индусы ездят в Индию каждую неделю и отвечают
изредка на 1 вопрос ...
Фаза исследования
● Заказчик хочет от нас решения всех проблем
● Аккуратные аналитические документы с плюсами и
минусами, ...
Они следят за нами
● Одной из задач был вопрос
авторизации клиента, эдакие
мобильные куки
● Легальность и лицензирование
п...
Библиотека для Android
● Library Project или real jar
● Проблемы с ресурсами
● Открытость кода или
закрытость
● Необходимо...
Библиотека для iOS
● Открытый код или static library
● Сложный delpoy для разных
версий iOS
● Директивы компиляции
● Разны...
Docs
● Берёшь хорошую документацию и выгрызаешь её
изнутри
● Документация для пользователей и будущих
разработчиков бибили...
Тестирование
● Ошибки в REST заказчика
● 0 строк документации
● Неясные цели куска кода для портирования
● Задержка в 2 дн...
Итоги
● Все довольны
● Заказчик написал, что я задал
слишком много вопросов и им
пришлось поработать, исправляя
баги в сво...
How to port JavaScript library to Android and iOS
Upcoming SlideShare
Loading in...5
×

How to port JavaScript library to Android and iOS

311

Published on

2013-07-06 03 Алексей Зиновьев. История одного портирования (mobile, Javascript, Android, iOS)

Видео: http://youtu.be/LlDhtXWHbtw

Published in: Art & Photos
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
311
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

How to port JavaScript library to Android and iOS

  1. 1. История одного портирования Докладчик: Алексей Зиновьев
  2. 2. Super Puper Library SDK Яблоко от Андроида недалеко падает ● Кусок JS, который надо портировать под Android & iOS ● Вызовы сервера и много глобальных переменных, ведущих в никуда ● Библиотека для других разработчиков, теперь банановый
  3. 3. Моя первая мысль ● Я продамся яблофилам? ● Я продамся java- скриптизерам? ● НЕНАВИСТЬ!!!!!!
  4. 4. Мой первый коммерческий проект на Android
  5. 5. Что такое делать библиотеку на аутсорсе ● Другие разработчики обязательно напишут злой отзыв ● Поддержка ляжет на плечи заказчика ● Превосходная документация ● Тестовое приложение, использующее вашу библиотеку
  6. 6. А кому это надо?
  7. 7. И как с ним говорить? ● Два индуса и один разработчик ● Индусы ездят в Индию каждую неделю и отвечают изредка на 1 вопрос из 10. ● Простые WASP разработчики не многословны и суровы ● Отличная возможность прокачать hinglish ● Доминирование письменных коммуникаций ● Hangout животворящий в лицах
  8. 8. Фаза исследования ● Заказчик хочет от нас решения всех проблем ● Аккуратные аналитические документы с плюсами и минусами, выверенные native speakerом ● Фаза аналитики повлияла на конечные оценки и архитектуру библиотеки ● Максимум вопросов на старте + прототипирование экономит время и снижает риски
  9. 9. Они следят за нами ● Одной из задач был вопрос авторизации клиента, эдакие мобильные куки ● Легальность и лицензирование подобной деятельности ● OpenUDID, IDFA, MAC - адрес, собственный ID ● Единый среди всех приложений, использующих данную библиотеку ● Политика Apple
  10. 10. Библиотека для Android ● Library Project или real jar ● Проблемы с ресурсами ● Открытость кода или закрытость ● Необходимо тестирующее приложение (а то и парочка) ● Debug версия библиотеки с Toasts ● Тестировщик тестирует не lib, а тестирующие приложения ● Последние два пункта лишние?
  11. 11. Библиотека для iOS ● Открытый код или static library ● Сложный delpoy для разных версий iOS ● Директивы компиляции ● Разные Targets для сборки ● 1 код, n сборок ● Разные фреймворки для реализации одной фичи в разных версиях iOS
  12. 12. Docs ● Берёшь хорошую документацию и выгрызаешь её изнутри ● Документация для пользователей и будущих разработчиков бибилиотеки ● JavaDocs + их аналог для private методов ● DevCases в коде и диаграммах ● Проверка документации техническим native speakerом ● Даешь коллеге, который, прочтя ее, попробует использовать библиотеку
  13. 13. Тестирование ● Ошибки в REST заказчика ● 0 строк документации ● Неясные цели куска кода для портирования ● Задержка в 2 дня для верификации правильности запроса ● Отрицание заказчиком текущих проблем
  14. 14. Итоги ● Все довольны ● Заказчик написал, что я задал слишком много вопросов и им пришлось поработать, исправляя баги в своем REST ● Все мобильные архитектуры похожи ● iOS расширил мои "мобильные" возможности ● На JS я написал небольшую игру про бояр на LudumDare

×