Секрети розробки мобільних додатків

В даний час 9 з 10 потенційних клієнтів звертаються із запитом розробки програми відразу під 2

платформи - iOS і Android. Це цілком логічно, адже згадані платформи в сумі займають більше 95% ринку, і економічно доцільно розробляти мобільний додаток саме під ці платформи.

Під час спілкування з замовниками технічному директору компанії Mauris Володимиру Бондаренку часто доводиться пояснювати,в чому різниця розробки під кожну з платформ і чому це два абсолютно різні продукти. Багато хто вважає, що програмісти розробляють один додаток, яке потім реєструють в маркетах App Store і Google Play. У деяких випадках це дійсно так, але далеко не завжди. Володимир розповів про основні підходи до розробки мобільних додатків.

Їх всього чотири:

конструктор додатків - готовий сервіс, який дозволяє за 30 хвилин зібрати мобільний додаток.

У цього підходу два плюси: швидкість і вартість.
В результаті ви отримаєте шаблонне НЕбрендоване додаток з обмеженим функціоналом без можливості адаптувати його під себе. При такому підході до розробки більш 50% всіх ваших побажань неможливо буде реалізувати.

Кроссплатформенноє додаток - єдине програмне рішення відразу під обидві мобільні платформи. Сам продукт являє собою сайт, обгорнутий браузером, який запускає головну сторінку при кліці по іконці.

переваги:

  • Швидкість роботи. Інтерфейс кроссплатформенних додатків чуйний.
  • Час розробки. За рахунок єдиного рішення під 2 платформи час розробки істотно скорочується.
  • Технічна підтримка платформ.

недоліки:

  • Важко знайти досвідченого підрядника. Знайти досвідчених розробників в, наприклад, MonoTouch буде проблематичніше, ніж фахівців для нативних SDK.
  • Зручність налагодження. В Titanium надається можливість налагоджувати тільки свій код, і не можна отримати доступ в исходниках самого фреймфорка, що ускладнює пошук проблем. Що стосується MonoTouch, то у багатьох розробників при налагодженні і запуску програми виникають постійні проблеми.

У підсумку, ви отримаєте повноцінне гнучкедодаток за мінімальний період часу з одним програмним кодом під 2 платформи. На старих телефонах продукт може пригальмовувати, платформа також має ряд обмежень при реалізації великих програм.

React Native - технологія від Facebook, яка використовуєнативні компоненти під кожну з платформ, а також має загальну програмну логіку. Такий підхід дозволяє отримати швидкодію нативной розробки з економією часу за рахунок реалізації загальної логіки.

переваги:

  • Повторне використання коду. Крім загального набору вихідних кодів між декількома платформами, React Native дає можливість повторно використовувати код з веб-додатком.
  • Платформа: «All inclusive». React Native включає: React; додаткові кошти для Android і iOS; Flexbox для стилізації інтерфейсу користувачів; різноманітні віджети, анімації та багато іншого.
  • Інтегрувальні нативні компоненти.

недоліки:

  • Обмежений API. Хоч React Native і підтримує величезну кількість API-інтерфейсів, все ще існує потреба у використанні інших API через вбудовані модулі.
  • Відмінності платформ Android і iOS.
  • Відносно низька продуктивність. Якщо ви плануєте розробляти складний додаток, React Native вам не підійде.

На виході користувач отримує гнучке додатокз рідним чуйним інтерфейсом і єдиної програмної базою. Але варто врахувати, що технологія досить нова, і в деяких випадках розробникам вашого застосування доведеться самим допрацьовувати стандартні для мобільного розробки програмні компоненти.

нативная розробка - розробка двох незалежних додатків під платформи iOS і Android.

переваги:

  • Зручність розробки та налагодження. В цілому розробка нативних додатків набагато зручніше, ніж, наприклад, розробка кроссплатформенних. Це пов'язано з тим, що в нативної розробці відсутні додаткові прошарки між кодом програми та виконуваним файлом і, в цілому, інструменти Натіва більш розвинені.
  • Наявність документації та регулярної технічної підтримки
  • Швидкість роботи. Нативні додатки забезпечують високу швидкість роботи і продуктивність.
  • Юзабіліті. Нативні додатки надають можливість реалізувати інтерфейс і загальна поведінка програми найбільш природним для даної платформи способом.

недоліки:

  • Охоплення платформ.
  • Висока вартість розробки.
  • Важко знайти досвідченого підрядника. В цілому, знайти хорошого розробника на Java або Objective-C досить складно з огляду на специфічності даної області і більш високого порогу входу в технологію.

Що в підсумку? Ви отримаєте максимально гнучке додаток з повним арсеналом можливостей для кожної з платформ, але реалізація і підтримка програми під кожну з платформ потребують окрему команду розробників.

Існує ще ряд менш популярних технологій для реалізації програм, але всі вони вписуються в градацію, описану вище.

Тепер перед розробкою програми ви зможете вибрати оптимальний підхід до реалізації, виходячи з вашого бюджету, термінів і функціоналу.

У цьому відео ви можете дізнатися, скільки часу займе розробка мобільного додатка. Більше роликів на нашому каналі: