Πώς να κάνετε τα σύνθετα προβλήματα ευκολότερα με την αποσύνθεση και τη σύνθεση

Το Discover Functional JavaScript ονομάστηκε ένα από τα καλύτερα νέα βιβλία λειτουργικού προγραμματισμού από το BookAuthority !

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

Αυτή είναι μια διαδικασία δύο βημάτων:

  • αποσυνθέστε το πρόβλημα σε μικρότερα μέρη
  • συνθέστε τα μικρά μέρη για να λύσετε το πρόβλημα

Αποσυνθέτουμε σε μικρότερα μέρη επειδή είναι πιο κατανοητά και εφαρμόζονται. Τα μικρότερα μέρη μπορούν να αναπτυχθούν παράλληλα.

Η διαδικασία της αποσύνθεσης αφορά την ανάθεση ευθυνών και την ονομασία. Αυτό το καθιστά εύκολο να μιλήσετε και να συζητήσετε. Μόλις προσδιορίσουμε μια ευθύνη, μπορούμε να την επαναχρησιμοποιήσουμε.

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

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

Αποσύνθεση αντικειμένου

Τα αντικείμενα είναι κάτι παραπάνω από κατάσταση και συμπεριφορά που συνεργάζονται. Τα αντικείμενα είναι πράγματα με ευθύνες.

Αναλύω

Στο πώς να δημιουργήσω μια εφαρμογή τριών επιπέδων με το React, παίρνω μια εφαρμογή λίστας υποχρεώσεων και διαχωρίζω τις ευθύνες μεταξύ των ακόλουθων αντικειμένων:

  • TodoDataService : υπεύθυνος για την επικοινωνία με το διακομιστή Todo API
  • UserDataService : υπεύθυνος για την επικοινωνία με το API χρήστη διακομιστή.
  • TodoStore: το κατάστημα τομέα για τη διαχείριση των υποχρεώσεων. Είναι η μοναδική πηγή αλήθειας σχετικά με τις υποχρεώσεις.
  • UserStore : το κατάστημα τομέα για τη διαχείριση χρηστών.
  • TodoListContainer : το στοιχείο ριζικού κοντέινερ που εμφανίζει τη λίστα των υποχρεώσεων.

Όπως μπορείτε να δείτε, κατά την αποσύνθεση, εκχωρώ αρμοδιότητες και δίνω ονόματα.

Συνθέτω

Στη συνέχεια, τα συνθέτω σε μία μόνο συνάρτηση. Αυτό είναι το μέρος όπου δημιουργούνται όλα τα αντικείμενα και γίνεται ένεση εξαρτήσεων. Ονομάζεται Σύνθεση Ρίζα.

Το Discover Functional JavaScript ονομάστηκε ένα από τακαλύτερα νέα βιβλία λειτουργικού προγραμματισμού από το BookAuthority !

Για περισσότερα σχετικά με την εφαρμογή τεχνικών λειτουργικού προγραμματισμού στο React ρίξτε μια ματιά στο Functional React .

Μάθετε λειτουργικό React , με βάση ένα έργο, με τη λειτουργική αρχιτεκτονική με το React και το Redux .

Ακολουθήστε στο Twitter