Ποια γλώσσα προγραμματισμού πρέπει να χρησιμοποιήσετε για ένα Raspberry Pi;
Αν είστε νέοι στο Raspberry Pi, μπορεί να βρεθείτε στο σταυροδρόμι της επιλογής μιας γλώσσας προγραμματισμού για να μάθετε.
Υπάρχουν τόσες πολλές γλώσσες εκεί έξω και το τι θα αποφασίσετε να μάθετε θα έχει βαθιά επίδραση στο τι μπορείτε να κάνετε. Ας ρίξουμε λοιπόν μια ματιά στις γλώσσες που μπορείτε να χρησιμοποιήσετε με το Raspberry Pi.
Προεγκατεστημένες γλώσσες στο Raspberry Pi
Ίσως η μεγαλύτερη συμβουλή που μπορείτε να πάρετε από το Raspberry Pi είναι οι γλώσσες που είναι προεγκατεστημένες στο λειτουργικό σύστημα του Raspberry Pi.
Σε κάθε εγκατάσταση, θα έχετε προεγκατεστημένες τις Python, Scratch και C ή C++.
Ας ρίξουμε λοιπόν πρώτα μια ματιά σε αυτές τις τρεις γλώσσες.
Python: εξαιρετική γλώσσα γενικού σκοπού για το Raspberry Pi
Πλεονεκτήματα:
- Εύκολο στην εκμάθηση
- Πολλές βιβλιοθήκες για εξαρτήματα
- Πολλά σπουδαία σεμινάρια για να σας βοηθήσουν να αναπτύξετε ταχύτητα
- Μπορεί να χρησιμοποιηθεί στους μικροϋπολογιστές Raspberry Pi και τη σειρά Pico
Μειονεκτήματα:
- Ακατάλληλο για την ανάπτυξη δικτυακών τόπων (front end, συγκεκριμένα)
- Πιο αργή από τη C ή τη C++
Αν ξεκινάτε από το μηδέν, τότε η Python είναι ίσως ο πιο γρήγορος και αποτελεσματικός τρόπος για να ξεκινήσετε.
Πρώτον, η Python είναι μια από τις πιο εύκολες γλώσσες για να τις μάθει κανείς.
Ένας άλλος λόγος είναι ότι υπάρχουν πολλές βιβλιοθήκες γραμμένες σε Python για διάφορους αισθητήρες και εξαρτήματα. Ως αποτέλεσμα, ένας μεγάλος αριθμός σεναρίων για σεμινάρια και έργα θα είναι γραμμένα σε Python.
Αν χρησιμοποιούσατε μια άλλη γλώσσα, για παράδειγμα JavaScript (μέσω NodeJS), μπορεί να βρεθείτε χωρίς βιβλιοθήκη για έναν κοινό αισθητήρα.
Τέλος, η εκμάθηση της Python θα σας βοηθήσει να αλληλεπιδράσετε με όλες τις πλακέτες του Raspberry Pi. Μπορείτε να δημιουργήσετε έργα για το Raspberry Pi 4 καθώς και για το Raspberry Pi Pico.
Οι κατασκευαστές του Raspberry Pi σας διευκολύνουν επίσης να δημιουργήσετε έργα σε Python. Για παράδειγμα, όλοι οι μικροϋπολογιστές Raspberry Pi (π.χ. Pi 4) έρχονται με το Thonny που είναι ένα IDE Python και όλα τα Raspberry Pi Picos διαβάζουν MicroPython από προεπιλογή.
Το Thonny κάνει την Python εύκολη στο Raspberry Pi
Το λειτουργικό σύστημα Raspberry Pi OS διαθέτει επίσης προ-εγκατεστημένο το Thonny, το οποίο καθιστά πραγματικά εύκολη την εκτέλεση σεναρίων Python.
Το Thonny κάνει τον προγραμματισμό σε Python εύκολο, επειδή μπορείτε εύκολα να ξεκινήσετε και να σταματήσετε τα σενάρια πατώντας το κουμπί "RUN" ή "STOP" στο IDE.
Ενώ, αν χρησιμοποιείτε κάποιον άλλο επεξεργαστή, θα πρέπει πιθανότατα να πληκτρολογήσετε το σενάριο στο Τερματικό για να το εκτελέσετε.
MicroPython για Raspberry Pi Pico
Η εκμάθηση της Python είναι ιδιαίτερα χρήσιμη αν θέλετε να χρησιμοποιήσετε το Raspberry Pi Pico.
Σε αντίθεση με τους μικροϋπολογιστές Raspberry Pi, το Raspberry Pi Pico δέχεται μόνο τρεις γλώσσες από προεπιλογή: C ή C++ και MicroPython.
Αυτό σημαίνει ότι αν έχετε μάθει Python, θα είστε σε θέση να μεταβείτε στη συγγραφή MicroPython, αφού η σύνταξη είναι η ίδια.
Η κύρια διαφορά μεταξύ της Python και της MicroPython είναι ότι η τελευταία έχει μικρότερη τυπική βιβλιοθήκη.
CircuitPython
Εκτός από το MicroPython, το CircuitPython είναι ένα άλλο παράγωγο της Python που χρησιμοποιείται στο Raspberry Pi Pico. Το CircuitPython δημιουργήθηκε από την Adafruit.
Είναι η Python μια καλή γλώσσα για τους χρήστες του Raspberry Pi;
ΝΑΙ. Απολύτως.
Σίγουρα θα πρέπει να γνωρίζετε Python αν θέλετε να κατασκευάσετε έργα για το Raspberry Pi.
Ξεκίνησα το ταξίδι μου στον προγραμματισμό με τη JavaScript. Εκτός από τη σφαίρα του Raspberry Pi, η JavaScript είναι μια πολύ αποτελεσματική γλώσσα, επειδή μπορείτε να δημιουργήσετε προγράμματα και ιστότοπους.
Ωστόσο, μια μέρα, έπρεπε να δημιουργήσω ένα πρόγραμμα για μια οθόνη επτά τμημάτων και δεν υπήρχε τρόπος να το κάνω σε JavaScript.
Βρήκα ένα σενάριο στο διαδίκτυο, αλλά ήταν σε Python και αυτό με έστειλε στο μονοπάτι της εκμάθησης Python.
Αν θέλετε τον πιο αποτελεσματικό, γρήγορο και εύκολο τρόπο για να κατασκευάσετε έργα Raspberry Pi, τότε η εκμάθηση Python είναι ο σωστός τρόπος.
Πού να μάθετε Python για προγραμματισμό Raspberry Pi
Διαδρομή μάθησης - αυτοί οι πόροι συγκεντρώνουν συνδέσμους όπου μπορείτε να μάθετε συγκεκριμένα μέρη της Python. Πρόκειται για γενικές διαδρομές εκμάθησης και όχι ειδικά για το Raspberry Pi.
Harvard OpenCourseWare, Εισαγωγή στον προγραμματισμό με Python του CS50
YouTube βίντεο
Λίστα αναπαραγωγής σεμιναρίων Python για αρχάριους του Corey Schafer
Μαθήματα ειδικά για το Raspberry Pi - Αυτά τα μαθήματα προορίζονται για αρχάριους
Ίδρυμα Raspberry Pi - αυτό το μάθημα θα σας δώσει μια γενική επισκόπηση του προγραμματισμού σε Python και θα καταδυθεί στον προγραμματισμό παιχνιδιών και στην αλληλεπίδραση με αισθητήρες και εξαρτήματα.
Πραγματική Python, Κατασκευάστε φυσικά έργα με Python στο Raspberry Pi - αυτός είναι ένας πολύ καλός οδηγός για όσους έχουν έναν αισθητήρα και ένα κιτ εξαρτημάτων και θέλουν να ασχοληθούν με τον κώδικα που αλληλεπιδρά με το GPIO. Σε αντίθεση με τα γενικά σεμινάρια Python, αυτά θα σας διδάξουν πώς να συνδέσετε απλούς αισθητήρες και πώς να αλληλεπιδράσετε με αυτούς με ένα Raspberry Pi 4.
Scratch για Raspberry Pi
Ένας από τους φίλους μου μου έδειχνε το φανάρι LED που έφτιαξε με το Raspberry Pi 4.
Είναι ένας ανώτερος προγραμματιστής με πολλές γνώσεις προγραμματισμού σε Java και JavaScript, οπότε περίμενα να το έχει γράψει σε κάποια γλώσσα προγραμματισμού.
Αλλά όχι...
Χρησιμοποίησε το Scratch.
Τι;
Γιατί ένας ανώτερος υπάλληλος λογισμικού χρησιμοποίησε το Scratch;
Το Scratch περιγράφεται ως "η μεγαλύτερη κοινότητα προγραμματισμού για παιδιά στον κόσμο και μια γλώσσα προγραμματισμού με απλό οπτικό περιβάλλον που επιτρέπει στους νέους να δημιουργούν ψηφιακές ιστορίες, παιχνίδια και κινούμενα σχέδια".
Ο φίλος μου σίγουρα δεν ήταν παιδί.
Όταν τον ρώτησα γιατί, μου έδωσε μια απάντηση που ήταν τόσο χρήσιμη όσο και ένα μήνυμα δέσμευσης του Git: "είναι απλό στον προγραμματισμό".
Για να είμαστε δίκαιοι, όταν επισκέφθηκα το Raspberry Pi Store στο Cambridge, Ηνωμένο Βασίλειο, είχαν επίσης ένα Pi που έτρεχε το Scratch.
Οπότε, πρέπει να είναι καλό για κάτι!
Είναι το Scratch μια καλή γλώσσα προγραμματισμού για τους χρήστες του Raspberry Pi;
Υποθέτω ότι είναι καλό για να ξύσετε την επιφάνεια του προγραμματισμού.
Η όλη υπόθεση του Scratch είναι να κάνει τον προγραμματισμό εύκολο για τα παιδιά και τους εφήβους. Αντί να γράφετε αφηρημένο κώδικα, το Scratch σας επιτρέπει να δημιουργείτε προγράμματα ενώνοντας μπλοκ μεταξύ τους.
Για να αναβοσβήσετε ένα LED με το Scratch, θα πρέπει να συναρμολογήσετε αυτά τα μπλοκ:
Τώρα, συγκρίνετε αυτό με ένα σενάριο Python για να αναβοσβήνει η λυχνία LED,
import RPi.GPIO as GPIO
from time import sleep
GPIO.setmode(GPIO.BOARD)
GPIO.setup(8, GPIO.OUT, initial=GPIO.LOW)
while True:
GPIO.output(8, GPIO.HIGH)
sleep(1)
GPIO.output(8, GPIO.LOW)
sleep(1)
Ίσως είναι ο ίδιος λόγος για τον οποίο κάποιοι προτιμούν να χρησιμοποιούν ένα γραφικό περιβάλλον αντί για τη γραμμή εντολών. Αντί να αλλάζετε την τιμή μιας μεταβλητής με πολλά backspaces, βελάκια και άλλα πλήκτρα, θα κάνατε απλώς κλικ και θα επιλέγατε.
Για απλές εργασίες, εκμάθηση και διδασκαλία, το Scratch είναι μια εξαιρετική επιλογή.
Μειονεκτήματα του Scratch για Raspberry Pi
Αν σας ξέφυγε το λογοπαίγνιο στην προηγούμενη ενότητα, εδώ είναι ξανά: Ξύστε μόνο την επιφάνεια.
Αναπόφευκτα, όταν το έργο σας γίνει μεγαλύτερο, θα θελήσετε να χρησιμοποιήσετε μια πιο διαδεδομένη γλώσσα, όπως η Python ή η C ή η C++, επειδή θα έχετε πρόσβαση στον πλούτο του κώδικα, των βιβλιοθηκών και των σεναρίων που είναι διαθέσιμα στο διαδίκτυο.
Μάθετε Scratch
Αν είστε περίεργοι για το πώς λειτουργεί το Scratch, μπορείτε να πάρετε γρήγορα μια ιδέα για το πώς λειτουργεί η μέθοδος των "δομικών στοιχείων". στο διαδικτυακό περιβάλλον της.
- Το Raspberry Pi έχει μερικά μαθήματα Scratch, συμπεριλαμβανομένων εκείνων που αφορούν την κατασκευή υλικού.
- Ο Aaron Maurer έχει ένα σεμινάριο στο YouTube για να σας δείξω πώς να χρησιμοποιήσετε το Scratch 3 και να αναβοσβήσετε ένα LED.
C ή C++ για Raspberry Pi
Οι απόλυτες γλώσσες προγραμματισμού που σας δίνουν τον απόλυτο έλεγχο είναι επίσης από τις πιο δύσκολες στην εκμάθηση και την εκμάθηση.
Ποια είναι η διαφορά μεταξύ της C και της C++;
Η C++ είναι κατά κάποιο τρόπο μια εκτεταμένη έκδοση της C, η οποία περιλαμβάνει πολλά χαρακτηριστικά, όπως η εγγενής σχεδιασμένη υποστήριξη αντικειμενοστραφούς προγραμματισμού. Το ++ είναι ένα λογοπαίγνιο για τον τρόπο με τον οποίο οι τελεστές μπορούν να αυξηθούν στην ίδια τη C και τη C++. Για παράδειγμα, αν έχετε μια μεταβλητή cats και θέλετε να της προσθέσετε ένα, μπορείτε απλά να γράψετε cats++,
Η C++ ειδικά είναι πολύ δυναμική και ενημερώνεται συνεχώς. Είναι μια πολύπλοκη γλώσσα για εκμάθηση. Για αρχάριους, η C μπορεί να είναι μια πιο κατάλληλη γλώσσα για να επιλέξετε.
Ποια είναι η κύρια διαφορά σε σχέση με άλλες γλώσσες που χρησιμοποιούνται για το Pi;
Αυτές οι γλώσσες μεταγλωττίζονται - δηλαδή γράφετε κώδικα και στη συνέχεια χρησιμοποιείτε μια ειδική εφαρμογή που ονομάζεται μεταγλωττιστής για να παράγετε κώδικα byte μηχανής τον οποίο ο επεξεργαστής της αρχιτεκτονικής-στόχου σας κατανοεί εγγενώς. Με άλλα λόγια, αν θέλετε να εκτελέσετε μια εφαρμογή τόσο στο Pico W και στο Raspberry Pi όσο και στον επιτραπέζιο υπολογιστή σας (βασισμένο σε x86), θα πρέπει να εκτελέσετε έναν ειδικό μεταγλωττιστή για καθένα από αυτά.
Ένα άλλο παράδειγμα μεταγλωττισμένης γλώσσας είναι η Rust, η οποία έχει μερικά μεγάλα πλεονεκτήματα. Βλέπετε, η C και η C++ χρειάζονται να φροντίσετε ορισμένα πράγματα, όπως η συλλογή σκουπιδιών - αν δεν το κάνετε αυτό, η εφαρμογή σας μπορεί να καταρρεύσει. Ή ολόκληρος ο υπολογιστής μπορεί να καταρρεύσει αν γράφετε προγράμματα οδήγησης συσκευών. Με το Rust υπάρχουν πρόσθετες ασφαλείς δικλείδες ασφαλείας για τον προγραμματιστή.
Μια άλλη δημοφιλής μεταγλωττισμένη γλώσσα που αναπτύχθηκε από την Google ονομάζεται Go. Μπορεί να παρατηρήσετε αναφορές σε αυτές κατά καιρούς.
Η πρότασή μου για να ξεκινήσετε αν δεν έχετε ξανακάνει προγραμματισμό είναι οι διερμηνευμένες γλώσσες. Δεν χρειάζονται βήμα μεταγλώττισης, αλλά διαβάζονται από μια εφαρμογή η οποία στη συνέχεια εκτελεί τη σωστή εντολή. Μια καλή γλώσσα για να ξεκινήσετε είναι η Python (ή η MicroPython).
Ωστόσο, αν ποτέ θελήσετε να δημιουργήσετε εντυπωσιακά έργα όπως το να παίζεις Doom σε ένα Raspberry Pi Pico τότε θα πρέπει να γνωρίζετε C ή C++.
Η C ή η C++ είναι γενικά μία από τις τρεις γλώσσες που χρησιμοποιούνται ευρύτερα στο Raspberry Pi, ενώ η άλλη είναι η Python. Ως εκ τούτου, ένα μεγάλο μέρος αυτής της ενότητας θα μιλήσει για τα πλεονεκτήματα και τα μειονεκτήματα των δύο.
Ας ξεκινήσουμε συγκρίνοντας τα τρία:
C και C++ | MicroPython | |
Ταχύτητα | Ταχύτερη | Πιο αργή |
Καμπύλη μάθησης | Πιο σκληρό | Ευκολότερο |
Διαχείριση μνήμης | Χειροκίνητο | Αυτόματη (συλλογή σκουπιδιών) |
Συγκεντρώθηκε; Ερμηνεύεται; | Σύνταξη | Διερμηνευμένο |
Χρήση ανά κοινότητα | Ευρεία χρήση, ειδικά σε προηγμένα έργα όπου απαιτείται λεπτομερής έλεγχος | Χρησιμοποιείται ευρέως από αρχάριους έως προχωρημένους χρήστες. |
Βιβλιοθήκες για εξαρτήματα | Γενικά διαθέσιμο | Γενικά διαθέσιμο |
Πρέπει ένας αρχάριος να μάθει C ή C++;
Τίποτα δεν σας εμποδίζει να περάσετε μια δοκιμασία από τη φωτιά.
Γιατί ό,τι δεν σε σκοτώνει σε κάνει πιο δυνατό.
Τα περισσότερα έργα μπορούν να υλοποιηθούν με Python καθώς και με C ή C++. Η διαθεσιμότητα βιβλιοθηκών για τις τρεις γλώσσες είναι επίσης ευρέως διαδεδομένη και είναι απίθανο να βρεθείτε σε δυσχέρεια λόγω της έλλειψης μιας βιβλιοθήκης.
Πόσο επίμονος είσαι;
Η C ή η C++ μπορεί να είναι λίγο λιγότερο διασκεδαστικές για τον αρχάριο προγραμματιστή, επειδή υπάρχουν πολλές πτυχές που θα πρέπει να σκεφτείτε, τις οποίες δεν θα έπρεπε να σκεφτείτε στην Python.
Για παράδειγμα, στη C και τη C++, θα πρέπει να διαχειρίζεστε τη μνήμη σας. Θα πρέπει επίσης να σκεφτείτε τι είδους τύπο δεδομένων θα αναθέσετε σε μια μεταβλητή. Αυτό μπορεί να γίνει κουραστικό αν δεν έχετε επίγνωση των επιπτώσεων των πλεονεκτημάτων και των μειονεκτημάτων της επιλογής ενός τύπου.
Για παράδειγμα, αν θέλετε να εκχωρήσετε έναν ακέραιο στη C και τη C++, θα πρέπει να αποφασίσετε αν θέλετε:
- int
- char
- unsigned char
- signed char
- unsigned int
- σύντομο
- unsigned short
- μακρύ
- unsigned long
Η επιλογή ενός από αυτά θα έχει επιπτώσεις στην ταχύτητα και τη χρήση μνήμης του προγράμματός σας.
Και ενώ η Python είναι λιγότερο αποδοτική, θα χρειαστεί να το κάνετε αυτό μόνο για να δηλώσετε έναν ακέραιο:
integer = 999999999999999
Αλλά χωρίς πόνο, χωρίς κέρδος, σωστά;
Μόλις εξοικειωθείτε με τον τρόπο λειτουργίας της C ή της C++, θα αρχίσετε να αποκομίζετε τα οφέλη. Καθώς το Raspberry Pi δεν είναι ένας πολύ ισχυρός υπολογιστής για τα σημερινά δεδομένα, το να μπορείτε να γράφετε αποδοτικό κώδικα θα σας βοηθήσει να αξιοποιήσετε την καλύτερη δυνατή απόδοση του περιορισμένου υλικού του.
Η ρύθμιση της C και της C++ απαιτεί περισσότερο χρόνο
Όταν κυκλοφόρησαν οι πλακέτες Raspberry Pi Pico, έπρεπε να γράψω για τη ρύθμιση του Pico για Python και C και C++.
Η Python ήταν εξαιρετικά εύκολη. Κατεβάστε το Thonny. Συνδέστε το Pico. Flash MicroPython. Έγινε.
Η C και η C++ ήταν πολύ πιο δύσκολες και κουραστικές. Είναι προφανές - Το Raspberry Pi δημοσιεύει ένα PDF μόνο για το θέμα της εγκατάστασης της C/C++. Ας πούμε ότι έπρεπε να αλληλεπιδράσετε με τη γραμμή εντολών για να το ρυθμίσετε.
Θα είσαι πάντα C το φως
C είναι περίπου 40 ετών και χρησιμοποιείται ακόμη και σήμερα.
Τι λέει αυτό γι' αυτό;
Είναι μία από τις πιο δυναμικές γλώσσες που μπορείτε να μάθετε και η οποία μπορεί να χρησιμοποιηθεί για τη δημιουργία λογισμικού και το χειρισμό υλικού.
Έτσι, αν θέλετε να μάθετε μια γλώσσα που είναι εξαιρετικά χρήσιμη και ισχυρή, η C θα μπορούσε να είναι η καλύτερη πρώτη γλώσσα για να μάθετε.
Ψιτ... Η C και η C++ μπορούν να χρησιμοποιηθούν σε άλλους πίνακες
Γράφω αυτό το κείμενο στο 2022, όπου το απόθεμα Raspberry Pi είναι ένα μεγάλο ζήτημα.
Ένα από τα μεγαλύτερα πράγματα που ρωτάει ο κόσμος είναι: "Τι εναλλακτικοί πίνακες υπάρχουν; Δεν μπορώ να φτιάξω έργα με ένα ανύπαρκτο Raspberry Pi".
Υπάρχουν πολλά εναλλακτικά διοικητικά συμβούλια εκεί έξω, και μπορείτε να τα δείτε εδώ.
Αν έχετε μάθει C ή C++, θα είστε σε θέση να χρησιμοποιήσετε κατευθείαν μια πλακέτα Arduino ή ESP32 ή ESP8266, τα προγράμματα των οποίων είναι σχεδόν αποκλειστικά γραμμένα σε C ή C++.
Αυτές οι πλακέτες μπορεί να μην δέχονται Python, οπότε αν ο λόγος για τον οποίο ασχολείστε με το Raspberry Pi είναι για να δημιουργήσετε έργα με μικροελεγκτές, ίσως βρείτε τη C ή τη C++ ως μια πιο μεταβιβάσιμη γλώσσα.
Εκμάθηση C ή C++ για Raspberry Pi
Το MagPi εκδίδει δωρεάν ένα περιοδικό για αρχάριους.
Το MagPi δημοσιεύει επίσης μια λίστα με μέρη για να μάθετε C (όχι ειδικά για το Raspberry Pi)
Εδώ είναι οι δράκοι
Στην παραπάνω ενότητα, μιλήσαμε για τις γλώσσες προγραμματισμού που θα πρέπει να εξετάσετε το ενδεχόμενο να μάθετε.
Η επόμενη ενότητα μιλάει για πιθανές γλώσσες που μπορούν επίσης να χρησιμοποιηθούν με το Raspberry Pi, αλλά οι περιπτώσεις χρήσης και η κοινότητα δεν είναι τόσο μεγάλες όσο κατά τη χρήση των Python, C, C++ και Scratch.
JavaScript (συμπεριλαμβανομένου του NodeJS)
Η JavaScript είναι μια από τις πιο χρήσιμες γλώσσες για τον ερασιτέχνη προγραμματιστή, επειδή μπορείτε να δημιουργήσετε εφαρμογές, ιστότοπους (με HTML και CSS) και backends με αυτήν.
Μια από τις μεγαλύτερες εξελίξεις στον τομέα της JavaScript ονομάζεται NodeJS. Προηγουμένως, η JavaScript βασιζόταν κυρίως στο πρόγραμμα περιήγησης, αλλά με το NodeJS, μπορείτε να εκτελέσετε ένα backend και να δημιουργήσετε εφαρμογές για το Raspberry Pi και άλλους υπολογιστές σας.
Ειδικά για το Raspberry Pi, υπάρχουν βιβλιοθήκες που σας επιτρέπουν να χειριστείτε τις ακίδες GPIO του Raspberry Pi. Έτσι, αν θέλετε να κατασκευάσετε ένα απλό έργο, δεν θα έχετε πρόβλημα με την εκτέλεση ενός προγράμματος JavaScript.
Ωστόσο, το μεγαλύτερο εμπόδιο στο έργο σας είναι η έλλειψη μιας κοινότητας όπου το Raspberry Pi και η JavaScript διασταυρώνονται.
Αυτό γίνεται εμφανές όταν επισκέπτεστε το Github κάποιου και αναπόφευκτα, το έργο του είναι γραμμένο σε Python ή C, C++. Πολύ λίγοι προγραμματιστές χρησιμοποιούν JavaScript με το Raspberry Pi.
Είναι λοιπόν η JavaScript μια διαγραφή;
Όχι, όχι πραγματικά.
Εξακολουθεί να έχει τις χρήσεις του.
Μια περίπτωση χρήσης όπου η εκμάθηση JavaScript μπορεί να σας βοηθήσει να επιτύχετε τους στόχους σας είναι αν θέλετε να χρησιμοποιήσετε το Raspberry Pi σας ως διακομιστή ιστού. Μπορείτε να γράψετε το backend σε ExpressJS (ένα backend framework) και το frontend σε React/Angular/Vue (frontend frameworks), και στη συνέχεια να χρησιμοποιήσετε το PM2 (ένα process manager) για να παραδώσετε τα back και front ends. Σε αυτό το σενάριο, μπορείτε να το κάνετε εντελώς σε JavaScript.
Το Raspberry Pi Pico W χρειάζεται JavaScript
Πριν από λίγο καιρό, σε μια συνάντηση React, κάποιος με πείραξε επειδή έγραφα JavaScript βανίλια. Με πείραξε, "τι χρονιά έχουμε; Η δεκαετία του 2000;"
Αν έχετε ένα Raspberry Pi Pico W, θα πρέπει τελικά να ξέρετε πώς να γράφετε βανίλια JavaScript.
Κοιτάξτε ποιος γελάει τώρα;
Ενώ ο κόσμος της ανάπτυξης ιστοσελίδων έχει προχωρήσει στη χρήση ενός πλαισίου frontend όπως το React, το Angular ή το Vue, η εξυπηρέτηση ιστοσελίδων στο Raspberry Pi Pico απαιτεί γενικά να ξέρετε να γράφετε JavaScript. Αν κοιτάξετε τα σεμινάριά μας στο Pico W mega article, θα δείτε.
Ένα από τα μεγαλύτερα πλεονεκτήματα του Pico W είναι ότι σας επιτρέπει να σερβίρετε μια ιστοσελίδα, την οποία πιθανότατα θα χρησιμοποιήσετε για να ελέγξετε κάτι. Για παράδειγμα, θα μπορούσατε να βάλετε το Pico W να σερβίρει μια ιστοσελίδα με ένα ρυθμιστικό που ελέγχει ένα σερβομηχανισμό. Για να επικοινωνήσετε την τιμή του ρυθμιστή στο Pico W, θα πρέπει να γνωρίζετε JavaScript.
Μάθετε JavaScript
Μπορώ να συστήσω μόνο μία ιστοσελίδα που αποδείχθηκε η καλύτερη πηγή για να μάθω JavaScript:
Αυτός ο πόρος είναι ΠΟΛΥ καλός για τους χρήστες του Pico W, επειδή σας διδάσκει κάθε πτυχή της JavaScript της βανίλιας και των συμβάντων του προγράμματος περιήγησης. Θα πρέπει να γνωρίζετε τα τελευταία προκειμένου να ελέγχετε αποτελεσματικά το Pico W και το UX της ιστοσελίδας που θα σερβίρετε.
HTML + CSS
Η HTML και η CSS δεν είναι στην πραγματικότητα γλώσσες προγραμματισμού, αλλά σχετίζονται στενά με το τμήμα JavaScript. Είναι χρήσιμες εάν:
- Σκοπεύετε να κάνετε κάτι διαδικτυακό
- Σκοπεύετε να παρουσιάσετε μια ιστοσελίδα χρησιμοποιώντας το Pico W
Αυτός ο ιστότοπος με βοήθησε πολύ: Το Internet είναι δύσκολο
Είναι λίγο ξεπερασμένο. Για παράδειγμα, δεν καλύπτει το CSS Grid ή το aspect-ratio.
Αλλά το Interneting is Hard έχει μια αποτελεσματική μέθοδο διδασκαλίας και μπορεί να σας διδάξει αρκετά ώστε να φτιάξετε μια ιστοσελίδα για το Pico W.
Συστάσεις αν θέλετε να...
Αποκτήστε γρήγορα αποτελέσματα: Python ή Scratch
Διδάξτε στα παιδιά πώς να προγραμματίζουν: Scratch
Αποκτήστε τον απόλυτο έλεγχο του υλικού σας: C ή C++
Κατασκευάστε έργα υλικού: Python ή C ή C++, μην ασχοληθείτε με οτιδήποτε άλλο
Φιλοξενήστε έναν διακομιστή ιστού και δημιουργήστε ιστότοπους: HTML, CSS, JavaScript
Κατασκευάστε ένα έργο IoT με το Pico W: Python, HTML, CSS, JavaScript
Να γίνετε θεϊκοί (με μια αθεόφοβη επένδυση χρόνου): C ή (κυρίως) C++
Παρακαλώ μην αναφέρεστε στη "C/C++" ως 1 γλώσσα. Αυτό απλώς μπερδεύει τους αρχάριους. Είναι ΔΥΟ πολύ διαφορετικές γλώσσες με διαφορετικές καμπύλες εκμάθησης και διαφορετικές ικανότητες.
Σας ευχαριστώ για τα σχόλιά σας - έχω τροποποιήσει το άρθρο και έχω επεκτείνει λίγο τη διαφορά μεταξύ των γλωσσών.
Διαφωνώ με τη δήλωση "Είναι ΔΥΟ πολύ διαφορετικές γλώσσες". Η C είναι υποσύνολο της C++. Φυσικά η C++ είναι πολύ πιο δύσκολο να μάθει κανείς από τη C.
Gracias por éste artículo