Ответ 1
[Отказ от ответственности: я работаю для Telerik.]
Telerik NativeScript и Xamarin решают подобные проблемы по-разному. Обе структуры сосредоточены на том, чтобы разработчики могли создавать кросс-платформенные мобильные приложения с собственным пользовательским интерфейсом и общим общим кодом на всех платформах.
Для NativeScript мы в значительной степени сосредоточены на наборе навыков веб-разработчиков. Мы хотим, чтобы каждый, кто сегодня комфортно писал HTML/CSS/JavaScript, мгновенно чувствовал себя дома, создавая собственные приложения, используя NativeScript.
Единственное, что немного отличается, - это то, что представления определены в разметке на основе XML. Эта разметка анализируется с помощью NativeScript и отображается как собственный пользовательский интерфейс на всех целевых платформах. (Модули NativeScript инкапсулируют специфические для платформы визуализации.)
Возможность, которую вы выделяете, также является чем-то уникальным для подхода NativeScript для раскрытия базовых API-интерфейсов платформы. NativeScript эффективно использует (build-time) отражение, чтобы сделать ANY native API доступным для прокси-сервера JavaScript.. Это включает в себя сторонние библиотеки. Вы не зависите от Telerik (или сообщества с открытым исходным кодом), чтобы обновить NativeScript, чтобы воспользоваться этими новыми API. Вы просто выполняете команду и автоматически открываете новые API.
Конечно, мы не ожидаем, что многие люди напишут против исходных API-интерфейсов с использованием JavaScript, так что, когда модули снова помогут инкапсулировать различные собственные API и выставить один, чистый, кросс-платформенный JavaScript API. Любой может создавать модули NativeScript.
Отличная статья, в которой объясняется, как все это работает более подробно в сети разработчиков Telerik (TDN): http://developer.telerik.com/featured/nativescript-works/
Надеюсь, это поможет. Публичная бета-версия NativeScript будет доступна на этой неделе, а v1 отправится в мае.
ОБНОВЛЕНИЕ [февраль 2016] Поскольку это было первоначально опубликовано, NativeScript отправлен и теперь находится в версии 1.6. Он также теперь сильно интегрируется с Angular 2. Вы можете отслеживать ход проекта на GitHub: https://github.com/NativeScript/NativeScript
ОБНОВЛЕНИЕ [Июнь 2016] В настоящее время есть показатели производительности, сравнивающие NativeScript и Xamarin. Пожалуйста, найдите их здесь: https://github.com/NativeScript/sample-iOS-Profiling/tree/performance-tests