Zašto bi SwiftUI mogao biti najveća stvar koja je izašla iz WWDC -a

Greška WWDC 2019 Jabuka posvetio pozornost na svim svojim platformama na WWDC -u ove godine. Čak smo i prvi put pogledali potpuno novi Mac Pro. No, još jedna najava, koja nije zauzela toliko naslova, mogla bi se pokazati kao najvažnija stvar koja će izaći s ovogodišnje konferencije za programere: SwiftUI.

SwiftUI obećava da će iz temelja promijeniti način na koji programeri stvaraju aplikacije za Appleove proizvode. I ne morate biti tehničar da biste shvatili zašto je to tako velika stvar.

Uz SwiftUI, Apple otpušta jedno od posljednjih naslijeđa Stevea Jobsa

Prije ponovno se pridruživši Appleu 1997, Steve Jobs bio je izvršni direktor tvrtke tzv Sljedeći, koji je proizveo najsuvremeniji operacijski sustav tzv Sljedeći korak. Aplikacije za NeXTSTEP razvijene su u programskom jeziku tzv Cilj-C.

Apple je kupio NeXT jer mu je trebao sjajan operativni sustav nove generacije koji će zamijeniti stari 7 System na kojem su Mac radili u to vrijeme. Cupertino je prilagodio NeXTSTEP da postane Mac OS X, koji se kasnije pretvorio u macOS, iOS, watchOS i tvOS koje poznajemo danas.

Čak i nakon svih ovih godina, ako pogledate ispod haube, podrijetlo Appleovih platformi ostaje jasno vidljivo. Nazivi klasa objekata koje Apple koristi u svom kodu počinju slovima „NS“ za „NeXTSTEP“.

Ali sada, zahvaljujući SwiftUI, Apple se počinje rješavati ovog posljednjeg ostatka NeXT -a. NSObject i slično bi se uskoro moglo poslati u povijest. Ovo je ujedno i prvi Apple API koji nije dostupan s Objective-C-a od pokretanja OS X, što bi moglo označiti početak kraja za ovaj časni programski jezik.

Pojava SwiftUI -ja doista je kraj jedne ere i početak nečeg novog. No o čemu se radi? I, što je još važnije, što to znači za krajnje korisnike Applea?

Što je SwiftUI?

Do ovog su tjedna programeri morali koristiti AppKit i UIKit za izradu aplikacija za Mac i iOS. Ovi API -ji pružaju alate razvojnim programerima za izradu elemenata korisničkog sučelja, poput gumba, pomicanja popisa i polja za unos. S podrijetlom koje seže do NeXTSTEP -a, ti API -ji počinju pokazivati ​​svoju dob.

Kako softver stari, stječe ono što tehničari nazivaju “tehnički dug, Što znači da, iako je korištenje lako i poznato, bilo bi bolje da uložite vrijeme potrebno za prelazak na bolji, moderniji pristup. SwiftUI je upravo ta vrsta prekidača.

Kad je Apple još 2014. na WWDC-u predstavio Swift, nasljednika Objective-C-a se računa kao da je "Potpuno izvorno za Cocoa [AppKit] i Cocoa Touch [UIKit]." Zahvaljujući Cupertinovom tehničkom čarobnjaštvu, bilo je tako. Nekako.

Apple je uvijek bio izvrstan u prelasku s jedne tehnologije na drugu. Kad je tvrtka skočila na OS X, uključivala je okvire Classic i Carbon pa su stare aplikacije ostale kompatibilne. Slično, prelaskom s PowerPC na Intelove čipove, Rosetta sustav besprijekorno prevedene upute sa starog na novi čip.

Slično, Cupertino je napravio sjajan posao u usklađivanju AppKita i UIKita sa Swiftom. Ali možete reći da su API-ji stari i da se približavaju datumu prodaje.

SwiftUI omogućuje Appleu da zauvijek ukloni naslijeđe NeXTSTEP -a, zamijenivši ga iz temelja novim, izvornim API -jem za razvoj Swifta.

Što je tako sjajno u SwiftUI -u?

Možda je nov i drugačiji, ali što je zaista toliko sjajno u SwiftUI -ju? Programerima se može svidjeti mnogo toga. No, za redovne korisnike Applea poput vas i mene postoje tri glavne prednosti koje možemo očekivati: više aplikacija, bolje aplikacije i bolja podrška za Mac i Apple Watch.

1. Više aplikacija: Privlačenje nove vrste programera

SwiftUI donosi Apple bang ukorak s trenutnim trendovima u programiranju. Ponosi se a deklarativna sintaksa, stil programiranja koji je već popularan među web programerima koji koriste JavaScript. To znači da će odmah biti poznat širokom spektru tehnologa koji su tek počeli raditi u Appleu. Olakšavajući novim programerima ubrzanje, SwiftUI bi mogao privući potpuno novu vrstu programera na platformu.

2. Prave izvorne aplikacije: Poticanje programera da odustanu od API-ja za više platformi

Facebook nudi alat za izradu aplikacija tzv Reagiraj Native. Postao je vrlo popularan jer razvojnim programerima omogućuje izradu aplikacija u JavaScriptu, a zatim ih sastavljanje kao izvorne aplikacije za izvođenje na iOS i Android uređajima. To je sve vrlo dobro, ali aplikacije izgrađene pomoću ovakvih alata za više platformi rijetko se izvode kao prave izvorne aplikacije.

Zašto? Budući da zahtijevaju hrpu dodatnog koda, u obliku knjižnica trećih strana, kako bi mogli funkcionirati. Zbog toga su oni obično veći, tromi i zahtjevniji u pogledu resursa sustava i baterije od aplikacija izgrađenih pomoću Appleovih alata. Rijetko se osjećaju kao prave izvorne aplikacije.

Uz SwiftUI, Apple daje programerima jedan razlog manje da pribjegnu API-ima za više platformi. To je mnogo brži i lakši za razvoj i, s deklarativnom sintaksom, React programerima je to lakše posvojiti.

3. Bolja podrška za Mac i Apple Watch: Omogućavanje programerima da koriste kôd na različitim platformama

Programeri su uvijek mogli ponovno koristiti kôd na Appleovim platformama jer svi podržavaju Objective-C i Swift. No do ovog tjedna nisu mogli ponovno koristiti kôd korisničkog sučelja. To je zato što svaka platforma za to ima svoj okvir. Mac koristi AppKit, iOS koristi UIKit, a watchOS koristi WatchKit. Da bi aplikacija radila na sve tri platforme, programer mora izraditi tri zasebne verzije koda korisničkog sučelja.

SwiftUI obećava promijeniti sve ovo, jer je isti okvir izvorni na svim Apple platformama. U praksi je malo vjerojatno da će biti tako jednostavno jer svaka platforma ima svoje razlike. Aplikacija optimizirana za ekspanzivni zaslon iPad Proa ne bi se lako prilagodila malim dimenzijama Apple Watcha.

Unatoč tome, omogućujući programerima da ponovno koriste više koda korisničkog sučelja na različitim platformama, SwiftUI bi se dugoročno mogao pokazati jednako važnim kao i Projektni katalizator u poticanju programera da prihvate sve Appleove proizvode.

Kada možemo očekivati ​​da će aplikacije biti ugrađene u SwiftUI?

Sada, SwiftUI je u beta verziji kao dio Xcode 11. Razvojni programeri poigravat će se s tim i udarati gume nekoliko mjeseci prije nego što u njemu počnu stvarati prave aplikacije.

Xcode će vjerojatno izaći iz beta verzije u rujnu lansiranjem iOS -a 13. Tada će razvoj SwiftUI -a zaista započeti. Čak i tada je moguće da okvir neće biti potpun, što znači da se programeri mogu i dalje oslanjati na AppKit i UIKit ako potrebni API-ji još nisu dostupni u SwiftUI-ju.

Programerima velikih, složenih aplikacija poput Photoshopa moglo bi proći i dosta vremena da promijene način rada. Tako će se AppKit i UIKit zadržati neko vrijeme.

Bez obzira na to, nema sumnje da je SwiftUI početak važnog novog poglavlja za Apple. Dugoročno možemo očekivati ​​prednosti ne samo za programere, već i za sve koji koriste Appleove proizvode. Ovaj tjedan mogao bi ući u povijest kao vrlo važna prekretnica za Apple. Nešto što će za 10 godina od sada naš vlastiti Luke Dormehl pamtiti u “Danas u povijesti Applea”Post.

Najnoviji post na blogu

Kako vratiti zvuk pri pokretanju Mac računala na MacBook Pro računaru 2016
September 11, 2021

Kako vratiti zvukove pri pokretanju Mac računala na MacBook Pro računaru 2016Još nemamo novi MacBook Pro, a već nam nedostaju zvona za pokretanje.F...

Kako otvoriti prekidač aplikacija pomoću 3D Touch na iPhoneu
September 11, 2021

Kako otvoriti prekidač aplikacija pomoću 3D Touch na iPhoneu3D Touch radi više od prečaca na početnom zaslonu.Fotografija: Killian Bell/Cult of Mac...

| Kult Maca
September 11, 2021

Kako svladati svoj DSLR fotoaparat i vještine digitalne fotografije [ponude]IPhone brzo postaje jedna od, ako ne i najčešće korištenih kamera na pl...