Hvad Apples Xcode Cloud betyder for fremtidens apps

Salgsfremmende logo for WWDC 2023.
Denne historie er en del af vores komplette Apple WWDC-dækning

For forbrugere og eksterne iagttagere, Apples Worldwide Developers Conference (WWDC) er altid en chance for at se, hvad der ligger i vente, når de næste versioner af dets operativsystemer kommer til deres enheder. For udviklere handler det dog om at lære, hvad Apple laver under motorhjelmen. Ved årets begivenhed afslørede Apple Xcode Cloud, en ny funktion i sin Xcode-udviklingsapp, som Apple mener vil gøre livet lettere og enklere for app-byggere.

Indhold

  • Hvad er Xcode Cloud?
  • 'Et langsigtet projekt'
  • At sætte det i praksis
  • Prisproblemet
  • En funktion med reelt potentiale

Anbefalede videoer

Folk hos Apple fortalte os, at de var utrolig begejstrede for Xcode Cloud - og skuffede over, at udviklere ikke kunne være på stedet, når det var annonceret ved virksomhedens online-begivenhed - og en hurtig gennemgang af Twittersphere bringer et væld af udviklere frem, der er svimlende af forventninger til det nye funktion.

Men hvad er Xcode Cloud præcist, og hvorfor er Apple overbevist om, at det er så stor en sag? For at finde ud af det satte vi os ned med både ingeniører hos Apple og de udviklere, det er målrettet mod for at se, hvordan Xcode Cloud kan påvirke deres arbejde, for at høre eventuelle bekymringer, de måtte have, og drille ud af, hvad det kan betyde for fremtidens apps.

Relaterede

  • Jeg troede, jeg ville hade Apples VR-headset, men jeg tog fejl
  • Her er grunden til, at Apples M3 MacBook-chip kan ødelægge sine rivaler
  • Apples Reality Pro-headset kan lanceres hurtigere end nogen havde forventet

Hvad er Xcode Cloud?

Et dias fra WWDC 2021, der viser Xcode Cloud

Lad os starte med det grundlæggende. For at lave apps til Apple-platforme bruger udviklere en Apple-skabt Mac-app kaldet Xcode. Det har eksisteret siden 2003 og er stadig et af de vigtigste stykker software i Apples katalog. Xcode Cloud er en af ​​de største opdateringer til Xcode i årevis, og bringer ny funktionalitet, som mange udviklere måtte forlade Xcode for tidligere.

Apple positionerer Xcode Cloud som et værktøj, der sætter tidligere komplekse værktøjer inden for rækkevidde af alle udviklere. Jeg spurgte Wiley Hodges, Product Marketing Director for Tools and Technologies hos Apple, hvad de hørte fra udviklere, der førte til skabelsen af ​​Xcode Cloud.

"Vi har set, at der er... opgaver som at distribuere apps til betatestere, som at administrere feedback og nedbrudsrapporter, der er virkelig afgørende for at bygge fantastiske apps," sagde Hodges. "Og vi har set, at flere og flere af vores udviklere har været interesseret i kontinuerlig integration og brug denne automatiserede opbygning og automatiserede testproces for konstant at verificere kvaliteten af ​​software, mens den er i gang bygget."

Det er præcis de problemer, Xcode Cloud er beregnet til at løse.

Xcode Cloud lader udviklere køre flere automatiserede test på én gang, bruger kontinuerlig integration (CI), så app-koden hurtigt kan gentages og opdateres. Det forenkler også distributionen af ​​app-builds til betatestere og lader udviklere indhente feedback. Det kan bygge apps i skyen i stedet for på en Mac for at reducere belastningen og giver mulighed for oprettelse af avancerede arbejdsgange, der automatisk starter og stopper afhængigt af indstillede forhold.

"Vi ønskede at bringe disse værktøjer og tjenester inden for rækkevidde af alle vores udviklere, for lige nu har det været noget, jeg tror var mere på det avancerede niveau for udviklere at få dette sat op og køre som en del af deres proces,” Hodges forklaret.

Det lyder lovende nok. Men hvad mener faktiske udviklere?

'Et langsigtet projekt'

Xcode kører på en Apple MacBook Pro

At sætte disse værktøjer i centrum er noget, flere udviklere fortalte os, var en nøgleattraktion ved Xcode Cloud. Nu hvor tidligere ret specialiserede kapaciteter er blevet integreret i det vigtigste værktøj, de bruger til bygge apps, er der meget mindre behov for at finde tredjepartsalternativer og tilføje ekstra trin til deres arbejdsgange.

Denys Telezhkin, en softwareingeniør hos ClearVPN, opsummerede denne følelse i et interview med Digital Trends.

"Jeg var meget interesseret [i Xcode Cloud], da der har været en række problemer med forskellige CI'er," fortalte han mig. "For eksempel er Microsoft Azure svært at konfigurere, GitHub Actions er dyrt, og så videre."

Med alt integreret i Xcode Cloud kan det blive unødvendigt at læne sig op af upålidelige alternativer. Selvfølgelig vil Apple med glæde styre udviklere væk fra sine rivaler.

Men den vigtigste drivkraft, insisterer Hodges, var noget andet: "Motivationen for Xcode Cloud kom fra vores observation at mens der var en gruppe dedikerede Xcode Server-brugere, implementerede de fleste udviklere stadig ikke kontinuerligt integration. Vi begyndte at se på de forhindringer, der forhindrede adoption og kom til den konklusion, at et cloud-hostet CI-tilbud ville være den bedste måde at få bred anvendelse af CI som en praksis, især med mindre udviklere, for hvem opsætning og styring af dedikerede build-servere var en større udfordring."

"At se værktøjer og tjenester som Xcode Cloud integreret direkte i udviklerplatformen gjorde os begejstrede."

For udviklere handler det dog om mere end bare CI. Scott Olechowski, Chief Product Officer og medstifter af Plex, fik prøvet en betaversion af Xcode Cloud før Apples WWDC-annoncering. Han fortalte mig, at de potentielle fordele er vidtrækkende.

"At se værktøjer og tjenester som Xcode Cloud integreret direkte i udviklerplatformen har gjort os begejstrede siden det burde virkelig hjælpe os med at være mere effektive i vores udvikling, QA [kvalitetssikring] og frigivelse indsats.”

En del af den øgede effektivitet vil sandsynligvis komme i Xcode Clouds samarbejdsværktøjer. Hvert teammedlem kan se projektændringer fra deres kollegaer, og meddelelser kan sendes, når en kodeopdatering udgives. Timingen er lovende i betragtning af den måde, den igangværende pandemi fysisk har adskilt hold over hele kloden. Men det var også tilfældigt, sagde Hodges.

"Virkeligheden er, at vi har været på denne vej i et stykke tid, bogstaveligt talt år og år, og så jeg tror, ​​at timingen kan være tilfældig i den forbindelse. Dette er bestemt et langsigtet projekt, der var godt i gang før vores uheldige nylige begivenheder."

At sætte det i praksis

Xcode kører på MacOS Monterey ved Apples WWDC 2021-begivenhed

Hvis der er én ting, Apple er gode til, er det at opbygge et økosystem af apps og produkter, der alle arbejder sammen. Ikke overraskende afspejler Xcode Cloud det - det forbinder til TestFlight for beta-testere, lader dig køre builds på flere virtuelle Apple-enheder parallelt, spiller godt med App Store Connect og mere. For mange udviklere kan denne integration have en stærk positiv indvirkning på deres arbejde.

Vitalii Budnik, en softwareingeniør hos MacPaws Setapp, fortalte mig at have alt på ét sted vil betyde mere tid brugt på faktisk kodning og mindre tid på at jonglere med flere værktøjer og muligheder. For Budniks MacPaw-kollega, Bohdan Mihiliev fra Gemini Photos, vil app-distributionsprocessen være hurtigere og glattere, end den er i øjeblikket.

Apple ser Xcode Cloud som noget, der kan forbedre livet for store og små udviklere. Alison Tracey, en ledende udvikler på Xcode Cloud hos Apple, understregede den måde, Xcode Cloud også udjævner spillefeltet for mindre udviklere.

"Med den række af muligheder, der findes for dig i konfigurationsoplevelsen, når du opsætter dine arbejdsgange, kan du virkelig understøtte behovene hos en lille udvikler eller nogen, der er en lille udviklingsbutik eller nogen, der er ny til kontinuerlig integration, helt op til mere af den avancerede kraft brugere."

Dette spænder fra en simpel fire-trins onboarding-proces til integration Mac-apps og værktøjer som Slack og dashboards takket være indbyggede API'er.

Prisproblemet

Et dias fra WWDC 2021, der viser Xcode, der kører på en iMac og MacBook Pro

Det hele er dog ikke gnidningsfrit. Apple nægtede at afsløre prisoplysninger for Xcode Cloud på WWDC og sagde, at flere oplysninger ikke ville være tilgængelige før efteråret. Mange udviklere, jeg talte med, var bekymrede over det i en eller anden grad, og det ser ud til at lægge en lille dæmper på den begejstring, som mange udviklere føler over Xcode Clouds potentiale.

Der er også blevet rejst spørgsmål om Xcode Clouds værdi for udviklerteams, der skaber apps til både Apple- og ikke-Apple-platforme, da Xcode kun kan køres på Mac. Jeg sendte dette til Alex Stevenson-Price, Engineering Manager hos Plex, da Plex har apps til Mac, Windows, Linux, Android, iOS og mange andre systemer. Han fortalte mig, at Plexs forskellige apps er bygget af forskellige teams ved hjælp af forskellige værktøjer, så selvom det er en fantastisk nyhed streng i Apple-holdets bue, vil det ikke være til megen nytte for ikke-Apple-holdene, fordi de ikke vil bruge Xcode alligevel.

Hvis du ønsker at få Xcode Clouds fordele, når du bygger en Android-app, er du uheldig.

Det bør selvfølgelig ikke komme som en overraskelse, at Apple har begrænset interesse i at levere værktøjer til rivaliserende økosystemer. Hvis du ønsker at få Xcode Clouds fordele, når du bygger en Android-app, er du ude af held, men Xcode har altid været begrænset (Apple kan sige fokuseret) på den måde. Det kan give problemer for udviklere, der har den samme app på både iOS og Android — eller et hvilket som helst antal andre platforme.

Andre udviklere fortalte mig, at de bliver nødt til at vente og se, om Xcode Clouds velrenommerede fordele udspiller sig i virkeligheden. Dets brug for solo-udviklere blev også stillet spørgsmålstegn ved, delvist fordi en række af dets funktioner er rettet mod teams med flere medlemmer.

For eksempel fortalte Lukas Burgstaller, udvikleren bag apps som Fiery Feeds og Tidur, mig, at Xcode Clouds værktøj afhænger af indstillingen.

"Selvom jeg ikke tror, ​​jeg kommer til at bruge det til mine personlige projekter [da] jeg føler, at kontinuerlig integration i bedste fald er moderat nyttig for en solo-udvikler opsætning, vil jeg helt sikkert begynde at bruge det i mit daglige job som iOS-teamleder, hvor vi planlagde at oprette en slags CI i over et år, men aldrig nåede det."

Men selvom han måske ikke bruger alle funktioner, beskrev Burgstaller stadig Xcode Cloud som en "endelig" meddelelse og sagde, at han var ekstremt glad for, at Apple føjer det til Xcode.

En funktion med reelt potentiale

Et dias af Xcode, der kører på MacOS Monterey ved Apples WWDC 2021-begivenhed

Det er stadig tidlige dage for Xcode Cloud. Ligesom mange af de andre opdateringer og nye funktioner annonceret på WWDC 2021, fra iOS 15 til MacOS Monterey, den er i øjeblikket kun tilgængelig for betatestere. På trods af et par bekymringer - og dårlige minder fra den pletvise lancering af et andet udviklerværktøj, Mac Catalyst, for et par år siden — fordelene ser ud til at langt opveje ulemperne, i det mindste ifølge de udviklere, jeg talte med.

Faktisk sagde ingen af ​​disse udviklere, at Xcode Cloud var helt uden værdi, hvilket tyder på, at der vil være noget for de fleste mennesker, der arbejder med at skabe apps til Apple-økosystemet. Forudsat at Apple fortsætter med at forbedre det, efterhånden som udviklerbehovene ændrer sig, og så længe dets priser ikke er voldsomt dyre, kan Apple være en vinder med Xcode Cloud.

Som altid ligger beviset i buddingen, og meget vil afhænge af den tilstand Xcode Cloud befinder sig i ved lanceringen. For mange udviklere kan dens efterårsudgivelse dog ikke komme hurtigt nok.

Redaktørernes anbefalinger

  • Apples ChatGPT-rival skriver muligvis automatisk kode til dig
  • Alle grundene til, at jeg er begejstret (og bekymret) for Apples Reality Pro-headset
  • Apples næste MacBooks og iPads kan være i alvorlige problemer
  • Apples VR-headset har ingen dræber-app, advarer fremtrædende lækker
  • Her er grunden til, at WWDC kan være en 'kritisk begivenhed' for Apple