Programmation mobile

DanielEz

DanielEz Le 9 août 2020 à 00:52

Bonjour, j'espère que vous allez bien.

Je m'appel Daniel.

Je suis développeur web, et j'aimerai créer une application native de musique qui contient par défaut des chansons d'un musicien. Sauf que je ne sais pas quel language de programmation utiliser pour réaliser mon application.

Pouvez vous m'aider svp ?

Merci

nodwin

nodwin Le 10 août 2020 à 16:05 (Édité le 10 août 2020 à 16:26)

Salut, pour faire des applications native tu peux utiliser Flutter (qui utilise Dart).

Mais vue que t'es développeur Web, je te recommande React Native, si t'as fait des rercherche sur Google t'es surement tomber sur Apache Cordva, Ionic et autre qui sont plus simple que React Native et qui utilisent aussi du JavaScript. Moi je te conseille React Native, parce que ce que Apache Cordva et Ionic ne font que créer une application qui aura si je peux dire un "NAVIGATEUR INVISIBLE" qui va juste éxecuter ton code JavaScript, HTML, CSS; le problème est que cela coute en performance, donc ton application ne sera pas performante. React Native est un peu comme un Google Traduction qui va traduire ton code JavaScript (utilisant ce framework) en élément Natif.

Si tu veux la documentation est là: https://reactnative.dev/. Mais si t'as pas de bonne base en JavaScript, ça peut vite devenir compliqué, heuresement Openclassrooms (une plateforme d'apprentissage en ligne gratuite) a un cours dessus: https://openclassrooms.com/fr/courses/4902061-developpez-une-application-mobile-react-native, pour la partie sur la navigation du cours, là t'es obligé de lire la documentation sur React-Navigation: https://reactnavigation.org/, parce qu'il utilise une version moins récente.

Et sinon, pour le coté backend, t'as qu'à faire une API en NodeJS qui est plus élégants pour faire des API. Mais sinon, si tu connais déjà un langage Back-End, t'as qu'à utiliser celui là pour faire l'API. Et dans le code pour utiliser l'API t'as qu'à faire des appels à cette API, si t'es pas trop alaise avec les API, voire t'as aucune idée, Openclassrooms est là, ils ont un cours sur le fonctionnement des API: https://openclassrooms.com/fr/courses/6573181-adoptez-les-api-rest-pour-vos-projets-web. Mais sinon, je te conseille de connaitre le HTTP avant: https://openclassrooms.com/fr/courses/1946386-comprendre-le-web. Et lorsque t'as bien compris, tu peux créer ton API avec ton langage BackEnd. Si t'as des problèmes lors de la réalisation de ton application, ce serait un plaisir pour moi de t'aider, par email ou toujour via le Forum (je ne suis pas très alaise avec Discord).

Personnelement, moi je fais toujours des API en NodeJS, ça me permet d'avoir une base solide et ensuite faire le site avec un framework (d'office React) et une application mobile native (avec React Native) et le tout en JavaScript ;)

PrimFX

PrimFX Le 13 août 2020 à 21:50

Bonjour @DanielEz,

Je pense que @nodwin a parfaitement résumé les possibilités qui s'offrent à toi.

A moins que tu souhaites une approche "totalement native" en développant par exemple en Swift pour iOS et Kotlin ou Java pour Android, je pense que tu auras d'excellents résultats avec des frameworks de développement natifs comme Flutter ou React Native.

Si tu as déjà de l'expérience en ReactJS, je te dirais de foncer pour utiliser React Native qui sera parfaitement adapté à tes besoins. Sinon, j'ai une tendance (très personnelle) à préférer Flutter dont je trouve l'approche plus "logique" avec le langage Dart; disons que je suis simplement moins à l'aise avec l'utilisation des composants React 😅

Finalement, je pense qu'il est important de définir "l'envergure" de ton projet ou au moins de ton MVP (Minimum Viable Product) pour cette application. Comme @nodwin, j'aurais également tendance à te conseiller d'utiliser React Native ou Flutter plutôt que Ionic qui fait plutôt une sorte de "navigateur in-app camouflé". Cela dit, si tu es à l'aise en développement web hors frameworks, peut-être qu'utiliser un tel framework te permettra déjà d'avoir rapidement une première version utilisable (i.e. une démo / Bêta) de ton application 😃

Si tu es plutôt à l'aise avec d'autres frameworks web, il existe parfois des frameworks "connexes" permettant le développement d'apps natives. Par exemple, si tu es à l'aise avec Vue.js, il existe le framework Vue Native (lui-même basé sur React Native) qui permet également le développement d'applications mobiles !

Étant donné les possibilités que tu as, je peux également te conseiller de jeter un coup d'oeil à la communauté des outils entre lesquels tu hésites. Généralement, plus la communauté et le nombre de développeurs utilisant l'outil est important, plus tu trouveras facilement des solutions aux problèmes / questions que tu auras durant le développement de ton application. Dans la foulée, tu peux également vérifier l'interaction entre l'outil de développement et les composants (hardware) du téléphone dont tu as besoin : pour une app de musique, il vaut mieux que le framework soit capable d'interragir sans soucis avec le volume / les hauts-parleurs des téléphones 😄

En espérant avoir pu t'aider dans tes recherches !

N'hésite pas à nous tenir au courant de tes hésitations / choix pour le développement de ton app 😉

A bientôt,

PrimFX

Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte