icazə verin ki, parent Task olsun { icazə verin ki, child Task olsun { print("child started, isCancelled = ", Task.isCancelled) // YOX 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 saniyə parent.cancel() /////// icazə verin ki, parent Task olsun { 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 saniyə parent.cancel()
iOS
Birbaşa işlədiyiniz modullarda rəqabət problemləri (Sendable, yoxlanmamış Sendable, aktyorlar arasında keçidlər) baş verdi?
protokol SomeProtocol {} func test1_1(dəyər: SomeProtocol) {} func test2_1(dəyər: some SomeProtocol) {} func test1_2(dəyər: any SomeProtocol) {}
UIKit və SwiftUI arasında dizayn sistemi necə işləyir — komponentlərin və ya örtüklərin təkrarlanması varmı?
protokol SomeProtocol {} func test1_1(dəyər: SomeProtocol) {} func test1_2(dəyər: any SomeProtocol) {}
val parent = Task { let child = Task { print("uşaq başladı, isCancelled = ", Task.isCancelled) // for index in (1...[phone]) { print(index) } print("uşaq bitdi, isCancelled = ", Task.isCancelled) // } await child.value } try? await Task.sleep(nanoseconds: 1_000_000_000) // 1 saniyə parent.cancel()
protokol SomeProtocol {} funksiya test1_1(qiymət: SomeProtocol) {} funksiya test1_2(qiymət: hər hansı SomeProtocol) {} funksiya test2_1(qiymət: some SomeProtocol) {} funksiya test2_2<Qiymət: SomeProtocol>(qiymət: Qiymət) {} sinif A { funksiya test2_2<Qiymət: SomeProtocol>(qiymət: Qiymət) { } } sinif B: SomeProtocol { } A().test2_2(qiymət: B())
Navigasiya UIKit-də yazılıb, və xəbərdarlıqlar/şüşələr UIKit-də çıxarılır və ya SwiftUI-nin yerli vasitələrindən istifadə edirsinizmi?
Son layihəniz haqqında daha ətraflı danışın — Avito-da foto qalereya modulu, siz cavabdeh olduğunuz (qısa müddətli icarə, rezervasiya forması və s.)
Şəbəkə qatından başqa layihədə başqa makroslar var mı?
Fotoqalereyada jestlər və yaxınlaşdırma ilə qarşılıqlı əlaqə necə həyata keçirildi — UIKit və ya SwiftUI-də?
struct ExampleView: View { var body: some View { VStack { FormView() Button("Reset") { // TODO: } } } } // YALNIZ O‘QISH 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) } } }
Layihədə istifadə etdiyiniz faydalı Property Wrapper'lar haqqında danışın
Layihədə hazırki minimal iOS hədəfi nədir?
Layihədə istifadə olunan Swift dilinin versiyası — 6-dan yuxarı və ya aşağıdır?
iOS 16 məqsədi ilə SwiftUI ilə əlaqəli problemlər, müvəqqəti həllər və ya məhdudiyyətlər iOS 15-ə nisbətən varmı?
Array { value1 value2 if condition { value3 } }
son sinif ProfileViewModel1 { enum Vəziyyət { ... } var vəziyyət: Vəziyyət = .idle let xidmət: UserService init(xidmət: UserService) { ... } func onBackPress() { // view deinit } func loadUser() { vəziyyət = .loading Task { [weak self] guard let self else { return } do { let istifadəçi = try await self.xidmət.fetchUser() self.vəziyyət = .loaded(istifadəçi) } catch { self.vəziyyət = .failed(error.localizedDescription) } } } }
Layihəyə gəldiyiniz zaman, artıq Swift 6 mövcud idi, yoxsa keçid sizin zamanınızda baş verdi?
Əgər SwiftUI-də dizayn sisteminə müxtəlif üslublar (əsas/ikincil) ilə təkrar istifadə oluna bilən düymə komponenti dizayn etsəniz, bunu necə həyata keçirərdiniz?