— Космическая скорость разработки приложения (iOs-приложение за неделю);
— Сравнение типичного экрана со списком данных на Objective-C и React Native;
— Поддержка приложения, Debugging;
— Ограничения React Native, которые следует учитывать;
— Бонус: при написании приложения для iOs — 80% Android приложения в подарок :)
3. Тезисы
• Знакомство с React Native
• Сравним код типичного экрана с TableView
Objective-C vs React Native
• Реализуем часть приложения на примере LOOKBUCK
• Поддержка приложения, дебаггинг, tools, тестирование
• Возможности и ограничения
• Бонус. При написании приложения для iOS —
80% Android приложения в подарок
3
4. • Полностью нативные (objective-c, swift, java)
• Условно нативные / кроссплатформенные
(React Native, Xamarin, RubyMotion, etc.)
• Web View (PhoneGap, Ionic, etc.)
💩
Мобильная разработка
5
6. 7
Что потребуется для начала
Необходимы:
1. Node
2. React-native-cli
3. Xcode 7.0 или выше (для iOS)
4. Android Studio 2.0 или выше (для Android)
На выбор:
• Ваш любимый Text Editor
• Nuclide IDE
• Deco IDE
• Chrome (DevTools)
51. Ограничения ⚠️
3. Есть целые компоненты,
которые работают только в одной из платформ
StatusBarIOS, ActivityIndicatorIOS, ToolbarAndroid, …
2. У компонентов есть свойства,
которые работают только в одной из платформ.
<Image onError> только для iOS
<Image overlayColor> только для Android
4. Может не быть готового UI-компонента, тогда придется
самому писать Bridge (Javascript Objective-C | Swift | Java)
Что как следствие сильно затормозит скорость разработки
52
1. Минимальные требования к версиям OS:
Android 4.1 (API 16) +
iOS 7+
…
56. — Если код запущен на платформе iOS, то
импортируется
IndexPage.ios.js
Полезные штуки
Умный Import
— Если на платформе Android, то импортируется
IndexPage.android.js
57
— Если файла с дополнительными расширениями нет, то
IndexPage.js
59. • Мы получили готовое нативное iOS приложение за
одну неделю (за 2 недели оно было доступно в App Store)
• Сэкономили сотни тысяч рублей на разработку
таких же приложений на Objective-C и JAVA (и
возможно миллионы на поддержку и развитие)
60
В итоге
Используя React Native