Array { value1 value2 if condition { value3 } }
iOS
Quando sei arrivato al progetto, c'era già Swift 6, o il passaggio è avvenuto durante il tuo periodo?
Qual è il target minimo di iOS attualmente nel progetto?
Parla di risorse interessanti per lo sviluppo — canali YouTube, canali Telegram, community, strumenti
Utilizzi l'architettura Viper per UIKit? Si applica a tutte le applicazioni?
classe finale ProfileViewModel1 { enum Stato { ... } var stato: Stato = .idle let servizio: UserService init(servizio: UserService) { ... } func onBackPress() { // vista deinit } func loadUser() { stato = .loading Task { [weak self] guard let self else { return } do { let utente = try await self.servizio.fetchUser() self.stato = .loaded(utente) } catch { self.stato = .failed(error.localizedDescription) } } } }
Ci sono problemi, soluzioni temporanee o limitazioni relative a SwiftUI con l'obiettivo iOS 16 rispetto a iOS 15?
@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("Impossibile scaricare l'immagine: \(error)") } } } Button("Scarica") { onDownloadPhoto(url) }
```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 } } } ```
Parlami dell'uso di SwiftUI nel progetto — qual è la politica, quante schermate sono scritte in SwiftUI
Se implementi un nuovo schermo o una nuova funzionalità, scrivi subito in SwiftUI, o ci sono discussioni sulla scelta tra UIKit e SwiftUI?
Auto -> Compito -> (forte) Auto .... Indietro -> View desinit -> View model deinit?
Se stessi progettando un componente di pulsante riutilizzabile per un sistema di design in SwiftUI con stili diversi (primario/secundario), come lo implementeresti?
protocol SomeProtocol { func test() } func test1_1(valore: SomeProtocol) {} func test1_2(valore: any SomeProtocol) {} func test2_1(valore: some SomeProtocol) {} func test2_2<Valore: SomeProtocol>(valore: Valore) {} class A { func test2_2<Valore: SomeProtocol>(valore: Valore) { } } class B: SomeProtocol { func test() {} } class C: B {} A().test2_2(valore: B())
Cosa viene utilizzato per i moduli di presentazione in UIKit e SwiftUI — quale architettura?
Attualmente utilizzi GCD o Modern Concurrency (async/await) per nuovi compiti legati ai thread?
Come comprendi il termine concorrenza strutturata in Swift? Task.detached si adatta a questo concetto?
Quando e come avviene l'annullamento utilizzando DispatchQueue con WorkItem e chiamando cancel()?