Logo fr.androidermagazine.com
Logo fr.androidermagazine.com

Qu'est-ce que la fourche est une "fourchette"?

Table des matières:

Anonim

Les deux derniers jours, vous avez probablement entendu le mot "fourchette" plus de fois que vous ne pouvez en compter. C'est ce que Facebook a fait (bien que ce ne soit pas le cas), Amazon l'a fait, l'équipe de Chrome a tout fait, et ainsi de suite. Alors que tout le monde parle de qui bricole qui, personne ne se donne la peine d’expliquer exactement ce que c’est que crier, et pourquoi tant de gens ont un problème avec cela.

Forking, ou fracassant, a eu une mauvaise réputation il y a une vingtaine d'années, car il avait tendance à diviser les développeurs en factions distinctes qui ne partageaient pas le code. À l’époque de divisions telles que Gnu-Emacs / XEmacs, c’était important, car il n’y avait presque pas autant de personnes capables de travailler sur ces grands projets à source ouverte, et le fait d’avoir deux branches ou fourchettes prenait plus de temps à ajouter. fonctionnalités et résoudre les problèmes des deux côtés. Dans certains cas, cela se produit toujours, j'en suis sûr, mais la plupart des développeurs sont en mesure de combler le vide laissé par ceux qui ont une vision distincte et qui jetteront le code pour le suivre. Mais certaines personnes n'oublient jamais et la stigmatisation liée aux forkers est transmise. Cela dit, nous ne pouvons pas prétendre que de mauvaises fourchettes ne se produisent pas. Nous devons juste regarder au-delà de la loi elle-même avant de prendre nos décisions.

Je sais que quelques-uns d'entre vous savent ce que tout cela signifie et essaient simplement d'ignorer tout le bruit, mais pour beaucoup, c'est déroutant. Essayons de résoudre ce problème.

Qu'est-ce qu'un logiciel fork et comment cela affecte-t-il Android?

Pensez à Android comme à un tas de code. Il existe deux parties: les parties à code source ouvert, qui est ce qu'est AOSP, et les parties propriétaires que Google garde pour lui-même. Si quelqu'un souhaite utiliser Google Android et y apporter des modifications, il télécharge le code à utiliser comme base et forme son propre projet avec celui-ci. Samsung le fait, HTC le fait et votre développeur ROM préféré pourrait le faire. Chaque fois que quelqu'un prend le code existant et démarre un projet indépendant (c'est une distinction importante) basé sur celui-ci, il crée un fork. De nombreux développeurs vont extraire du code, en éditer des portions, puis renvoyer leurs modifications en amont dans leur intégralité, ce qui n'est pas une fourchette.

Amazon a soulevé pas mal de sourcils lorsqu'il a demandé à Android de créer le système d'exploitation de la gamme Kindle Fire. Mais du côté open-source, ce n'était pas différent de ce que Motorola a fait avec Cliq, ou HTC avec le Hero - ou ce que Samsung fait maintenant pour les appareils de la série Galaxy. C’est ainsi que fonctionnent de grands projets open source. Tous les fournisseurs (sauf peut-être Amazon) utilisent les mêmes bases, signalant probablement des bugs et soumettant les correctifs en amont, afin de créer leur propre version du produit final.

Facebook n'a pas développé Android. Il a utilisé le système d'intention Android (une façon dont les applications peuvent fonctionner entre elles et partager sur Android) et a créé une grosse application qui inclut en outre une maison de substitution. Dans leur bac à sable, ils peuvent faire ce qu'ils veulent ou doivent faire et, tant qu'ils utilisent les intentions d'Android, ils peuvent communiquer avec le reste du système. Si vous voulez être technique, HTC a peut-être demandé à Android de mieux fonctionner avec Facebook Home dans le HTC First, car il mentionne certaines modifications apportées pour une meilleure compatibilité. Nous en saurons plus sur ce qu’ils ont fait lorsque le téléphone a été distribué.

Dans tous les cas, demander du code n'est pas toujours une mauvaise chose et ne mérite pas toute la négativité que vous entendez lorsque quelqu'un le mentionne. Stephen O'Grady, analyste du secteur, résume bien ce que je pense:

Il convient toutefois de mentionner que, du point de vue du client, les forks ou les variantes ne sont pas universellement mauvais. Bien que les différentes versions d'Android puissent représenter des décisions de conception malheureuses de la part des fournisseurs qui en sont responsables, les applications sont dans la très grande majorité des cas compatibles entre appareils, en supposant que leur version est équivalente.

Avoir des applications compatibles d'un appareil à l'autre est la raison pour laquelle Android a été conçu. Le code Forking ne fait pas que cela ne se produise pas. Mais d'autres choses font.

L'autre côté de forger Android

En Chine, vous pouvez acheter un téléphone auprès d'un opérateur qui utilise Android, mais ne dispose pas de services Google. Tout comme le Kindle Fire, il est construit à partir du code Android de Google (parfois non modifié) mais n'a pas été soumis et n'a pas été testé pour être compatible avec Google et inclut des éléments comme Gmail ou Google Play. Ces applications et les fichiers système assortis dont ils ont besoin pour s'exécuter ne sont pas des logiciels à source ouverte. Vous ne pouvez pas les inclure sans l'autorisation de Google.

Autre qu'une expérience utilisateur "différente" (je ne vais pas dire que c'est "pire", mais différente) sans ces applications, elles peuvent ressembler à un téléphone Android que vous achetez chez Verizon ou AT & T. Ils peuvent également avoir l’air très différent, comme l’a fait Amazon. Mais rien de tout cela vient du fait qu’ils ont lancé le code Android de Google: c’était une décision délibérée de ne pas créer un appareil Google "certifié". Google présente Android comme une plate-forme d'applications et un ensemble de cadres d'applications. Ne pas inclure les applications de service de Google n'en fait pas moins une plate-forme d'applications. Bien entendu, nous imaginons que Google préférerait que tous les appareils Android et ceux basés sur Android utilisent les services de Google, mais il n’existe pas de règle stricte qui dit qu'un fournisseur doit le faire.

Fabriquer des appareils sans les applications de Google n'a rien à voir avec falsifier Android. Cela peut rendre les appareils moins souhaitables, ou un jour, le téléphone Android ultime pourrait être construit sans les applications de Google, mais cela peut se produire sans avoir à coder. Nous sommes tous coupables d'avoir concilié les deux choses, mais nous ne devrions pas le faire.

La fourchette est juste une chose

Il n’est pas bon que les constructeurs d’Android mettent à disposition Android et travaillent sur leur propre projet avec le code. Ce n’est pas mal que les constructeurs OEM déballent Android et travaillent sur leur propre projet avec le code. C'est juste une chose qu'ils font tous.

Nexus fanclub côté, vous ne pouvez pas me dire que Samsung ou HTC a ruiné Android en forçant le code et en le construisant. Ils ont ajouté des fonctionnalités tout en préservant la compatibilité de toutes les fonctionnalités, de sorte que les applications conçues pour "Android" respectent les consignes du développeur. Et ils fournissent systématiquement des appareils que les gens veulent acheter. Je pense que c'est exactement ce que Google avait en tête pour Android. Ils savaient que, éventuellement, quelqu'un irait un peu plus loin et créerait quelque chose qui ne serait pas entièrement compatible avec "Android", mais ce n'est pas grave. Les utilisateurs de ces appareils sont toujours sur Internet et les applications Web mobiles de Google sont plutôt correctes.

Espérons que maintenant vous en savez un peu plus sur ce que les gens veulent dire quand ils parlent de fork Android.