Bitcode - nieuwe technologie van Apple, die niemand vertelt
Makradar Van Technologie / / December 19, 2019
op WWDC 2015 er was een aantal spannende nieuwe producten die veel ontwikkelaars hebben gemist één van de grootste innovaties gepresenteerd door Apple, - Bitcode.
De sessie was gewijd aan Bitcode, een vertegenwoordiger van Apple Andreas Vendker zei Bitcode App Store zal toelaten om optimaliseren applicaties voor verschillende apparaten voorafgaand aan het laden van de gebruikers. Met andere woorden, zal de bestaande applicaties in de App Store staat om te profiteren van de nieuwe processors zonder zijn enige actie van de zijde van ontwikkelaars, in een volledig automatische modus, zonder de update en hergebruik publicatie.
In de praktijk betekent dit het volgende... Als Apple opeens meer nodig om hun steun voor de toepassing ervan te vernieuwen veranderen de architectuur van de processor in een bepaald apparaat, ontwikkelaars niet. Vanwege het feit dat de App Store zal automatisch opnieuw te compileren van de toepassing, zullen zij in staat vanaf de eerste dag te zijn aan het werk met de nieuwe processors, ongeacht of het gaat om de ontwikkelaars gehoord over hun uiterlijk of no.
Wat is Bitcode
Dit is een moeilijke vraag. Om deze vraag te beantwoorden, moet u zich bewust zijn van Low Level Virtual Machine (LLVM) - universeel systeem transformatie wordt gebruikt om bestaande code te converteren naar native code voor verschillende architecturen.
LLVM bestaat uit twee delen: frontend en backend. De eerste - een programmeertaal waarmee u uw toepassing, zoals Objective-C, Swift, Python of Ruby te maken. De tweede wordt gebruikt om de toepassing te native code, die een reeks instructies begrepen door de CPU afzonderlijk samen te stellen.
Bitcode is aldus bijzonder laag, de tussentaal die opnieuw compileren applicatie in een reeks instructies. Bitcode gebruikt LLVM, om de code van de applicatie te krijgen en over te dragen aan Bitcode. De technologie weet ook hoe je deze code om te zetten in een uitvoerbare toepassing, op basis van de vereiste set van instructies.
Simpel gezegd, zal het mogelijk Apple ondersteuning toe te voegen aan nieuwe architecturen in de backend App Store, die zal Bitcode, hoe u de aanvraag voor de nieuwe architectuur samen te stellen.
Apple is niet bang om de architectuur van processors te veranderen
Zoals de geschiedenis laat zien, Apple - een van de weinige bedrijven met succes te overleven de verandering van de architectuur in haar belangrijkste producten. Mac-lijn van computers heeft twee keer doorheen gegaan.
De belangrijkste verandering was de overgang naar de PowerPC-architectuur van Intel in 2005. Apple daalde van verouderde hardware-platform, waardoor ontwikkelaars nieuwe mogelijkheden en vooraf te waarschuwen hen.
kunnen we de overgang naar 64-bit architectuur van de recente ontwikkelingen te roepen in de iPhone twee jaar geleden. Vervolgens moesten de ontwikkelaars om hun applicaties opnieuw te compileren om toe te voegen aan hun 64-bit processor iPhone 5s. Met Bitcode ontwikkelaars niet langer nodig om hun applicaties ook na significante veranderingen in de berekening van de architectuur herwerken.
Als Apple plotseling verhuizen naar de nieuwe architectuur, bijvoorbeeld in de iPad Pro, dankzij Bitcode toepassingen van derden zal het nieuwe apparaat direct te ondersteunen na de release.
Deze nieuwe technologie is zeer belangrijk is, zal het mogelijk ontwikkelaars om gelijke tred met de tijd mee te houden bij de lancering van nieuwe apparaten of het wijzigen van de bestaande architectuur.
iOS-ontwikkelaar Caleb Davenport zegt dat Bitcode heeft zowel plussen en minnen. Apple is niet langer nodig om te wachten voor ontwikkelaars om bijgewerkte tools bieden om nieuwe apparaten te ondersteunen.
Ik vrees alleen dat mijn aanvraag kan worden samengesteld in configuraties die ik niet kan verifiëren dat op zijn beurt zal leiden tot fouten, die ik niet kan reproduceren.
Caleb Davenport wachtte op de verschijning van 64-bits apparaten aangeboden om uw toepassing te testen op de "echte" ijzer en pas daarna de juiste ondersteuning zijn in hem. In het geval van Bitcode, die automatisch compileert aanvragen voor nieuwe apparaten zonder de deelname van de ontwikkelaars kan weken duren voordat een ontwikkelaar koopt een nieuw apparaat voor het testen, terwijl gebruikers zijn verzoek zal gebruiken en om te gaan met mogelijke fouten.
Andere ontwikkelaars geloven anders. Dus, Sord Janssen ziet positief Apple innovaties omdat zij de hoeveelheid werk die hij moet uitvoeren om nieuwe apparaten te ondersteunen verminderen. Hij is van mening dat als Apple plotseling zou de overstap naar Intel-processors in de nieuwe iPhone, van zijn kant zou geen maatregelen vereist om ondersteuning voor apparaten op de dag van afgifte.
De andere ontwikkelaars Bitcode waarnemen een gemengde zegen. De technologie lijkt te zijn geweldig, maar het moet nog worden uitgezocht.
Het probleem is dat Apple voldoende informatie om ontwikkelaars niet voorziet. Ondanks het grote belang werd Bitcode zeer zorgvuldig vermeld op de WWDC, en zelfs van een aantal van de sessies uitgesloten. In toepassingen die closed-source bibliotheken, zoals CocoaPods, Bitcode geheel Het is niet wenselijk omdat deze fouten kan veroorzaken tijdens bibliotheek ontwikkelaars niet ondersteuning voor nieuwe architectuur.
Hoogst waarschijnlijk zal meer details dichter bij iOS 9 watchos exit en 2, maar nog steeds vreemd dat Apple is niet ontvangen volledige documentatie van Bitcode de WWDC, het evenement, dat deze ook de verlichting voor dergelijke verandert.
Ongeacht de architectuur in de toekomst
Medium gebruiker onder het pseudoniem Inertiële Lemon hij gelooftDat deze veranderingen aan te geven iets groter. Bitcode vereist in applicaties voor de Apple Watch, maar alleen aanbevolen voor iOS, maar zoals we weten, de huidige aanbevelingen voor de toekomst vaak ontwikkelen tot verplichte eisen.
Voor Apple Watch, betekent dit dat in de volgende generatie horloges kan worden gebruikt totaal verschillende processors, maar voor ontwikkelaars het zal geen enkel verschil maken - App Store automatisch uw bestaande applicaties om nieuwe aan te passen inrichting.
Daarnaast kan Bitcode een mogelijke verandering in de MAC architectuur signaal. Bob Mansfield, die van het executive team werd verwijderd aan het hoofd van "speciale projecten" is een van de kandidaten om te werken op dit punt. Apple maakt al processors voor iOS-apparaten, zodat de overgang naar de chips van de eigen productie op de Mac niet helemaal zo gek uitzien.
Er is slechts een struikelblok - Bitcode wordt niet ondersteund in toepassingen voor OS X. Misschien is het sleutelwoord hier is "nog", omdat de man die de technologie vertegenwoordigd op de WWDC, het werken in een team OS X.
Dergelijke veranderingen zou betekenen voor Apple de mogelijkheid om Mac te gaan met de Intel-architectuur ARM zonder de noodzaak om het kader van de bestaande toepassingen van derden aan te passen. In dit geval zal het bedrijf zich te ontdoen van de afhankelijkheid van Intel, het moeilijk hebben met de tijdige levering van chips, waardoor de uitgestelde introductie van nieuwe Apple-producten.
We moeten begrijpen dat dit een langdurig proces is en niet noodzakelijkerwijs het signaal Bitcode van dergelijke veranderingen in de nabije toekomst. Maar hoe dan ook, Bitcode maken Apple flexibeler voor radicale wijzigingen in de hardware om hun apparaten. Ook in de toekomst zal het bedrijf niet aan de ontwikkelaars te informeren over de veranderingen die zal toelaten om de informatie over de nieuwe apparaten in het geheim tot aan de presentatie te houden.
Ontwikkelaars verminderd werken aan de aanpassing van de aanvragen voor de volgende grote updates. In feite zijn ze over het algemeen niet moeten doen, hoewel velen vermoeden dat het proces zal niet zo gemakkelijk zijn.
Bitcode moet een kritieke massa bereiken voordat het veranderen van de architectuur zal een eenvoudig proces. Maar Apple is het spelen "in de schulden" en geeft een enthousiaste ontwikkelaars een kans om te bereiden op wat onvermijdelijk zal gebeuren in de toekomst.
via