Code binaire - nouvelle technologie d'Apple, que personne ne dit
Makradar De La Technologie / / December 19, 2019
sur WWDC 2015 il y avait un certain nombre de nouveaux produits que de nombreux développeurs ont manqué l'une des plus grandes innovations présentées par Apple, - code binaire.
La session a été consacrée à code binaire, un représentant d'Apple Andreas Vendker App Store dit code binaire permettra aux applications optimisées pour les différents périphériques avant le chargement des utilisateurs. En d'autres termes, les applications existantes dans l'App Store pourront tirer parti des nouveaux processeurs sans toute action de la part des développeurs, dans un mode entièrement automatique, sans la mise à jour et re publication.
En pratique, cela signifie ce qui suit... Si Apple changent soudainement l'architecture du processeur dans un dispositif particulier, les développeurs ne plus besoin de renouveler leur soutien à son application. En raison du fait que l'App Store sera recompiler automatiquement l'application, ils seront en mesure d'un jour de travailler avec les nouveaux processeurs, que ce sont les développeurs ont entendu parler de leur apparence ou pas.
Qu'est-ce code binaire
Ceci est une question difficile. Pour répondre à cette question, vous devriez être au courant Bas niveau machine virtuelle (LLVM) - transformation du système universel qui est utilisé pour convertir le code existant en code natif pour différentes architectures.
LLVM est composé de deux parties: frontend et backend. Le premier - un langage de programmation qui vous permet de créer votre application, comme Objective-C, Swift, Python ou Ruby. La seconde est utilisée pour compiler l'application en code natif, qui est un ensemble d'instructions comprises par le CPU séparément pris.
Code binaire est donc couche particulière, le langage intermédiaire qui peut re-compiler l'application dans un ensemble d'instructions. LLVM utilise code binaire, pour obtenir le code de l'application et de le transférer à code binaire. La technologie sait aussi comment transformer ce code dans une application exécutable, basé sur le jeu d'instructions nécessaires.
Autrement dit, il permettra à Apple d'ajouter le support de nouvelles architectures dans le backend App Store, qui code binaire, comment compiler l'application de la nouvelle architecture.
Apple n'a pas peur de changer l'architecture des processeurs
Comme le montre l'histoire, Apple - l'une des rares entreprises à survivre avec succès le changement de l'architecture dans ses produits clés. ligne d'ordinateurs Mac est passé par deux fois.
Le changement le plus important a été la transition vers l'architecture PowerPC à Intel en 2005. Apple a refusé de plate-forme de matériel obsolète, offrant aux développeurs de nouvelles possibilités et les pré-garde.
nous pouvons rappeler la transition vers l'architecture 64 bits des développements récents dans l'iPhone il y a deux ans. Ensuite, les développeurs ont dû recompiler leurs applications pour ajouter à leur iPhone processeur 64 bits 5 s. Avec les développeurs ne ont plus besoin de code binaire de retravailler leurs applications même après des changements importants dans l'architecture informatique.
Si Apple se déplacer soudainement à la nouvelle architecture, par exemple, dans les applications tierces iPad Pro, grâce soutiendront le code binaire nouvel appareil immédiatement après sa sortie.
Cette nouvelle technologie est très importante, il permettra aux développeurs de suivre le rythme avec le temps lors du lancement de nouveaux appareils ou de modifier l'architecture existante.
iOS développeur Caleb dit que Davenport a des points positifs code binaire et les inconvénients. Apple n'est plus nécessaire d'attendre pour les développeurs de fournir des outils mis à jour pour soutenir les nouveaux appareils.
Je crains seulement que ma demande peut être compilé dans des configurations que je ne peux pas vérifier que, à son tour, conduire à des erreurs, que je ne peux pas reproduire.
Caleb Davenport attendant l'apparition de dispositifs 64 bits proposés pour tester votre application sur le fer « réel » et seulement ajouter le soutien approprié en lui. Dans le cas de code binaire, qui compile automatiquement les demandes de nouveaux appareils sans la participation des développeurs peut être semaines avant un développeur achète un nouvel appareil pour le test, tandis que les utilisateurs utiliseront son application et de traiter possible erreurs.
D'autres développeurs pensent autrement. Ainsi, Sord Janssen perçoit positivement les innovations d'Apple, car ils réduisent la quantité de travail qu'il doit effectuer pour soutenir les nouveaux appareils. Il croit que si Apple soudainement commuté vers les processeurs Intel dans le nouvel iPhone, de sa part ne nécessiterait aucune mesure de fournir un soutien pour les appareils le jour de la libération.
Les autres développeurs perçoivent une bénédiction de code binaire mixte. La technologie semble être incroyable, mais il reste à régler.
Le problème est que Apple ne fournit pas suffisamment d'informations pour les développeurs. En dépit de sa grande importance, a été très soigneusement code binaire mentionné à la WWDC, et même exclu de certaines sessions. Dans les applications qui utilisent des bibliothèques de source fermée, comme CocoaPods, tout code binaire Il n'est pas souhaitable car il peut provoquer des erreurs alors que les développeurs ajoutent bibliothèque ne prend pas en charge de nouvelles l'architecture.
Très probablement, plus de détails seront plus proches de iOS 9 sortie watchos et 2, mais toujours étrange que Apple n'est pas fourni une documentation complète de code binaire à la WWDC, l'événement, qui a également créé l'éclairage d'une telle les modifications.
Quelle que soit l'architecture à l'avenir
utilisateur moyen sous le pseudonyme inertielle Lemon il croitQue ces changements indiquent quelque chose de plus. Code binaire requis dans les applications pour la montre Apple, mais seulement recommandé pour iOS, mais comme nous le savons, les recommandations actuelles pour l'avenir se développent souvent dans les exigences obligatoires.
Apple Watch, cela signifie que dans les montres de nouvelle génération peuvent être utilisés processeurs complètement différents, mais pour les développeurs, il ne fait aucune différence - App Store ajustera automatiquement vos applications existantes à la nouvelle appareil.
De plus, peut signaler un code binaire éventuel changement dans l'architecture Mac. Bob Mansfield, qui a été retiré de l'équipe de direction à la tête des « projets spéciaux » est l'un des candidats au travail à ce sujet. Apple fait déjà des processeurs pour les appareils iOS, de sorte que la transition vers les puces de sa propre production sur le Mac ne semble pas si fou.
Il n'y a qu'une pierre d'achoppement - n'est pas pris en charge de code binaire dans les applications pour OS X. Peut-être le mot clé ici est « encore » parce que l'homme qui représentait la technologie à la WWDC, travaillant dans une équipe OS X.
De tels changements signifierait pour Apple l'occasion d'aller Mac avec l'architecture Intel ARM sans la nécessité d'adapter le cadre des applications tierces existantes. Dans ce cas, la société va se débarrasser de la dépendance d'Intel, ont des difficultés avec la livraison en temps opportun des puces, en raison de laquelle la libération reportée de nouveaux produits d'Apple.
Nous devons comprendre que ce processus est long et ne signale pas nécessairement de ces changements de code binaire dans un proche avenir. Mais, de toute façon, faire d'Apple plus de code binaire flexible pour les changements radicaux du matériel à leurs appareils. A l'avenir la société ne doit en informer les développeurs au sujet des changements qui lui permettront de garder les informations sur les nouveaux appareils en secret jusqu'à la présentation.
Les développeurs diminué travail sur l'adaptation des applications pour les grandes mises à jour suivantes. En fait, ils ne sont généralement pas besoin de faire, bien que beaucoup soupçonnent que le processus ne sera pas si facile.
Devrait atteindre un code binaire masse critique avant de changer l'architecture sera un processus simple. Mais Apple joue « la dette » et donne un développeurs enthousiastes une chance de se préparer à ce qui va inévitablement se produire dans l'avenir.
via