neka roditelj bude Task { neka dete bude Task { print("child started, isCancelled = ", Task.isCancelled) // NE false for index in (1...[phone]) { print(index) } print("child finished, isCancelled = ", Task.isCancelled) // } await child.value } try? await Task.sleep(nanoseconds: 1_000_000_000) // 1 sekund parent.cancel() /////// neka roditelj bude Task { async let child: Void = { print("child started, isCancelled =", Task.isCancelled) for index in (1...[phone]) { print(index) } print("child finished, isCancelled =", Task.isCancelled) }() await child } try? await Task.sleep(nanoseconds: 1_000_000_000) // 1 sekund parent.cancel()
iOS
Da li su postojali problemi sa konkurentnošću (Sendable, unchecked Sendable, prelaz između aktera) u modulima sa kojima ste direktno radili?
protokol SomeProtocol {} func test1_1(vrednost: SomeProtocol) {} func test2_1(vrednost: some SomeProtocol) {} func test1_2(vrednost: any SomeProtocol) {}
Kako funkcioniše sistem dizajna između UIKit i SwiftUI — postoji li duplikacija komponenti ili omotača?
протокол SomeProtocol {} func test1_1(вредност: SomeProtocol) {} func test1_2(вредност: any SomeProtocol) {}
протокол SomeProtocol {} func test1_1(вредност: SomeProtocol) {} func test1_2(всякакъв SomeProtocol) {} func test2_1(вредност: some SomeProtocol) {} func test2_2<Вредност: SomeProtocol>(вредност: Вредност) {} класа A { func test2_2<Вредност: SomeProtocol>(вредност: Вредност) { } } класа B: SomeProtocol { } A().test2_2(вредност: B())
neka roditelj bude Task { let child = Task { print("dete je počelo, isCancelled = ", Task.isCancelled) // for index in (1...[phone]) { print(index) } print("dete završilo, isCancelled = ", Task.isCancelled) // } await child.value } try? await Task.sleep(nanoseconds: 1_000_000_000) // 1 sekunda parent.cancel()
Ispričaj više o svom posljednjem projektu — modulu fotogalerije na Avitu, za koji si bio odgovoran (kratkoročni najam, obrazac za rezervaciju itd.)
Navigacija je napisana u UIKit, a upozorenja/ploče se iznose u UIKit ili koristite nativne alate SwiftUI?
Da li u projektu postoje još makroi osim sloja mreže?
Kako je implementirana interakcija sa gestovima i zum u foto galeriji — na UIKit ili SwiftUI?
struct ExampleView: View { var body: some View { VStack { FormView() Button("Reset") { // TODO: } } } } // SAMO ZA ČITANJE struct FormView: View { @State private var firstname = "" @State private var lastname = "" @State private var email = "" @State private var website = "" var body: some View { Form { TextField("Enter firstname", text: self.$firstname) TextField("Enter lastname", text: self.$lastname) TextField("Enter email address", text: self.$email) TextField("Enter website address", text: self.$website) } } }
Ispričaj o korisnim Property Wrapper-ima koje si koristio u projektu
Koja verzija jezika Swift se koristi u projektu — viša od 6 ili niža?
Koliko ti pomažu alati veštačke inteligencije (Cursor, Proxyman itd.) da budeš produktivniji na poslu?
Array { value1 value2 if condition { value3 } }
Koji je trenutni minimalni cilj iOS u projektu?
Kada si došao na projekat, da li je već postojao Swift 6 ili je prelaz nastao tokom tvog prisustva?
završna klasa ProfileViewModel1 { enum Stanje { ... } var stanje: Stanje = .idle let usluga: UserService init(usluga: UserService) { ... } func onBackPress() { // prikaz deinit } func loadUser() { stanje = .loading Task { [weak self] guard let self else { return } do { let korisnik = try await self.usluga.fetchUser() self.stanje = .loaded(korisnik) } catch { self.stanje = .failed(error.localizedDescription) } } } }
Da li postoje problemi, rešenja ili ograničenja u vezi sa SwiftUI-jem u cilju iOS 16 u poređenju sa iOS 15?