Il y a une bonne raison pour laquelle certains développeurs d'applications mettent la version iOS de leur application en premier. L'App Store a été le premier sur la scène et est toujours très populaire, mais les autres plateformes ne peuvent pas être ignorées. Avec le lancement de Google Play, l'industrie des applications Android a rapidement rattrapé l'App Store iOS. Une application Android réussie sur Google Play peut être aussi rentable qu'une application iOS sur l'App Store. Les développeurs avertis produisent des applications pour les deux plates-formes.
Développer des applications iOS et Android simultanément
Le développement multiplateforme offre la possibilité de coder une seule fois et de construire partout. Cela fait gagner beaucoup de temps, même si vous envisagez de développer uniquement pour iOS et Android. Lorsque vous ajoutez Windows, Mac et d'autres plates-formes au mélange, c'est un gain de temps extrême.
Cependant, le développement multiplateforme s'accompagne d'une mise en garde. Vous êtes souvent enfermé dans une boîte à outils tierce, ce qui peut limiter ce que vous pouvez faire avec une application. Il se peut que vous ne puissiez 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.
Quiconque cherche à développer pour plus d'une plate-forme dispose d'une sélection de boîtes à outils parmi lesquelles choisir. Le meilleur choix pour vous dépend de ce que vous prévoyez d'en faire. Voici quelques-unes des options de développement multiplateforme.
01
de 04
Documentation complète et prise en charge des plug-ins tiers.
Visualisez les modifications instantanément, ce qui accélère le processus de prototypage.
Spécialisé dans le développement de jeux 2D.
N'inclut pas d'éditeur WYSIWYG.
Connexion Internet requise pour créer un appareil.
Le kit de développement logiciel (SDK) multiplateforme 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. Avec Corona SDK, vous créez un projet une seule fois et le publiez sur plusieurs appareils, notamment des ordinateurs, des smartphones, des tablettes et des téléviseurs intelligents.
Corona SDK est principalement destiné aux jeux 2D, mais il a également des utilisations de productivité. Certains développeurs ont réussi à développer des applications non liées au jeu à l'aide du SDK Corona. La plate-forme utilise LUA comme langage, ce qui rend le codage plus rapide que l'utilisation des différentes saveurs de C flottant, et elle intègre un moteur graphique.
La meilleure partie est que le SDK Corona est gratuit pour les débutants et les amateurs. Les créateurs et les professionnels sérieux paient une redevance mensuelle. Vous pouvez télécharger et commencer à développer des jeux et des applications de productivité immédiatement. Ce n'est pas le meilleur choix si vous avez besoin de beaucoup de saisie de texte de la part de l'utilisateur, mais il est solide pour la plupart des autres utilisations de productivité et est exceptionnel pour les graphiques 2D.
Utilisations principales: Jeux 2D, Productivité.
02
de 04
Courbe d'apprentissage inférieure à celle de ses concurrents.
Groupe de soutien communautaire actif.
Packs d'extension spécialisés.
Les grandes tailles de construction ne sont pas idéales pour développer des jeux mobiles.
L'exportation vers iOS ou macOS nécessite le compilateur Xcode et un ordinateur Mac.
Le SDK Corona est idéal pour les graphiques 2D, mais si vous envisagez de passer à la 3D, vous avez besoin de Unity. Si vous envisagez de passer à la 3D à l'avenir, Unity peut être le meilleur choix même si votre projet actuel est un jeu 2D. C'est toujours une bonne idée de créer un référentiel de code pour accélérer la production future.
Les jeux Unity peuvent prendre plus de temps à développer que Corona, mais Unity prend en charge presque toutes les plates-formes, y compris les consoles et les jeux en ligne, qui sont pris en charge par le moteur WebGL.
Unity propose des modèles pour vous aider à démarrer sur différents types de projets, y compris des jeux 2D et 3D. Les autres options de modèles incluent des modèles haut de gamme et légers. Le Scriptable Render Pipeline (SRP) signifie que les développeurs et les artistes techniques peuvent se lancer dans Unity sans avoir besoin de maîtriser le C++.
Utilisation principale: Jeux 3D.
03
de 04
L'interpréteur intégré facilite le débogage.
Nombre impressionnant d'extensions et d'outils compatibles.
Une mauvaise documentation rend les choses difficiles pour les nouveaux utilisateurs.
Le soutien de la communauté s'étiole.
Comme son nom l'indique, Cocos2D est un framework pour créer des jeux 2D. Cependant, contrairement au Corona SDK, Cocos 2D n'est pas exactement une solution à code unique et à compiler partout. Au lieu de cela, il s'agit d'une bibliothèque qui peut être insérée dans différentes plates-formes et rendre le code réel identique ou similaire. Cela fait beaucoup de travail lors du portage d'un jeu d'une plate-forme à l'autre, mais cela nécessite toujours plus de travail que Corona. Cependant, le bonus est que le résultat est codé dans la langue par défaut, ce qui vous donne un accès complet à toutes les API de l'appareil sans attendre qu'un tiers les inclue.
Différentes versions de Cocos2D sont disponibles pour C++, C#, Swift, Javascript et Python.
Utilisation principale: Jeux 2D.
04
de 04
Facilement accessible à toute personne possédant des compétences de base en HTML5, CSS et Javascript.
Application smartphone pour tester des applications sur plusieurs appareils.
Prise en charge intégrée limitée des widgets de l'interface utilisateur.
La fonctionnalité limitée de l'API se traduit par des fonctionnalités de géolocalisation peu fiables.
Adobe PhoneGap utilise HTML 5 pour développer des applications multiplateformes. L'architecture de base de cette plate-forme est une application HTML 5 qui s'exécute dans une WebView sur la plate-forme de l'appareil. Vous pouvez le considérer comme une application Web qui s'exécute dans un navigateur sur l'appareil, mais au lieu d'avoir besoin d'un serveur Web pour héberger l'application, l'appareil agit également en tant que serveur.
Comme vous pouvez l'imaginer, PhoneGap ne rivalisera pas bien avec Unity, Corona SDK ou Cocos en termes de jeux, mais il peut facilement dépasser ces plates-formes pour les affaires, la productivité et le codage d'entreprise. La base HTML 5 signifie qu'une entreprise peut développer une application Web interne et la diffuser sur les appareils.
Les développeurs de PhoneGap bénéficient d'une bibliothèque de plug-ins robuste qui étend les capacités des applications mobiles multiplateformes.
PhoneGap interagit également bien avec Sencha, qui est une plate-forme de création d'applications Web.
Utilisation principale: Productivité et affaires.
Et plus...
Corona SDK, Unity, Cocos et PhoneGap sont un bon échantillon de packages de développement multiplateformes, mais il existe de nombreuses autres options. Certains 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 diverses formes. La dernière version met beaucoup de polissage autour d'une plate-forme par ailleurs solide.
- Xamarin: Un autre excellent choix pour les solutions non liées aux jeux, Xamarin utilise .NET et C# comme langage de programmation. Xamarin est spécialisé dans l'utilisation des éléments d'interface utilisateur naturels de l'appareil, de sorte que les applications semblent conçues pour chaque appareil particulier.
- Accélérateur: Si vous préférez construire en utilisant JavaScript, Appcelerator peut être votre outil. Il ne s'agit pas d'une solution de code parfaite à construire une fois pour toutes (vous avez encore du travail à faire pour obtenir des builds pour des appareils spécifiques), mais elle peut être utilisée pour développer pour chaque appareil sans compromis hybride.