Junior — Middle
Μπορείς να απαριθμήσεις τους βασικούς τελεστές που χρησιμοποιούνται στη βιβλιοθήκη Combine;
sobes.tech AI
Απάντηση από AI
Στη βιβλιοθήκη Combine για αντιδραστικό προγραμματισμό στο iOS, χρησιμοποιούνται οι ακόλουθοι βασικοί χειριστές:
- map — μετατρέπει τα στοιχεία της ροής εφαρμόζοντας μια λειτουργία σε κάθε στοιχείο.
- filter — περνά μόνο τα στοιχεία που ικανοποιούν μια συνθήκη.
- flatMap — μετατρέπει τα στοιχεία σε νέους εκδότες και τα συνδυάζει σε μια ενιαία ροή.
- merge — συνδυάζει πολλούς εκδότες σε έναν, μεταδίδοντας τα στοιχεία καθώς λαμβάνονται.
- combineLatest — συνδυάζει τις τελευταίες τιμές πολλών εκδοτών.
- reduce — συσσωρεύει τις τιμές σε μία, χρησιμοποιώντας μια λειτουργία συρρίκνωσης.
- sink — εγγράφεται στον εκδότη και επεξεργάζεται τις ληφθείσες τιμές ή σφάλματα.
- debounce — καθυστερεί τη μετάδοση των στοιχείων για να ομαλοποιήσει γρήγορες ακολουθίες.
- removeDuplicates — αφαιρεί διαδοχικά διπλότυπα στοιχεία.
Παράδειγμα χρήσης του χειριστή map:
let publisher = [1, 2, 3].publisher
publisher
.map { $0 * 2 }
.sink { print($0) }
// Έξοδος: 2, 4, 6