В даний час 9 з 10 потенційних клієнтів звертаються із запитом розробки програми відразу під 2
Під час спілкування з замовниками технічному директору компанії 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 досить складно з огляду на специфічності даної області і більш високого порогу входу в технологію.
Що в підсумку? Ви отримаєте максимально гнучке додаток з повним арсеналом можливостей для кожної з платформ, але реалізація і підтримка програми під кожну з платформ потребують окрему команду розробників.
Існує ще ряд менш популярних технологій для реалізації програм, але всі вони вписуються в градацію, описану вище.
Тепер перед розробкою програми ви зможете вибрати оптимальний підхід до реалізації, виходячи з вашого бюджету, термінів і функціоналу.
У цьому відео ви можете дізнатися, скільки часу займе розробка мобільного додатка. Більше роликів на нашому каналі: