;
Иван Алякскин
Задорный ReactNative вносит летние краски в “кровавый enterprise”
29.11.2017 1974
Другие статьи автора
Возможные способы реализации мобильных приложений
Джентльменский набор мобильного проекта
Исключаем фактор «так исторически сложилось» на Android/Mobile-проекте
Android Security
Android Legacy
Архитектура, рефакторинг, или Что действительно важно
Чек-лист для Knowledge Transfer
Dynamic Systems Development Method (DSDM)
Документация в картинках
Последние статьи в блоге
Кейс: Сертификация команды системных аналитиков
Путь к Fullstack-тестировщику: что нужно знать о ручном и автоматизированном тестировании?
ИИ-тестировщик: ожидания и реальность
Системный аналитик 100 lvl — дорожная карта развития
Как оценивать работу тестировщиков по науке
Учебный центр IBS получил сертификат ГОСТ Р ИСО 9001-2015
Совет по развитию сертификации ИТ-специалистов при АПКИТ аккредитовал «Платформу сертификации IBS»
Java-сертификация: IBS в сравнении с Oracle
Исследование IBS: число новых ИТ-решений в реестре ПО выросло в 2023 году более чем на треть
6 суперспособностей Fullstack-тестировщиков, которые напоминают навыки животных
Считаю, что лучшим Enterprise-решением для Mobile является ReactNative. В целом все, можно расходиться :)
Но постойте, давайте я вам расскажу, чем же так прекрасен ReactNative.
Универсальность подхода
В основе ReactNative лежит ReactJS и JavaScript, это значит что можно будет привлечь к разработке уже состоявшихся ReactJS-программистов.
Не маловажным является факт того, что научившись писать на ReactNative под iOS, написать приложение под Android не составит дополнительного труда. В случае нативной разработки пришлось бы осваивать Swift/Objective-C для iOS и Kotlin/Java для Android. ReactNative – это JS, а еще это все те же самые принципы в построении приложения, что и в ReactJS, за исключением платформенных специфик. Learn once, write everywhere.
Архитектурная составляющая
Интернет переполнен статьями о Model-View-Presenter, Model-View-ViewModel, Model-View-WhatEverPattern, VIPER, CleanArchitecture. Но ни iOS, ни Android не предоставляли возможность разделять код в соответствии с одной из выше перечисленных парадигм, все эти компоненты и их нарезку необходимо было осуществлять с помощью библиотек либо самостоятельно.
С ReactNative у нас идет конкретное разделение на View Components и состояние, которое ложится в Redux. В итоге мы разделяем все на отдельные слои. Тестировать код очень просто:
- вот тебе отдельно View - возьмите и протестируйте;
- вот reducers – просто функции, тестировать одно удовольствие;
- вот вам модель данных.
ReactNative провоцирует хорошо структурированный код :) Программист оперирует компонентами, которые просто написать, протестировать и использовать.
Ну ладно, ладно, чуток схитрил, в Android появились Architecture Components, но уже же 2017 г. на дворе, как-то поздновато...
Скорость разработки и плагины
Разрабатывая приложения на ReactNative, программистам не надо долго ждать редеплоя, рендеринг изменений происходит практически моментально. Также очень здорово, что можно стилизовать приложение с использованием CSS-таблиц, это дает возможность очень быстро стилизовать UI.
При разработке с использованием ReactNative, у вас есть возможность использовать и расширять приложение через плагины, вы можете добавлять функциональность, написанную с помощью нативных средств, например карты, не через WebView, а полноценные с компасом, жестами для увеличения и т.д.
Скорость работы
Скорость работы превосходит скорость приложений, написанных с использованием Ionic, Sencha, потому как здесь нет работы через WebView. В ReactNative задействован плагин, который для каждой платформы представляет нативные виджеты. В результате пользователь работает с нативными UI-элементами.
Причем здесь Enterprise
Многим компаниям сейчас крайне необходимы приложения на мобильных устройствах. Как один из вариантов разработки корпоративных приложений может быть ReactNative, он позволяет создать приложения с переиспользованием кодовой базы между Android- и iOS-приложениями. Производить разработку быстро и без отдельных команд под каждую платформу – это яркое преимущество.
К выше перечисленным фактам добавлю: можно использовать разработанные JS-библиотеки, и это делает ReactNative просто по настоящему королевским решением. Согласитесь, очень здорово, когда одна и та же библиотека может быть использована и под Android и iOS.
Иван, стой, а где же эти яркие летние краски? А краски в самом ReactNative – стоит только начать разрабатывать с ReactNative, и вы больше не захотите возвращаться к нативным средствам, конечно же, в задачах корпоративного сегмента, я даже не заикаюсь о 3D-игрушках.
P.S.: Конечно, ReactNative не серебряная пуля, однако для большого сегмента корпоративных приложений это может быть отличный инструментом для тестирования гипотезы и создания первых версий приложения за кратчайшие сроки.
Спасибо и занятной разработки!
Расскажи друзьям:
Как не пропустить самое интересное?
Подписывайтесь на наш ежемесячный дайджест!