Bitcode - Apples neue Technologie, die niemand erzählt
Makradar Technologie / / December 19, 2019
auf WWDC 2015 es war so eine Reihe von spannenden neuen Produkten, dass viele Entwickler eine der größten Innovationen von Apple präsentiert verpasst haben, - Bitcode.
Die Sitzung Bitcode gewidmet war, ein Apple-Vertreter Andreas Vendker sagte Bitcode App Store zu optimieren Anwendungen für verschiedene Geräte ermöglichen wird, bevor die Benutzer laden. Mit anderen Worten, werden die vorhandenen Anwendungen im App Store können die Vorteile der neuen Prozessoren nutzen, ohne jede Aktion auf Seiten der Entwickler, in einem vollautomatischen Modus, ohne die Aktualisierung und Wieder Veröffentlichung.
In der Praxis bedeutet dies folgende... Wenn Apple plötzlich die Architektur des Prozessors ändern, in einem bestimmten Gerät, Entwickler nicht mehr benötigen, um ihre Unterstützung für ihre Anwendung zu erneuern. Aufgrund der Tatsache, dass das App Store wird die Anwendung automatisch neu kompiliert, werden sie ab dem ersten Tag der Lage sein, mit den neuen Prozessoren zu arbeiten, unabhängig davon, ob es sich um die Entwickler über ihr Aussehen gehört oder Nein.
Was ist Bitcode
Dies ist eine schwierige Frage. Um diese Frage zu beantworten, sollten Sie sich bewusst sein, Low Level Virtual Machine (LLVM) - Universal-Systemtransformation, die verwendet wird, vorhandenen Code zu nativen Code für verschiedene Architekturen zu konvertieren.
LLVM besteht aus zwei Teilen: Frontend und Backend. Die erste - eine Programmiersprache, die Sie erstellen Ihre Anwendung, wie Objective-C, Swift, Python oder Ruby erlaubt. Die zweite wird verwendet, um die Anwendung zu nativen Code zu kompilieren, dass ein Satz von Anweisungen, die von der CPU verstanden getrennt genommen.
Bitcode ist somit eigentümliche Schicht, wobei die Zwischensprache, die die Anwendung in einen Satz von Anweisungen neu kompilieren. Bitcode nutzt LLVM, den Code der Anwendung zu erhalten und sie zu Bitcode übertragen. Die Technologie auch weiß, wie man diesen Code in eine ausführbare Anwendung zu aktivieren, basierend auf der erforderlichen Menge von Anweisungen.
Einfach gesagt, wird es ermöglichen, Apple Support für neue Architekturen im Backend App Store, hinzufügen, das wird Bitcode, wie die Anwendung für die neue Architektur zu kompilieren.
Apple ist nicht Angst, die Architektur der Prozessoren zu ändern
Wie die Geschichte zeigt, Apfel - eines der wenigen Unternehmen, um erfolgreich die Änderung der Architektur in seiner Schlüsselprodukte zu überleben. Mac Linie von Computern hat zweimal durchgegangen.
Die wichtigste Änderung war der Übergang auf die PowerPC-Architektur von Intel im Jahr 2005. Apple sank von veralteter Hardware-Plattform, die Entwicklern neue Möglichkeiten zu geben und fertig warnen sie.
wir können vor dem Übergang zu 64-Bit-Architektur der jüngsten Entwicklungen in den iPhone 2 Jahren erinnern. Dann mussten die Entwickler ihre Anwendungen neu kompilieren, um ihre 64-Bit-Prozessor iPhone 5s hinzuzufügen. Mit Bitcode Entwicklern nicht mehr benötigen, um ihre Anwendungen überarbeiten auch nach wesentlichen Änderungen in der Architektur zu berechnen.
Wenn plötzlich von Apple auf die neue Architektur bewegen, zum Beispiel in der iPad Pro dank Bitcode Anwendungen von Drittanbietern werden das neue Gerät sofort nach seiner Veröffentlichung unterstützen.
Diese neue Technologie ist sehr wichtig, wird es Entwicklern ermöglichen, um mit der Zeit Schritt halten, wenn neue Geräte starten oder die bestehende Architektur zu verändern.
iOS-Entwickler Caleb Davenport sagt, dass Bitcode beide Vor- und Nachteile hat. Apple ist nicht mehr notwendig, für Entwickler zu warten aktualisierten Tools, um neue Geräte zu unterstützen.
Ich fürchte nur, dass meine Anwendung kann in Konfigurationen zusammengestellt wird, dass ich nicht das wiederum überprüfen kann, zu Fehlern führen wird, die ich nicht reproduzieren kann.
Caleb Davenport wartete auf das Erscheinen von 64-Bit-Geräten im Angebote Ihre Anwendung auf den „echten“ Eisen zu testen und erst dann die entsprechende Unterstützung in ihm hinzuzufügen. Im Fall von Bitcode, die automatisch Anwendungen für neue Geräte ohne die Beteiligung von Entwicklern Wochen können kompilieren vor ein Entwickler kauft ein neues Gerät für die Prüfung, während der Benutzer seine Anwendung verwenden und mit möglichem beschäftigen Fehler.
Andere Entwickler glauben, anders. So sieht Sord Janssen positiv Apple-Innovationen, wie sie die Menge der Arbeit zu verringern, dass er neue Geräte unterstützen auszuführen hat. Er glaubt, dass, wenn Apple plötzlich auf Intel-Prozessoren im neuen iPhone eingeschaltet würde, seinerseits keine Maßnahmen erfordern würde Release-Tag bietet Unterstützung für Geräte auf.
Die anderen Entwickler Bitcode wahrnehmen ein zweischneidiges Schwert. Die Technologie scheint erstaunlich zu sein, aber es bleibt aussortiert werden.
Das Problem ist, dass Apple nicht genügend Informationen für Entwickler zur Verfügung stellen. Trotz seiner großen Bedeutung wurde Bitcode sehr sorgfältig auf der WWDC erwähnt, und sogar von einigen der Sitzungen ausgeschlossen. In Anwendungen, die Closed-Source-Bibliotheken, wie CocoaPods verwenden, Bitcode insgesamt Es ist nicht wünschenswert, da sie zu Fehlern führen kann, während Bibliothek Entwickler fügen Sie nicht die Unterstützung für neue Architektur.
Wahrscheinlich werden mehr Details näher an iOS 9 watchOS Ausgang und 2, aber immer noch seltsam, dass Apple ist nicht vollständige Dokumentation der Bitcode auf der WWDC vorgesehen, die Veranstaltung, die auch die Beleuchtung für eine solche erstellt ändert.
Unabhängig von Architektur in der Zukunft
Medium User unter dem Pseudonym Inertial Lemon er glaubt,Dass diese Veränderungen zeigen etwas größer. Bitcode erforderlich bei Anwendungen für die Apple-Uhr, aber nur für iOS zu empfehlen, aber wie wir wissen, entwickeln die aktuellen Empfehlungen für die Zukunft oft in verbindliche Anforderungen.
Für Apple-Uhr, bedeutet dies, dass in der nächsten Generation Uhren können völlig andere Prozessoren verwendet werden, aber für Entwickler wird es keinen Unterschied machen - App Store wird Ihre bestehende Anwendungen neu automatisch anpassen Gerät.
Darüber hinaus signalisiert Bitcode kann eine mögliche Änderung in der Mac-Architektur. Bob Mansfield, der aus dem Führungsteam wurde entfernt „Sonderprojekte“ zu leiten ist einer der Kandidaten an der Arbeit zu diesem Thema. Apple macht bereits Prozessoren für iOS-Geräte, so dass der Übergang zu Chips aus eigener Produktion auf dem Mac nicht ganz sieht so verrückt.
Es gibt nur ein Stein des Anstoßes - Bitcode nicht in Anwendungen für OS X nicht unterstützt Vielleicht hier das Schlüsselwort ist „noch“, weil der Mann, der die Technologie auf der WWDC vertreten, in einem Team O X. Arbeits
Solche Veränderungen würden die Möglichkeit für Apple bedeuten Mac zu gehen mit der Intel-Architektur ARM ohne die Notwendigkeit, den Rahmen der bestehenden Anwendungen von Drittanbietern anzupassen. In diesem Fall wird das Unternehmen der Abhängigkeit von Intel loszuwerden, haben Schwierigkeiten mit der rechtzeitigen Lieferung von Chips, wegen denen die verzögerten Freisetzung von neuen Apple-Produkten.
Wir müssen verstehen, dass dies ein langwieriger Prozess ist und nicht notwendigerweise das Signal Bitcode solcher Veränderungen in der nahen Zukunft. Aber wie auch immer, Bitcode macht Apple-flexibler für radikale Änderungen an der Hardware, um ihre Geräte. Auch in Zukunft wird das Unternehmen hat nicht die Entwickler über die Änderungen zu informieren, die es erlauben, die Informationen über die neuen Geräte in geheim zu halten, bis die Präsentation.
Entwickler vermindert Arbeit über die Anpassung von Anwendungen für das folgende große Updates. In der Tat, müssen sie in der Regel nicht zu tun, obwohl viele vermuten, dass der Prozess so nicht einfach sein wird.
Bitcode sollte eine kritische Masse, bevor die Architektur ändern wird ein einfacher Prozess erreichen. Aber Apple spielt „in der Schuld“ und gibt einem begeisterten Entwickler eine Chance auf dem vorzubereiten, was unweigerlich in der Zukunft geschehen.
über