Coroutines είναι η λύση της Kotlin για ασύγχρονο προγραμματισμό — γράφοντας async κώδικα (κλήσεις δικτύου, λειτουργίες βάσης δεδομένων) που διαβάζεται διαδοχικά χωρίς να φραγεί το κύριο νήμα. Είναι ο σύγχρονος, συνιστώμενος τρόπος για να χειριστείτε ασύγχρονο έργο στο Android, αποφεύγοντας την πολυπλοκότητα των callbacks.
Γιατί το async είναι σημαντικό στο Android
The MAIN (UI) thread must stay responsive — blocking it (with network/DB work) freezes
the UI (ANR "Application Not Responding" errors):
→ long operations MUST run off the main thread (asynchronously)
→ old approaches: callbacks (nested, complex), threads/AsyncTask (verbose, error-prone)
→ COROUTINES make async code clean and sequential.
