Близится релиз Delphi XE5 (многие уже отмечают) и Embarcadero вслед за поддержкой iOS обещает нам поддержку Android. Мне как гику это кажется интересным, но нужна ли поддержка мобильных устройств рынку? Ведь есть уже немало средств разработки: от Objective C и Java до штук вроде Xamarin. Зачем еще одно?

Вот что я об этом думаю.

Традиционно сложилось, что сильная сторона Delphi — это корпоративные приложения. Различных учетных систем и прочих систем внутренней автоматизации на Delphi всегда было написано куда больше, чем коробочных продуктов. И мне кажется, что как раз в этой среде у мобильных приложений на Delphi есть шанс.

Благодаря инициативам вроде BYOD (Bring Your Own Device) мобильные устройства все больше проникают в корпоративную среду. В России, пожалуй, пока не очень, но в целом корпоративный мир движется в эту сторону. И мы там будем.

Мобильные возможности получают даже такие казалось бы традиционно десктопные продукты как Toad, получивший свое интернет-развитие в виде сервиса MyToad, позволяющего удаленно запускать выполнение SQL-скриптов [а вот DBArtisan от Embarcadero так не умеет ;)].

Многие считают веб-интерфейс панацеей, но это не совсем так. Есть и обратные мнения:

Facebook CEO said that «the biggest mistake we made as a company was betting too much on HTML5 as opposed to «native» code on the iOS and Android platforms».

Не будем останавливаться на веб, вернемся к BYOD. Слово «bring» как бы намекает нам, что устройство можно носить, то есть скорее всего оно мобильное. И вот эта возможность принести и использовать на работе собственное устройство влечет за собой некоторые последствия.

В первую очередь это конечно вопросы безопасности (что будет если пустить какой-то непонятный iPad в корпоративную сеть?). Но мы говорим про Delphi, вопросы безопасности пусть решают системные администраторы, благо крупные вендоры уже предлагают готовые инфраструктурные решения.

Главный касающийся Delphi вопрос — это отсутствие программного обеспечения. Если вы зайдете на Apple Store или Android Market, то увидите огромное количество приложений. Но корпоративным пользователям как правило нужны совсем не Angry Birds и не калькулятор калорий. Тем более что очень часто они работают с какой-то самодельной системой, мобильные клиенты для которой еще только предстоит разработать.

И если сама система была написана на Delphi, то встает выбор — разработать мобильное приложение на Delphi, повторно использовав часть кода и опыт имеющихся разработчиков, или нанять новых/обучить старых разработчиков и написать все с нуля на Objective C или Java. При такой постановке вопроса преимущества Delphi становятся видны. То есть определенная ниша для «мобильной» Delphi все-таки существует.

Так что посмотрим. Ваши мнения?