Натив или кроссплатформа — что выбрать начинающему мобильному разработчику?

28.10.2019
Натив или кроссплатформа — что выбрать начинающему мобильному разработчику?

В современном мире мобильные устройства стали полноценным рабочим инструментом для профессионалов в самых разных областях. Мобильная разработка является одним из наиболее востребованных направлений в области создания ПО. Работая в рамках кроссплатформенной парадигмы появляется возможность создавать универсальные приложения для разных платформ. Но для того, чтобы добиваться такого уровня эффективности продукта для разных платформ, нужно хорошо знать каждую из них по отдельности, то есть, понимать принципы нативной разработки? О нюансах обоих подходов к созданию мобильных приложений TProger.ru спросил у ведущих ИТ-экспертов, по теме высказался и директор по технологическому развитию компании «АйДи – Технологии управления» Дмитрий Рогов

"Любая кроссплатформенная библиотека или фреймворк базируются на тех же нативных механизмах, на которых реализуется непосредственно нативная разработка. Просто в случае кроссплатформенных решений рабочие процессы строятся так, чтобы «сгладить углы» в плане приведения интерфейса конечного решения к некоему единому знаменателю. Как правило, универсализм не всегда является ответом на задачу создания рабочего мобильного решения: разработчик работает тем качественнее, чем глубже понимает механизмы устройства различных процессов изнутри, что называется, «под капотом». Поэтому я бы рекомендовал начать свой путь в мобильной разработке с изучения нативного подхода. 

Также, вполне рабочей моделью будет одновременное освоение базовых элементов двух подходов, ничего невыполнимого в такой задаче обучения на начальном этапе нет. Например, такой сценарий может оказаться вполне реализуемым и перспективным: начать работу в кроссплатформенной парадигме, а параллельно самостоятельно или с помощью коллег изучать, какие нативные возможности существуют для разработке текущих решений и как их можно применять на практике. 

В таком случае проще добиться комплексного понимания, как работает процесс мобильной разработки в принципе, что называется в сквозном ключе. Это полезно ещё и потому, что любая, даже самая продвинутая универсальная платформа отстаёт по своим возможностям от нативной: производители железа и мобильных ОС часто работают сообща и постоянно наращивают возможности итоговых решений — возможности платформ мобильной разработки, в особенности кросс-платформенных решений, неизбежно отстают.
Новинки в сегменте мобильных устройств появляются на рынке постоянно, некоторые из них значительно опережают время – возьмите Samsung и его разработку аппарата с гнущимся экраном: очевидно, что ввиду радикально иного фронтенда существующие платформы разработки к таким вещам не готовы. 

Как раз здесь и выручат глубокие знания платформ нативных: компенсировать естественное отставание от железа и ОС сможет только разработчик с глубоким, системным знанием мобильной разработки, то есть — нативных платформ. Только такой специалист сможет наращивать функциональность своего решения для новейших мобильных устройств на базе не совсем передовых платформ разработки, доступных на настоящий момент. 

Кроссплатформенная разработка отлично подходит для прототипирования, быстрого теста идеи и т. д. Как только речь заходит о создании по-настоящему фундаментальных продуктов, разработчик неизбежно приходит к необходимости глубокого изучения базовых элементов процесса, то есть нативной разработки". 

Подробнее: https://tproger.ru/experts/native-or-crossplatform/