C’est une bonne raison pour laquelle les développeurs d’applications placent souvent la version iOS de leur application en premier - l’App Store a été le premier à entrer en scène et reste extrêmement populaire, mais les autres plateformes ne doivent pas être ignorées. L'industrie des applications Android a prédit qu'elle rattraperait les ventes d'applications iOS en 2017. Une application Android réussie sur Google Play peut être aussi rentable qu'une application iOS sur l'App Store.
La popularité des applications sur les appareils iOS et Android fait du développement multi-plateformes une considération importante. La possibilité de coder une fois et de construire partout permet de gagner beaucoup de temps, même si vous ne prévoyez de développer que pour iOS et Android. Lorsque vous ajoutez Windows, Mac et d'autres plates-formes au mélange, cela peut vous faire gagner beaucoup de temps. Cependant, le développement multiplate-forme vient avec une mise en garde. Vous êtes souvent bloqué dans une boîte à outils tierce, ce qui peut limiter votre utilisation d'une application, par exemple, vous ne pouvez pas utiliser les dernières fonctionnalités d'un système d'exploitation tant que votre boîte à outils ne les prend pas en charge.
Voici une sélection de boîtes à outils vous permettant de faire du développement multi-plateforme.
Corona SDK
Le kit de développement logiciel multi-plateforme Corona de Corona Labs prend en charge les ordinateurs Windows et Mac et constitue un excellent moyen de développer des applications iOS et Android. Corona SDK vous permet de créer un projet une fois et de le publier sur plusieurs périphériques, notamment des ordinateurs, des smartphones, des tablettes et des téléviseurs intelligents.
Corona SDK vise principalement les jeux en 2D, mais il a également des utilisations en termes de productivité. Certains développeurs ont réussi à développer des applications non-nommées à l'aide du SDK Corona. La plate-forme utilise LUA comme langage, ce qui accélère le codage par rapport aux différentes variantes de C flottant. Un moteur graphique y est déjà intégré.
La meilleure partie est que le SDK Corona est gratuit pour les débutants et les amateurs. Les créateurs et les pros sérieux paient un abonnement mensuel. Vous pouvez télécharger et commencer immédiatement à développer des jeux et des applications de productivité. Ce n'est pas génial si vous avez besoin de beaucoup de texte de la part de l'utilisateur, mais il est solide pour la plupart des autres utilisations de productivité et remarquable pour les graphiques 2D.
Utilisations principales: Jeux 2D, Productivité
Continuer la lecture ci-dessous
Unité
Corona SDK convient parfaitement aux graphiques 2D, mais si vous devez passer en 3D, vous avez besoin de Unity. En fait, si vous envisagez d’utiliser la 3D à l’avenir, Unity peut être le meilleur choix, même si votre projet actuel est un jeu en 2D. Il est toujours bon de créer un référentiel de code pour accélérer la production future.
Le développement des jeux Unity peut prendre plus de temps, mais Unity prend en charge presque toutes les plateformes, y compris les consoles et les jeux Web, qui sont prises en charge par le moteur WebGL.
La version 2018 d'Unity a ajouté des modèles pour vous aider à démarrer sur différents types de projets, notamment les jeux 2D et 3D. Les autres options de modèle incluent un modèle VR et des modèles haut de gamme et légers. Le nouveau pipeline de rendu de script (SRP) permet aux développeurs et aux artistes techniques de se lancer dans Unity sans avoir besoin de maîtriser le C ++. Au lieu de cela, SRP utilise des shaders C # et de matériau.
Utilisation principale: Jeux 3D
Continuer la lecture ci-dessous
Cocos2D
Comme son nom l'indique, Cocos2D est un framework de construction de jeux 2D. Toutefois, contrairement à Corona SDK, Cocos 2D n'est pas une solution compilant tout le code, une seule fois. Il s'agit plutôt d'une bibliothèque qui peut être insérée sur différentes plates-formes pour que le code actuel soit identique ou similaire. C’est une lourde tâche de porter une partie d’une plate-forme à l’autre, mais cela demande toujours plus de travail que Corona. Toutefois, l'avantage réside dans le fait que le résultat est codé dans la langue maternelle, ce qui vous donne un accès complet à toutes les API du périphérique sans attendre qu'un tiers les ait incluses.
Différentes versions de Cocos2D sont disponibles pour C ++, JavaScript, C #, Xcode, Objective C et Python.
Utilisation principale: Jeux 2D
PhoneGap
PhoneGap utilise HTML 5 pour développer des applications multiplates-formes. L'architecture de base de cette plate-forme est une application HTML 5 qui s'exécute dans une vue Web sur la plate-forme native. Vous pouvez considérer cela comme une application Web qui s'exécute dans un navigateur sur le périphérique, mais au lieu d'avoir besoin d'un serveur Web pour héberger l'application, le périphérique joue également le rôle de serveur.
Comme vous pouvez l’imaginer, PhoneGap ne rivalisera pas bien avec Unity, Corona SDK ou Cocos en termes de jeu, mais il peut facilement dépasser ces plates-formes pour le commerce, la productivité et le codage. La base HTML 5 signifie qu'une entreprise peut développer une application Web interne et la transmettre à des périphériques.
Les développeurs PhoneGap bénéficient d'une bibliothèque de plugins robuste qui étend les capacités des applications mobiles multiplates-formes.
PhoneGap interagit également bien avec Sencha, une plate-forme permettant de créer des applications Web.
Utilisation principale: Productivité et commerce
Continuer la lecture ci-dessous
Et plus…
Corona SDK, Unity, Cocos et PhoneGap sont parmi les packages de développement multi-plateformes les plus populaires, mais il existe de nombreuses autres options. Certains d'entre eux ne sont pas aussi robustes, nécessitent plus de temps pour passer du code à la construction réelle, ou sont coûteux, mais ils peuvent être parfaitement adaptés à vos besoins.
- QT: Un bon choix pour les applications d'entreprise et de productivité, QT existe depuis un certain temps sous différentes formes. La dernière version met beaucoup de raffinement autour d’une plate-forme par ailleurs solide.
- Xamarin: Un autre excellent choix pour les solutions non-nommées, Xamarin utilise C # comme langage de programmation.Xamarin est spécialisé dans l'utilisation des éléments de l'interface utilisateur native. Les applications ont donc l'air d'être conçues pour chaque appareil.
- Confiture: Principalement une plate-forme de jeu, Marmalade est doté d’un outil C et de Marmalade Quick, un outil LUA. C'est pratique pour recompiler des jeux iOS pour Android.
- AppceleratorSi vous préférez créer à l'aide de JavaScript, Appcelerator peut être votre outil. Ce n'est pas une solution parfaite ne comportant qu'une seule fois le code partout - vous avez encore du travail à faire pour générer des versions pour des périphériques spécifiques - mais cela signifie que vous pouvez développer pour chaque périphérique sans compromis hybrides.