@Mostwanted

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

Добрый день.

Разрабатываю небольшой сервис, на данный момент есть фронтэнд на AngularJS и REST API на Node.js. Планируются нативные приложения под Android / iOS / Windows Phone. Есть ли возможность вынести всю работу с API в отдельную либу и использовать ее на всех трех платформах? Т.к. поддержка одной либы с API и другим небольшим функционалом была бы сильно проще, чем писать все с нуля под каждую платформу (кроме UI, конечно). В какую сторону копать, как решаются такие задачи?

P.S. слышал про Cordova / PhoneGap, но отталкивают возможные тормоза. Хотелось бы все-таки нативное решение.

Спасибо.
  • Вопрос задан
  • 674 просмотра
Пригласить эксперта
Ответы на вопрос 2
newross
@newross
Product owner
Xamarin - тормозов нет, полет нормальный.
Ответ написан
zo0m
@zo0m
full stack developer
Я пользуюсь Appcelerator Titanium
Управляющий код пишется на JS
Вью описывается тоже на JS, но создаются нативные компоненты(кнопки, лейблы, вьюхи), которые через бриджи управляются из JS (вот из-за бриджей и может возникнуть проблема в скорости)
Для ленты, в которой нужно создать много объектов, я сделал WebView внутри которого развернул Angular приложение, которое через апи шлет\слушает события наверх(типа Ti.API.fireEvent('webview:user.click'))

Честно говоря, работает не идеально, и нативное приложение, конечно шустрее, и когда-нибудь я возможно займусь переписыванием, но в принципе пока более чем радует

Раз у вас уже есть ангулар приложение, и если вы сможете адаптировать его под мобильник(поменять верстку), я бы первым делом попробовал все-таки завернуть его в PhoneGap, сделать MVP, и дальше смотреть нужно ли вам нейтив или нет. Может у вас там нечему особо тормозить.

Appcelerator не могу рекомендовать, он с некоторых пор платный.

Пример приложения у меня в профиле.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы