Go Back

Механіка Binding Libraries в Xamarin/MAUI

Дізнайтесь, як Binding Libraries можуть допомогти вам у створенні кросплатформового застосунку. Швидка міграція нативного коду в Xamarin/MAUI.

Blog post

Здешевлення розробки за допомогою Binding Libraries

Створення цілком нового цифрового продукту не завжди доцільне, особливо, якщо ви вже маєте готове рішення на базі нативного фреймворку. За потреби його можна просто перенести на кросплатформу, швидко адаптувати та налаштувати. Однак, лише за умови, що ви маєте універсальний механізм Binding Libraries для Xamarin/MAUI.

Саме його ми реалізували нещодавно в проєкті «Mozark» і сьогодні поділимось з вами деталями. 

Дізнайтесь більше про особливості проєкту далі!

Ключові цілі проєкту

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

  • SwiftUI для iOS.
  • Kotlin для Android.

Однак є і альтернативний шлях, а саме використання кросплатформових рішень на кшталт Xamarin чи MAUI. При цьому лишається ключова проблема, а саме адаптація продукту до обох платформ, їхніх APIs, інтерфейсів тощо. 

Саме для розв'язання цього виклику ми й реалізували власний унікальний механізм Binding Libraries.

Переваги застосування Binding Libraries

Якщо спрощено, то ми створили універсальне рішення, яке дозволяє трансформувати проєкти. Звісно, лишаються моменти для доопрацювання, але, використовуючи цей механізм, можна:

  • Перенести більшу частину проєкту, розробленого на Kotlin чи SwiftUI, на MAUI зі збереженням екранів, модулів тощо.
  • Швидко доналаштувати APIs для кожної операційної системи, адаптувати команди та дизайн екранів, логіки поведінки.
  • Майже миттєво інтегрувати фактично будь-які платіжні шлюзи та платформи, зокрема і Stripe, який ми використовували в останньому проєкті.

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

Виклики та можливості

Вважається, що оскільки Binding Libraries є вбудованим інструментом від Microsoft, то вона просто має працювати. Умовно, перекомпілювати проєкти в кросплатформовому оточенні з нативних фреймворків у формат тих же Xamarin чи MAUI. Однак, лише в теорії все завжди працює «з коробки». 

Якщо вже цей проєкт був відносно спокійним, то от початкова підготовка механізму проходила з труднощами, зокрема:

  • Потрібно було писати всі «прив'язки» фактично з нуля.
  • Був значний брак готових бібліотек, які нам доводилось шукати окремо, в тому числі й в репозиторіях Maven Repository, GIT тощо.
  • Налаштування та тестування окремих елементів займали досить багато часу та ресурсів принаймні на ранніх стадіях.

Оскільки ви читаєте цей кейс, то проблеми ми цілком успішно розв'язали і створили готове рішення, яке застосовуємо в для роботи над різними задачами.

Готове рішення для різноманітних проєктів

З точки погляду кінцевого користувача фіча не є чимось значущим, особливим, або ж критичним. Однак для власника продукту Binding Libraries є тим інструментом, що дозволить значно швидше реалізувати проєкт та знизити витрати на його розробку.

Умовно, перенесення продукту на кросплатформовий фреймворк з Binding Libraries може коштувати у 10 разів менше, ніж повноцінна розробка на тих же Xamarin/MAUI. Тож це ефективне рішення, яке значно прискорює та здешевлює процес створення мобільних додатків.

Хочете реалізувати подібний проєкт, або ж перенести готовий застосунок на Xamarin/MAUI? Делегуйте цю задачу команді BuildApps!

Готові розпочати?

Зв'яжіться з нами