В даний час 9 з 10 потенційних клієнтів звертаються із запитом розробки програми відразу під 2
Під час спілкування із замовниками технічному директору компаніїMaurisВолодимиру Бондаренко часто доводиться пояснювати,у чому різниця розробки під кожну з платформ і чому це два абсолютно різні продукти. Багато хто вважає, що програмісти розробляють один додаток, який потім реєструють у маркетах App Store та Google Play. У деяких випадках це справді так, але далеко не завжди. Володимир розповів про основні підходи щодо розробки мобільних додатків.
Їх всього чотири:
конструктор додатків& # 8211; готовий сервіс, який дозволяє за 30 хвилин зібрати мобільний додаток.
У цього підходу два плюси: швидкість і вартість.
В результаті ви отримаєте шаблоннебрендований додаток з обмеженим функціоналом без можливості адаптувати його під себе. За такого підходу до розробки понад 50% усіх ваших побажань неможливо буде реалізувати.
Кроссплатформенноє додаток& # 8211; єдине програмне рішення одразу під обидві мобільні платформи. Сам продукт є сайтом, обгорнутим браузером, який запускає головну сторінку при кліку по іконці.
Переваги:
- Швидкість роботи. Інтерфейс кроссплатформенних додатків чуйний.
- Час розробки. За рахунок єдиного рішення під 2 платформи час розробки істотно скорочується.
- Технічна підтримка платформ.
недоліки:
- Важко знайти досвідченого підрядника. Знайти досвідчених розробників в, наприклад, MonoTouch буде проблематичніше, ніж фахівців для нативних SDK.
- Зручність налагодження.У Titanium надається можливість налагоджувати лише свій код, і не можна отримати доступ у вихідниках самого фреймфорка, що ускладнює пошук проблем. Що стосується MonoTouch, то у багатьох розробників при налагодженні та запуску програми виникають постійні проблеми.
У підсумку, ви отримаєте повноцінне гнучкедодаток за мінімальний період часу з одним програмним кодом під 2 платформи. На старих телефонах продукт може пригальмовувати, платформа також має ряд обмежень при реалізації великих програм.
React Native& # 8211; технологія від Facebook, якавикористовує нативні компоненти під кожну платформу, а також має загальну програмну логіку. Такий підхід дозволяє отримати швидкодію нативної розробки з економією часу за рахунок реалізації загальної логіки.
переваги:
- Повторне використання коду. Крім загального набору вихідних кодів між декількома платформами, React Native дає можливість повторно використовувати код з веб-додатком.
- Платформа: «All inclusive». React Native включає: React; додаткові кошти для Android і iOS; Flexbox для стилізації інтерфейсу користувачів; різноманітні віджети, анімації та багато іншого.
- Нативні компоненти, що інтегруються.
Недоліки:
- Обмежений API. Хоч React Native і підтримує величезну кількість API-інтерфейсів, все ще існує потреба у використанні інших API через вбудовані модулі.
- Відмінності платформ Android і iOS.
- Відносно низька продуктивність. Якщо ви плануєте розробляти складний додаток, React Native вам не підійде.
На виході користувач отримує гнучке додатокз рідним чуйним інтерфейсом і єдиної програмної базою. Але варто врахувати, що технологія досить нова, і в деяких випадках розробникам вашого застосування доведеться самим допрацьовувати стандартні для мобільного розробки програмні компоненти.
нативная розробка& # 8211; розробка двох незалежних програм під платформи iOS та Android.
переваги:
- Зручність розробки та налагодження. В цілому розробка нативних додатків набагато зручніше, ніж, наприклад, розробка кроссплатформенних. Це пов'язано з тим, що в нативної розробці відсутні додаткові прошарки між кодом програми та виконуваним файлом і, в цілому, інструменти Натіва більш розвинені.
- Наявність документації та регулярної технічної підтримки
- Швидкість роботи. Нативні додатки забезпечують високу швидкість роботи і продуктивність.
- Юзабіліті. Нативні додатки надають можливість реалізувати інтерфейс і загальна поведінка програми найбільш природним для даної платформи способом.
Недоліки:
- Охоплення платформ.
- Висока вартість розробки.
- Важко знайти досвідченого підрядника. В цілому, знайти хорошого розробника на Java або Objective-C досить складно з огляду на специфічності даної області і більш високого порогу входу в технологію.
Що зрештою?Ви отримаєте максимально гнучку програму з повним арсеналом можливостей для кожної з платформ, але реалізація та підтримка програми під кожну з платформ вимагатиме окрему команду розробників.
Існує ще ряд менш популярних технологій для реалізації додатків, але вони вписуються в градацію, описану вище.
Тепер перед розробкою програми ви зможете вибрати оптимальний підхід до реалізації, виходячи з вашого бюджету, термінів і функціоналу.
У цьому відео ви можете дізнатися скільки часу займе розробка мобільного додатка. Більше роликів на нашомуканалі: