Développement cross-plateform

Salut à tous,

Je voudrais lancer un petit échange sur le sujet des outils de dev qui permettent de coder pour du cross-plateforme :
Code once - Run everywhere

il y a quelques jours @mbritto à écrit un article sur le blog :
Flutter

Il a également posté cet article sur LinkedIn qui a suscité pas mal de commentaires.

Depuis toujours je défend le développement natif pour les appli mobile qui pour moi est gage de qualité. Et qui surtout n’est pas contraint à une techno plus ou moins à la mode.
C’est pourquoi j’avais suivi les cours iOS et Android de Maxime afin d’avoir des compétences sur les 2 plateformes.

Mais ça fait quelque temps que je n’ai pas fait de dev d’appli mobile, et comme on le sais l’environnement iOS/Android évolue très vite ! Trop vite peut-être ! J’ai raté pas mal d’étapes…

Ayant maintenant presque 2 ans d’expérience en entreprise ma vision a un peu évolue elle aussi. Et certain feedback de mes expériences freelance me poussent à la réfléxion. Il y a quelques semaines je me suis dit que la prochaine techno que je voulais acquérir serait le combo Flutter+Dart.

Et la PAF ! Maxime lance se sujet brulant. Et en faite grâce à un commentaire sur LinkedIn j’ai découvert Felgo. Je n’en avais jamais entendu parlé (pourtant ça date de 2012). Etant très curieux j’ai commencé à regarder ce qu’il offrait par rapport à Flutter ou ReactNativ.

En voici un petit comparatif trouvé sur une vidéo :

Et vous qu’en pensez-vous ? Quel est votre avis sur le sujet ? Connaissiez vous Felgo ?

Salut

Non jamais entendu parlé. Par contre c’est dans l’air du temps de vouloir démocratiser une solution unificatrice multiplateforme. Même les équipes en charge du développement de Kotlin ont lancés pour le développement mobile Kotlin Multiplateforme (KMM), Android+iOS :

https://jetbrains.developpez.com/actu/308902/Kotlin-Multiplatform-Mobile-le-SDK-pour-le-dev-mobile-multiplateforme-est-disponible-en-version-alpha-Il-permet-d-utiliser-le-meme-code-de-logique-metier-dans-des-applications-iOS-comme-Android/

Mais comme le dit maxime dans son article si c’est pour se retrouver encore à faire la chasse aux ressources à droite à gauche, ça va pas être la joie.

Vu que Felgo a été lancé en 2012 peut être qu’il y a déjà pas mal de retour d’expérience dessus?

Je ne connaissais pas du tout Felgo avant que cette personne en parle sur mon linkedin.
J’ai regardé leur site et notamment leur vidéo de présentation commerciale : ça ne m’a pas fait rêvé en termes d’apps réalisées. Peut être que les apps de la vidéo ne sont pas de bons exemples mais ce sont celles qu’ils ont choisit de mettre en première page de leur site donc on doit être assez proche d’un résultat final.

Mais ce qui me pose le plus problème c’est que depuis 2012 je n’ai pas souvenir d’en avoir déjà entendu parler. Je n’ai pas réussi à trouver de comparatifs par rapport aux autres solutions (celui qu’il a donné en commentaire de mon post linkedin a été fait par la société felgo elle même…).
Comme c’est un projet privé closed-sources si l’entreprise décide d’arrêter le produit il n’est pas garanti que tu pourras continuer à t’en servir et à mettre à jour tes apps.

C’est peut être une excellente solution, mais personnellement je ne me sens pas d’y investir du temps pour la valider car j’aime beaucoup Flutter qui me permet de créer rapidement des apps graphiquement sympas :slight_smile:

2 J'aimes

Je crois qu’avant Felgo était nommé V-Play mais ce n’est pas pour autant que ça me parle.

Je suis assez d’accord avec toi la plupart des appli faites avec Felgo que j’ai pu regarder ne m’ont pas paru très sexy

Ça c’est plutôt une bonne information de ta part. Effectivement pas open-source. Je n’avais pas vu ce point négatif.

Ben en faite très peu étonnamment. Ce qui ne m’emballe pas du coup.

Et j’ai fini pas comprendre pourquoi le commentaire posté sur le LinkedIn de @mbritto était une peu téléguidé. La personne propose des cours en ligne pour apprendre Felgo, il ne peut donc que prêcher fortement pour son business.

2 J'aimes

Je ne connais pas Felgo non plus, mais vu que je n’aime pas trop de JavaScript, je le mets de côté comme le React Native.

Je suis surtout l’actualité de Flutter et Xamarin, mais la balance penche plus vers Flutter, car le .NET je ne connais pas vraiment, donc autant apprendre un langage peut-être plus simple comme le Dart.

@Burgowzer pour l’instant, je trouve que c’est une bonne solution pour les développeurs Kotlin qui veulent créer des apps iOS, mais pas l’inverse et il manque encore des plateformes, Web et Desktop pour que celle-ci soit réellement toute plateforme.

Mais je rejoins @mbritto, sur le point que je n’avais pas pensé et qu’il a mis en avant, qui est : le nombre de personnes qui paye pour une application Android donc, un bon retour sur investissent (ROI).

C’est vraiment cet argument, qui m’a fait réfléchir, car comme toi @alexandre.cane je défends le développement natif, mais pour une question de business, il est peu être préférable de mettre de l’eau dans son vin (sacrilège) et d’être plus compétitif.

1 J'aime

L’idée de Kotlin native est de partager le code métier non spécifique, en Kotlin. Puis de refaire les parties spécifiques sur chaque plateforme : interface graphique principalement, mais peut être aussi les bases de données, etc.
J’avais fait ça pendant quelques années avec un projet open source de google (J2ObjC) où je codais mes classes métier en Java pour les utilisais normalement sur Android, puis le logiciel les transpilait en ObjC pour les intégrer dans mon projet iOS (ObjC + Swift).
J’ai pu partager du code, mais j’ai passé énormément de temps pour le faire fonctionner et l’intégrer dans mon workflow, et au final le code partagé n’était pas si volumineux une fois qu’on a enlevé l’IHM et cie.
Je suppose que Kotlin native étant plus récent, l’intégration doit être meilleure mais je ne suis pas encore certain que le jeu en vaille la chandelle.

Oui, mon idée est que iOS mérite du développement natif car le public est demandeur et prêt à payer pour de la qualité. Sur Android, le public préfère majoritairement du gratuit de qualité moyenne à du payant de bonne qualité. Les outils de Flutter me font gagner beaucoup de temps de dev sur Android et la qualité est très bonne en sortie pour les utilisateurs. Le fait que Flutter travaille sur un export web et windows pourrait être un plus appréciable si les apps générées fonctionnent bien.

Merci à tous pour vos retours. Ça m’a conforté dans mon idée. Je reste sur mon premier choix Flutter + Dart

Pour info, je viens d’ajouter les premiers cours sur Flutter. Je n’ai pas encore communiqué dessus mais le cours gratuit est dispo et les cours payants commencent à être disponibles pour ceux qui ont l’abonnement.
Je vais bientôt rendre tout disponible et prévenir officiellement par email etc. Mais puisqu’on en parle sur le forum autant que je vous prévienne en avance :slight_smile:

2 J'aimes

Ah ! Ça me fait plaisir de savoir que je vais pouvoir entendre à nouveau le soleil du sud dans mes oreilles ! Je n’ai pas remis le nez dans tes cours depuis … euh … les premiers cours Kotlin… mi-2018 ?

Un message a été scindé en un nouveau sujet : Quand apprendre un nouveau langage ou outil de développement