Η εκμάθηση λειτουργικού προγραμματισμού με έκανε 10 φορές καλύτερο προγραμματιστή

Η εκμάθηση λειτουργικού προγραμματισμού με έκανε 10 φορές καλύτερο προγραμματιστή. Με βοήθησε να μάθω πώς να γράφω κώδικα καθαρό, εύκολο στη συντήρηση και επεκτάσιμο.

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

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

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

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

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

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

Ας πάμε κατευθείαν σε αυτό! ;

Τι είναι ο λειτουργικός προγραμματισμός;

Ετσι. Τι είναι ο «λειτουργικός προγραμματισμός»;

Ο λειτουργικός προγραμματισμός δεν είναι ένα πλαίσιο ή ένα εργαλείο, αλλά ένας τρόπος σύνταξης κώδικα. Στον λειτουργικό προγραμματισμό, δίνουμε μεγάλη έμφαση στη σύνταξη κώδικα χρησιμοποιώντας λειτουργίες ως «δομικά στοιχεία».

Το πρόγραμμά σας ορίζεται με βάση μία κύρια λειτουργία. Αυτή η κύρια συνάρτηση ορίζεται με όρους άλλων συναρτήσεων, οι οποίες με τη σειρά τους ορίζονται με όρους ακόμη περισσότερων συναρτήσεων - έως ότου στο κάτω επίπεδο οι συναρτήσεις είναι απλώς πρωτόγονες γλώσσας όπως «αριθμός» ή «συμβολοσειρά».

Αν διαβάζετε αυτήν τη σκέψη, «Χμμ, αλλά περιμένετε; Δεν χρησιμοποιεί κάθε γλώσσα λειτουργίες για τη σύνταξη κώδικα; " τότε καλά ?. Σημαίνει ότι προσέχετε.

Έχετε δίκιο - κάθε γλώσσα προγραμματισμού έχει λειτουργίες. Αλλά ο λειτουργικός προγραμματισμός το οδηγεί σε ένα ολόκληρο επίπεδο ;

Για να καταλάβω τι εννοώ, ας γυρίσουμε πίσω και ξεκινήστε με τα βασικά.

Κάθε πρόγραμμα λογισμικού έχει δύο πράγματα:

  1. Συμπεριφορά (τι κάνει το πρόγραμμα)
  2. Δεδομένα (τα δεδομένα, είναι καλά, δεδομένα)

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

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

Τα δεδομένα, σε λειτουργικό προγραμματισμό, είναι αμετάβλητα - που σημαίνει ότι δεν μπορούν να αλλάξουν. Αντί να αλλάζουν δεδομένα που λαμβάνουν, οι λειτουργίες στον λειτουργικό προγραμματισμό λαμβάνουν δεδομένα ως είσοδο και παράγουν νέες τιμές ως έξοδο. Πάντα.

Οι λειτουργίες και τα αμετάβλητα δεδομένα είναι τα μόνα δύο πράγματα που πρέπει να αντιμετωπίσετε ποτέ στον λειτουργικό προγραμματισμό. Για να γίνει ακόμη πιο απλό, οι λειτουργίες αντιμετωπίζονται διαφορετικά από τα δεδομένα.

Με άλλα λόγια, οι λειτουργίες στον λειτουργικό προγραμματισμό μπορούν να μεταδοθούν τόσο εύκολα όσο τα δεδομένα. Μπορείτε να τις αναφέρετε από σταθερές και μεταβλητές , να τις μεταβιβάσετε ως παραμέτρους σε άλλες συναρτήσεις και να τις επιστρέψετε ως αποτέλεσμα άλλων συναρτήσεων.

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

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

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

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

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

  • Οι λειτουργίες είναι καθαρές
  • Οι συναρτήσεις χρησιμοποιούν αμετάβλητα δεδομένα
  • Οι λειτουργίες εγγυώνται διαφάνεια αναφοράς
  • Οι συναρτήσεις είναι οντότητες πρώτης κατηγορίας

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

Μέχρι το τέλος, θα μπορείτε να καταλάβετε πώς αυτή η προσέγγιση οδηγεί σε κώδικα που είναι:

  • Ευκολότερη κατανόηση (δηλαδή «εκφραστική»)
  • Ευκολότερη για επαναχρησιμοποίηση
  • Ευκολότερο στη δοκιμή
  • Ευκολότερο στη συντήρηση
  • Ευκολότερο στον αντιδραστήρα
  • Ευκολότερο στη βελτιστοποίηση
  • Ευκολότερος λόγος

Ακούγεται συναρπαστικό; Εάν ναι, θα λατρέψετε το νέο ηλεκτρονικό βιβλίο. ;

Το ηλεκτρονικό βιβλίο θα κυκλοφορήσει στις 13 Δεκεμβρίου . Μπορείτε να προπαραγγείλετε το e-book τώρα με μόλις 49 $! Και ως ειδική προσφορά στην δωρεάν κοινότητα FreeCodeCamp, προσφέρω 10 $ έκπτωση με τον κωδικό έκπτωσης " freecodecamp ".

Τα λέμε εκεί! ?? ✍️