záró osztály ProfileViewModel1 { állapot enum { ... } változó állapot: Állapot = .idle hagyományos szolgáltatás: UserService init(szolgáltatás: UserService) { ... } func onBackPress() { // nézet deinit } func loadUser() { állapot = .loading Task { [weak self] guard let self else { return } do { let felhasználó = try await self.szolgáltatás.fetchUser() self.állapot = .loaded(felhasználó) } catch { self.állapot = .failed(error.localizedDescription) } } } }
iOS
A projektben használt Swift nyelv verziója — 6 felett vagy alatt?
Array { value1 value2 if condition { value3 } }
Amikor megérkeztél a projekthez, már volt Swift 6, vagy a váltás veled történt?
Ha új képernyőt vagy új funkciót valósít meg, azonnal SwiftUI-ban ír, vagy vannak viták a UIKit és SwiftUI közötti választásról?
Használja a Viper architektúrát a UIKit-hoz? Minden alkalmazásra érvényes?
Mi a jelenlegi minimális iOS cél a projektben?
Mesélj érdekes forrásokról a fejlődéshez — YouTube csatornák, Telegram csatornák, közösségek, eszközök
```swift struct ContentView: View { var body: some View { ScrollView { content .padding(20) } .background(Color(.systemGroupedBackground)) .overlay(alignment: .bottom) { continueButton } } } ``` ```swift struct ContentView: View { var body: some View { ScrollView { content .padding(20) } .background(Color(.systemGroupedBackground)) .safeAreaInset(edge: .bottom) { continueButton } } } ```
@MainActor final class ViewModel: ObservableObject { @Published var image: UIImage? func onDownloadPhoto(url: URL) { do { let data = try Data(contentsOf: url) image = UIImage.init(data: data) } catch { log.error("A kép letöltése sikertelen: \(error)") } } } Button("Letöltés") { onDownloadPhoto(url) }
Vannak problémák, workaroundok vagy korlátozások a SwiftUI-val kapcsolatban az iOS 16 célkitűzésében az iOS 15-höz képest?
Hogyan érted a strukturált konkurencia kifejezést Swiftben? Illeszkedik-e ehhez a fogalomhoz a Task.detached?
Jelenleg használja a GCD-t vagy a Modern Concurrency-t (async/await) új feladatokhoz, amelyek szálakhoz kapcsolódnak?
Self -> Feladat -> (erős) Self .... Vissza -> View desinit -> View model deinit?
Ha egy újrahasznosítható gombkomponenst terveznél egy SwiftUI alapú dizájrendszerhez különböző stílusokkal (elsődleges/hátsó), hogyan valósítanád meg?
Mi van a UIKit és SwiftUI bemutató moduljaihoz — milyen architektúra?
protokoll SomeProtocol { func test() } func test1_1(érték: SomeProtocol) {} func test1_2(érték: any SomeProtocol) {} func test2_1(érték: some SomeProtocol) {} func test2_2<Érték: SomeProtocol>(érték: Érték) {} class A { func test2_2<Érték: SomeProtocol>(érték: Érték) { } } class B: SomeProtocol { func test() {} } class C: B {} A().test2_2(érték: B())
Mikor és hogyan történik a törlés, amikor DispatchQueue-t használunk WorkItem-mel és meghívjuk a cancel()-t?