Απόκριση στα αιτήματα του χρήστη

Αν η εφαρμογή σας αργεί αρκετά στην απόκριση, οι χρήστες θα απογοητευθούν. Χρησιμοποιήστε αυτές τις τεχνικές για να βελτιώσετε τις αποκρίσεις της εφαρμογής σας.

Κατευθυντήριες γραμμές
  • Εμφανίστε την ανάδραση όσο πιο σύντομα γίνεται.

  • Αν δεν μπορείτε να εμφανίσετε όλες τις πληροφορίες που ο χρήστης έχει ζητήσει, εμφανίστε πρώτα τις πιο σημαντικές από αυτές.

  • Κερδίστε χρόνο εμφανίζοντας προσεγγιστικά αποτελέσματα κατά τον υπολογισμό των τελικών αποτελεσμάτων.

  • Εάν οι χρήστες είναι πιθανό να επαναλάβουν μια χρονοβόρα εντολή σε γρήγορη διαδοχή, γλιτώστε χρόνο καλύπτοντας τα αποτελέσματα της εντολής αντί για κατ' επανάληψη επεξεργασία της εντολής. Για παράδειγμα, εάν ο χρήστης προσθέτει αρκετές γραμμές σε έναν αποθηκευμένο πίνακα σε μια βάση δεδομένων, μπορείτε να εμφανίσετε κάθε νέα γραμμή αμέσως αλλά να καθυστερήσετε στην πραγματικότητα τη δημιουργία κάθε νέας γραμμής στη βάση δεδομένων μέχρι ο χρήστης να έχει τελειώσει την προσθήκη όλων των γραμμών.

  • Προεργασία. Προετοιμάστε την εκτέλεση της εντολής που είναι πιο πιθανό να ακολουθήσει την τρέχουσα εντολή. Δηλαδή, χρησιμοποιήστε αδρανή χρόνο για να προβλέψετε τα πιθανά επόμενα αιτήματα του χρήστη. Για παράδειγμα, καθώς ο χρήστης μιας εφαρμογής μηνύματος διαβάζει το τρέχον εμφανιζόμενο νέο μήνυμα, η εφαρμογή μπορεί να προετοιμάσει την εμφάνιση του επόμενου νέου μηνύματος.

  • Χρησιμοποιήστε τη διαδικασία στο παρασκήνιο. Εκτελέστε τις λιγότερο σημαντικές εργασίες - όπως οι τακτοποιήσεις - στο παρασκήνιο, δίνοντας τη δυνατότητα στους χρήστες να συνεχίσουν να δουλεύουν.

  • Καθυστερήστε τις εργασίες που δεν επείγουν. Εκτελέστε τις αργότερα, όταν υπάρχει περισσότερος διαθέσιμος χρόνος.

  • Απορρίψτε περιττές λειτουργίες. Για παράδειγμα, την οπισθοδρόμηση αρκετών σελίδων σε έναν περιηγητή ιστού, ένας χρήστης μπορεί να πατήσει το κουμπί του περιηγητή πίσω αρκετές φορές σε μια γρήγορη διαδοχή. Για προβολή της τελικής ζητούμενης σελίδας πιο γρήγορα, ο περιηγητής μπορεί να μην εμφανίσει τις διαβασμένες σελίδες μεταξύ της τρέχουσας σελίδας και αυτής της τελικής σελίδας.

  • Χρησιμοποιήστε δυναμική διαχείριση χρόνου. Στον χρόνο εκτέλεσης, αλλάξτε τις προτεραιότητες καταχώρισης του χρήστη και άλλων διεργασιών, με βάση την τρέχουσα κατάσταση της εφαρμογής. Για παράδειγμα, εάν ο χρήστης πληκτρολογεί κείμενο σε ένα έγγραφο επεξεργασίας κειμένου ενώ εκτυπώνει ένα άλλο, η εφαρμογή επεξεργασίας κειμένου μπορεί να καθυστερήσει την εργασία εκτύπωσης εάν ο χρήστης μετακινηθεί σε μια εργασία επεξεργασίας (όπως αποκοπή και επικόλληση κειμένου) που απαιτεί μεγαλύτερους πόρους.

  • Στην εφαρμογή σας, εμφανίστε μία εκτίμηση του χρόνου εκτέλεσης κάθε λειτουργίας.

    • Εάν η εντολή μπορεί να πάρει περισσότερο από 5 δευτερόλεπτα για ολοκλήρωση της εργασία της σε ένα αντικείμενο, επιτρέψτε στους χρήστες να αλληλεπιδράσουν με οποιαδήποτε μέρη του αντικειμένου και της εφαρμογής που δεν επηρεάζονται άμεσα από την εντολή.
    • Εάν μια εντολή παρέχει μεγάλη έξοδο, εμφανίστε μερικά αποτελέσματα καθώς γίνονται διαθέσιμα. Κυλήστε τα αποτελέσματα (εάν είναι απαραίτητο) μέχρι ο χρήστης να μετακινήσει την εστίαση εισόδου σε ένα συστατικό (π.χ. μια γραμμή κύλισης ή περιοχή κειμένου) που εμπεριέχεται στην κύλιση.