Réponse courte
Avec Ionique vous construisez des applications hybrides ou Progressive Web Apps. La structure de l'application est écrite en HTML et l'application est à l'aide de WebViews (quelque chose comme un site web à l'intérieur de votre application).
Avec NativeScript vous sont bâtiment véritablement natif des applications qui n'utilisent pas le DOM HTML et vous aurez à apprendre les composants de l'INTERFACE utilisateur de la plate-forme de ciblage (par exemple, iOS/Android). Cependant, les applications natives sont généralement plus rapide que les applications hybrides et vous pouvez accéder au matériel de fonctionnalités comme l'appareil photo, contact, agenda, appels téléphoniques, etc. tous avec des caractères d'imprimerie/code JavaScript.
Réponse longue
Voici un extrait d'un post de blog par Danyal Zia. Je vous suggère de lire l'intégralité de l'un.
Ionique (2)
Ionique 2 est un hybride mobile cadre de développement... ok, donc ce que signifie-t-il par des hybrides de développement? Applications hybrides sont comme toutes les autres applications que vous pouvez trouver sur l'app store, ils fonctionnent de la même manière (par le téléchargement et l'installation), et de l'interaction de l'utilisateur est similaire, en fait, la plupart des utilisateurs à peine réaliser la différence entre les applications natives et les applications hybrides.
La chose intéressante à propos des applications hybrides, c'est qu'ils sont hébergés à l'intérieur d'une application native qui utilise la WebView – qui est une sorte de navigateur de moins en moins de pages web loader, de sorte que vous obtenez mobiles d'accéder aux fonctionnalités, telles que l', appareil photo, contacts, gyroscope, etc. sur le site web des langues, comme le HTML, XML, CSS, etc.
Ionique 2 utilise encore WebView (tout comme le précédent Ionique version), donc vous devez écrire le code HTML sur votre Android activités, de sorte qu'il peut être plus lent par rapport à ReactNative et NativeScript (nous allons en parler plus tard). Vous pouvez créer des indigènes à la recherche des widgets Ionique dans les 2, mais ils sont encore rendu dans WebView à l'intérieur d'un conteneur natif, et donc, techniquement, ne sont pas indigènes.
Pros:
-
Hybride web de soutien au développement. Même base de code peut être utilisé pour
développer des applications pour Android, iOS, Windows Phone, et web.
- Un développement TRÈS rapide-cycle d'essai. Vous écrivez le code et le tester sur le
navigateur, pas besoin de lourds émulateur de chargement.
- Vous permettent d'écrire du code dans la Machine, faire la transition de l'Angulaire 2 très facile.
- De la même langue (Tapuscrit) peut être utilisé pour développer des applications pour
chaque plate-forme.
- Son système de plugin, il est disponible pour vous à utiliser
tout type de fonctionnalités natives des appareils.
Inconvénients:
- Les problèmes de performances peut se produire si vous avez besoin d'utiliser beaucoup de rappels pour le code natif.
- De la même INTERFACE utilisateur de regarder dans tous les appareils peuvent être un briseur d'affaire pour ceux qui préfèrent l'INTERFACE natifs look.
- Le développement très avancé des graphiques ou hautement interactif de transitions peut être un travail complexe.
NativeScript
Développé par Telerik, NativeScript vous permet d'utiliser le JavaScript ou le Tapuscrit pour le développement, de sorte que si vous avez utilisé Angulaire 2 ci-dessus, alors vous aurez une transition facile. Telerik développé précédemment Kendo UI serrés Angulaire de l'intégration pour les applications hybrides, mais ils ont réalisé plus tard, pourquoi ne pas fournir la vraie croix-plate-forme native de l'expérience?
Avec Tapuscrit et Angulaire 2, vous pouvez très facilement créer des composants pour les applications mobiles à l'aide d'un style déclaratif. Se réclamant du "écrire une fois, exécuter partout", de la même Angulaire 2 code peut être utilisé pour l'INTERFACE utilisateur pour toutes les plateformes, il est le ciblage. NativeScript est un véritable multi-plateforme, ce qui signifie 100% Native API d'accès et sa mission est de permettre aux gens d'utiliser la même base de code pour toutes les plateformes.
Contrairement à ReactNative, NativeScript utilise le natif code de l'INTERFACE utilisateur (pour les Android et iOS téléphones), même si le code est écrit en caractères d'imprimerie/JavaScript! Si l'on considère la performance de l'autre côté, puis NativeScript a vraiment l'avantage sur ReactNative, parce que c'est en utilisant AngularJS 2 structure de la création de composants.
La meilleure chose à propos de NativeScript est qu'il est développé par Telerik qui vous assure qu'il continuera de recevoir de nouvelles mises à jour dans le futur, comme il est soutenu par les développeurs professionnels partout dans le monde. Donc, si vous utilisez des applications commerciales, vous pouvez compter sur NativeScript plus de ReactNative, comme ReactNative est plus open-source amical et s'appuie beaucoup de contributions de la part des utilisateurs. Mais, NativeScript est également open-source.
NativeScript est également assez mûri par rapport à ReactNative. Il est déjà dans la version 2.0, qui n'est pas le cas avec ReactNative qui obtient de nouvelles mises à jour moins souvent. NativeScript peut partager beaucoup plus de code que ReactNative, le sens qu'il permettra d'économiser votre temps.
Pros:
- Véritable support multi-plateforme. Base de code unique pour le développement d'applications pour toutes les plateformes prises en charge.
- 100% Native API d'accès. Vous pouvez accéder au matériel de fonctionnalités comme l'appareil photo, contact, agenda, appels téléphoniques, etc. tous avec des caractères d'imprimerie/code JavaScript.
- Utilise l'angle de 2 de sorte que vous pouvez facilement transférer vos précédentes des composants web dans vos applications.
- Très bon soutien de Telerik.
Inconvénients:
- De nombreux plugins ont besoin d'être téléchargé séparément pour les composantes. Pas tous les plugins sont disponibles et vérifiés (c'est à dire, testés).
- La taille de l'application est beaucoup plus grande que ReactNative Ioniques et 2. Si vos utilisateurs ont une connexion internet lente, alors il peut être un problème pour vous.
- Il n'y a pas de support de l'HTML et du DOM dans NativeScript, de sorte que vous besoin de connaître les différents composants de l'INTERFACE utilisateur pour construire l'INTERFACE utilisateur des applications.