Apple söker ett snabbt sätt att locka fler utvecklare

Apple kanske inte överraskade konsumenter med de senaste mjukvaruerbjudandena vid sin årliga Worldwide Developers Conference i San Francisco i år. Men det avslöjade något som kan ha en mycket större inverkan än en ny version av sin iOS-mobilmjukvara eller till och med en ny iPhone: ett nytt programmeringsspråk.





Kallas Swift, det är tänkt att erbjuda ett snabbare och enklare sätt att bygga mjukvara för Apples produkter än dess befintliga programmeringsspråk, Objective-C. Och än så länge gillar utvecklare vad de ser och säger att det kommer att vara särskilt användbart för oerfarna kodare som kan ha hållit sig undan från att utveckla iPhone-appar tidigare.

Mål-C har en lång historia hos Apple. Först tänkt på 1980-talet som en förlängning av C programmeringsspråk, licensierades det av NeXT Computer – företaget Steve Jobs grundade efter att ha blivit avsatt från Apple 1985 – och användes för dess operativsystem. Efter att Apple köpte NeXT 1996 och Jobs återvände till Apple, användes Objective-C i Apples OS X operativsystem och, så småningom, även i iOS-mobiloperativsystemet.

Ändå kan Objective-C vara komplicerat och förvirrande, särskilt för nya programmerare, och det ses som klumpigare än vissa mer moderna programmeringsspråk. Swift är enklare än Objective-C och låter användare se sin kod i aktion när de skriver den på sina datorskärmar, snarare än att köra den genom en kompilator innan de checkar ut den. Men den är också kompatibel med Objective-C-kod, vilket betyder att den fungerar med appar som redan finns i Apples App Store. Och det är tänkt att användas för utveckling av Mac-appar också.



Apple rullade ut en betaversion av Swift på måndagen till medlemmar i sitt utvecklarprogram. En slutlig version kommer under hösten.

Craig Federighi, Apples senior vice president för mjukvaruteknik, presenterade Swift för publiken på Apples årliga utvecklarkonferens i San Francisco i måndags, att det är som Objective-C utan huvuddelen av C.

Frank Bentley, en forskningsassistent vid Yahoo Labs som studerar framtidens mobila enheter och undervisar i mobilprogrammering vid MIT, förväntar sig att Swift kommer att göra det mycket lättare för sina elever att komma igång med iOS-appar.



Historiskt sett tenderar iOS att slå upp en del elever, säger han, med några av dess mer komplexa funktioner som relaterar till saker som minneshantering och parentes. När han tog en första titt på Swift såg han att dessa barriärer var borta.

Bentley tror också att eleverna kommer att gilla möjligheten att automatiskt felsöka och prova saker som animation medan de skriver kod i Swift (något Apple demonstrerade i måndags genom att göra ett enkelt spel med Swift och Apples Xcode).

Det här ger ett slags nytt sätt att köra saker interaktivt - att bara prova saker, säger han. Sedan kan du ändra ett par konstanter, se hur något fungerar annorlunda. Den låter dig bara leka lite mer utan att behöva ladda den på telefonen och prova något nytt varje gång.



Utvecklare säger att Swifts likheter med andra moderna programmeringsspråk också kan hjälpa till att uppmuntra nya utvecklare att bygga mjukvara för iOS, enligt Tony Scherba, VD och grundare på mobilappsutvecklare Yeti . Jag känner människor, även i vår butik, som kommer igång med iOS, som kommer från Ruby eller JavaScript eller Python-bakgrund; all overhead av Objective-C blir ganska förvirrande, säger han. Jag tror att Swift kommer att göra det mycket enklare.

Scherba säger att Swift är bättre lämpad för att utveckla spel och appar med 3-dimensionell grafik och kommer generellt att göra kodningen tydligare och mer koncis än den var med Objective-C.

Du kan föreställa dig att om [det finns] något konstigt, ålderdomligt skriftspråk som har dessa riktigt långa namn, kommer det att bli lite mer läskigt att lära sig att läsa och skriva det språket än något klart och koncist, som är mer vettigt och är mer läsbar, säger han.



Men det kan finnas en kanske oavsiktlig konsekvens av Swift: om det tar in många fler iOS-utvecklare, säger Scherba, kan det också sänka premien som hämtas av nuvarande iOS-utvecklare, vars kompetens har ansetts vara en het handelsvara.

Dölj