App Store : Flash prié de rester à l'écart

Florian Innocente |
Avec la sortie d'un nouveau SDK iPhone OS 4, Apple a amendé son contrat d'une manière qui laisse clairement entendre qu'elle ne tolère pas des applications générées à partir d'autres environnements de développement que le sien ou qui doivent être écrits avec des langages bien précis.

3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).


La première implication de ce changement va concerner Adobe qui a doté Flash CS5 d'une fonction pour compiler des applications Flash et AIR en applications compatibles iPhone OS. Plusieurs sont d'ailleurs déjà disponibles sur l'App Store depuis l'automne dernier grâce à la bêta de Flash CS5, et encore ce week-end, après la sortie de l'iPad, les équipes AIR d'Adobe se félicitaient de voir que cela fonctionnait avec la tablette (lire : Adobe prend un bol d'AIR sur l'iPad).

Cette évolution d'Apple intervient en outre à trois jours du lancement de la Creative Suite 5 où figure cette nouvelle fonction d'export… Adobe doit apprécier. Pour l'heure aucune réaction n'est venue de l'éditeur. D'autres compilateurs sont certainement concernés de la même manière, tel que MonoTouch, permettant de générer du code compatible iPhone à partir de code C# et .NET (lire : S'affranchir d'Objective-C sur iPhone).

Côté utilisateur cela ne devrait pas changer grand chose, l'App Store ne souffrait pas d'un manque d'applications qui aurait rendu ces renforts salutaires. Côté développeur, c'est variable, selon le bord où l'on se situe.

Pour les habitués d' Objective-C, C, C++ ou JavaScript cela ne change rien non plus et leurs marges de manoeuvre ne sont pas moins grandes. Pour les développeurs des plateformes concernées en revanche, c'est une porte qui se referme devant leur nez en claquant, et une opportunité qui disparaît avec, celle de pouvoir profiter de l'App Store et de l'iPhone sans se donner le mal d'apprendre les langages et outils de développements officiels ou de concevoir leurs logiciel en tirant spécifiquement parti des qualités et possibilités de cette plateforme. Le propos d'Adobe étant qu'un seul logiciel pouvait fonctionner à l'identique sur Mac, PC, Linux, Android, iPhone OS ou dans un navigateur web…
avatar Brewenn | 
Au final, ce sont les clients qui trancheront, s'ils ne trouvent pas leur bonheur sur la plateforme iPhone OS, et le trouvent sous d'autres plateformes, leur choix sera vite fait. Mais c'est vrai qu'il y aura toujours des gens qui rentrent dans un magasin avec une idée bien précise de ce qu'ils veulent acheter, et qui ressortent avec ce que le commercial a décidé de leur vendre au prix fort, pour s'apercevoir trois jours plus tard que ça ne leur convient pas du tout.
avatar Feroce | 
"Quand est il du respect de l'utilisateur, quand on voit déjà un grand nombre d'application tout crapy ?" C'est évident, le fait d'avoir un bug est TOUJOURS la faute du framework utilisé, JAMAIS du programmeur. Donc si je comprends bien, quand tout cela aura été nettoyé (ouch, je dois faire gaffe au point godwin), ton application va instantanément être débarrassée du bug ? Ce qu'on risque surtout, c'est d'avoir moins d'applications, donc moins de concurrence dans une catégorie donnée de logiciels, donc des bugs qu'il ne faudra plus corriger aussi vite. J'exagère bien entendu volontairement, mais qui sait ?
avatar spleen | 
Des opinions émises sur un site entièrement tourné vers la dévotion totale et aveugle au dieu Apple doivent être prises pour ce qu'elles sont : du vent. Les seuls avis objectifs sur la guéguerre entre Apple et Adobe ne peuvent avoir de sens que sur un média réellement objectif. Et ce n'est sûrement pas le cas de Macgé, et encore moins des lobotomisés qui nous assomment avec leur propagande à deux balles...
avatar omega2 | 
@ Domsou : Justement apple érige aussi son "code de la route" (ses règles sur les interfaces) en plus de choisir ton véhicule (ton langage) Mais bon t'as raison, il y a plus proche comme métaphore. C'est comme si la France t'interdisait de parler anglais sous prétexte que la langue officielle est le français. @ pecos : T'as le droit de faire des applis en Objective-C pour android. Il manque juste le compilateur, c'est tout. Le jour où le compilateur existera, tu entendras surement pas google te dire "ha ben non ça ne respecte pas les régles" ou encore "c'est interdit par manque d'optimisation". @ pecos : L'utilisateur s'en fou peut être du langage mais il s'en fout beaucoup moins quand il découvre que c'est apple qui choisit le type d'applis qu'il a le droit installer.
avatar daito | 
Melaure dans le développement professionnel, ça laisse songeur. Bien sûr qu'Apple ne profite pas de sa position dominante, ils assurent juste leur intérêt et la pérennité de la plateforme iPhone. John Gruber a produit sur son site l'analyse qui me semble la plus intelligente. En clair il dit entre autre à juste titre qu'Apple ne veut pas que d'autres plateformes de développement viennent surplomber Cocoa Touch pour ainsi garder l'attractivité de la plateforme pour les développeurs. Il souligne aussi le fait qu'Apple, là encore avec raison, veuille garder le contrôle sur sa plateforme de manière à ce que les nouvelles fonctions proposées soient directement utilisées (et donc pas dépendre des autres pour l'implémentation d'une nouvelle fonction dans une application développée avec une plateforme alternative). Enfin il discute les conséquences pour les différents acteurs, d'Apple à l'utilisateur. En particulier pour l'utilisateur il a un argument pertinent. C'est vrai que le développement "Cross-plateform"n'a pas été signe de grande qualité pour les plateformes d'Apple, spécialement sur Mac (le plus bel exemple est justement Flash). Donc un développement unique en Cocoa Touch sur l'iPhoneOS est indéniablement un gage de qualité des applications proposées à l'utilisateur. C'est l'avis de Gruber, je suis d'accord avec ça. Il illustre d'ailleurs son propos avec un bel exemple : l'application Kindle d'Amazo. Sur Mac OS X, c'est vrai, elle n'est pas terrible alors que la version iPhone est de très bonne qualité. Bien l''application Mac OS X a été développée avec le framework Cross-plateform Qt toolkit alors que l'application iPhone avec CocoaTouch. À méditer!! http://daringfireball.net/2010/04/why_apple_changed_section_331
avatar yapafoto | 
@NicolasO Nimblekit fourni un bout d'objective C qui permet à du javascript exécuté dans un composant WebKit d'appeler des éléments du framework COCOA. A partir de là, je ne vois pas en quoi cela serait banni par les termes de la licence. Dans le genre, moins abouti mais avec les sources et multi-téléphone, il y a PhoneGAP.
avatar omega2 | 
daito : Même si les plus grands développeurs mac continuaient à dire que le "mono plateforme" est gage de qualité, je continuerai de croire le contraire. Il y a tellement de daube sur toutes les plateformes qui sont des applications "mono plateforme"... Même sur iphone on en trouve un certain nombre mais comme c'est des daubes elles se trouvent jamais dans des "top 100". De même faire passer le multi plateforme comme une cause de mauvais logiciel ça me fait bien rire. Regarde donc photoshop, si tu trouves qu'il est nul sur mac ou sur windows alors je ne sais pas ce qu'il te faut. Evidement certaines boites ne font pas l'effort de rendre les portages aussi bon que sur la plateforme principale. D'un autre côté c'est le même problème avec les "mono plateforme" : sans volonté (ou si on est pas bon) le logiciel sera une daube. Par contre je ne peux qu'être d'accord pour l'argument de la disponibilité décalé des nouvelles fonctionalités quand on utilise un framework alternatif. Mais en face, il y a parfois l'argument d'une programation plus simple et/ou plus rapide : ça s'est déjà vu qu'un framework alternatif propose des fonctionalités évolués qu'on est obligé de recoder soit même avec le framework officiel. Entre les deux mon coeur balance. ;)
avatar Anonyme (non vérifié) | 
Donc ça veut dire que pour cette solution c'est mort ? http://www.appcelerator.com/
avatar thierry61 | 
Dans le style "multi-plate-forme foireux", on peut citer aussi Microsoft d'une certaine époque. Qui se souvient du désastreux Office 4 pour Mac (c'était il y a longtemps) ? c'était l'époque où Microsoft ne jurait que par sa stratégie de code commun à windows et Mac. Résultat des courses, ils avaient du faire leur plus plates excuses aux utilisateurs Mac pour leur mauvais portage... Quant au "dirigisme" d'Apple, Je ne le voie pas tellement différent de celui d'un donneur d'ordre de l'industrie face à ses sous-traitants. Quand on est une PME souhaitant travailler avec un grand groupe industriel, mieux vaut se conformer aux préconisations (qualité, normes, protocoles d'échanges de données, etc etc,) imposé par le groupe en question. On peut même devoir se conformer aux choix progiciels du donneur d'ordre : Si l'on est une PME mécanique souhaitant travailler par ex avec Dassault, il est "plutôt" recommandé d'avoir ou d'acquérir des compétences en Catia. C'est pas très libéral tout ça, mais ça permet de standardiser et de fiabiliser les processus.
avatar omega2 | 
Thierry61 > Tu sais je ne pense pas qu'apple ai besoin de lire les sources des applis pour savoir si elles respectent les "qualité, normes, protocoles d'échanges de données, etc etc," qu'ils ont établis. Il ne me semble même pas qu'apple s'amuse à récupérer des bouts d'applis proposé sur le store pour l'intégrer à ses produits. Et pourtant apple choisit à ta place comment (dans quel langage) tu écris tes sources. En fait je ne vois pas trop le rapport entre Dassault et Apple vu que dans un cas les produits des sous-traitants font partie intégrante du produit final alors que pour l'autre les logiciels fait par les tiers ne sont intégré à aucun moment au produit final.
avatar iJack | 
@ Melaure Waouuuh ! Moi aussi je fais partie des gens de l'Apple II ! Ce fut mon premier système informatique (valeur 25000 francs à l'époque, soit quelque 3500 euros, sans disque dur), ceci en 1980, ce qui doit impressionner quelques uns dans ce forum, qui n'étaient pas encore nés ! Ce qui fait de nous (de moi en tout cas) des vétérans/dinosaures... Pour en revenir au sujet, ma boite fait des progiciels divers et variés, avec divers outils, mais elle se plie toujours aux règles du constructeur à un moment donné. Elles sont une garantie de bon fonctionnement. Elle n'en fait pas part à la presse si les conditions lui semblent désagréables... Je pense qu'il faut s'appeler Adobe pour se permettre de remettre en cause ce principe de base... On sent bien en effet une épreuve de force entre les deux sociétés. Pour Flash, j'ai un avis mitigé : je ne l'apprécie pas particulièrement, je m'en passe volontiers sur mon iPhone, mais ma fille est une spécialiste, et elle fait presque toute son activité professionnelle avec, alors :)) Pour le sujet évoqué, évidemment, on est dans un monde "mouvant" au possible, qui doit irriter les entreprises. Je pense donc qu'Apple "défend" ses deux joujoux et ne veut pas d'applications "génériques multi-plateformes" sans plus value sur sa plateforme. Pour BFM, je suis régulièrement sa chronique "L'atelier numérique" (abonnement podcast), et je puis affirmer que sa critique est plutôt largement positive ;)

Pages

CONNEXION UTILISATEUR