Προγραμματισμός

Η καλύτερη γλώσσα προγραμματισμού για να μάθετε τώρα

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

Κάθε σχολείο, MOOC και εκπαιδευτικός χώρος πρέπει να συμπεριλάβει μια πρώτη γλώσσα για τους νέους Padawans. Ορισμένα μέρη, όπως το φουσκωτό Χάρβαρντ, εξακολουθούν να προσκολλώνται στην εποχή της δεκαετίας του 70, αλλά πολλά σχολεία ταλαντεύονται μεταξύ JavaScript, Python και Java. Το ένα είναι θαμμένο σε κάθε πρόγραμμα περιήγησης, το ένα είναι η καθαρή επιλογή των κοινωνικών επιστημών και το ένα είναι η πλούσια σε τύπους προτίμηση περισσότερων μαθηματικά μυαλών.

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

Η Java είναι κλασική

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

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

Η Python είναι νέα

Στην πραγματικότητα, η Python δεν είναι τόσο καινούργια - το έργο ξεκίνησε πριν από περισσότερα από 30 χρόνια - αλλά αισθάνεται νέο επειδή η επιτυχία του ήρθε αργά. Μόλις πρόσφατα ξέσπασε η Python και βρήκε ευρεία υιοθέτηση με απλούς προγραμματιστές. Η καινοτομία σημαίνει ότι τα σχολεία που αγκαλιάζουν την Python δημιουργούν νέα σχέδια μαθημάτων, γράφουν νέες εξετάσεις και αναπτύσσουν νέες τράπουλες. Δεν σκάβουν μερικές σκονισμένες παλιές ερωτήσεις από τη δεκαετία του 1990 με αναφορές στο Pets.com και στο MySpace.

Το νεότερο μάθημα AP, που ονομάζεται Computer Science Principles, επιτρέπει στον δάσκαλο να επιλέξει τη γλώσσα του υπολογιστή και πολλοί επιλέγουν το Python λόγω της φρεσκάδας του. Η νεότητα μπορεί να είναι βαθιά, αλλά όλες οι γλώσσες είναι μόνο μια έξυπνη σύνταξη που κρύβει τη δομή αποφάσεων if-then-else του κώδικα συναρμολόγησης.

Όλη αυτή η επιτυχία χτίζει έναν θετικό βρόχο ανατροφοδότησης. Η έκδοση του Νοεμβρίου 2020 του δείκτη Tiobe σηματοδότησε την πρώτη φορά που ο Python ανέβηκε στο νούμερο δύο κουλοχέρη (πίσω από το C), αναγνωρίζοντας πώς η γλώσσα έγινε πιο δημοφιλής από την Java.

Η JavaScript είναι παντού

Είναι στο πρόγραμμα περιήγησης και το πρόγραμμα περιήγησης είναι το θεμέλιο για την επιφάνεια εργασίας σας, το τηλέφωνό σας και όλα αυτά τα περίπτερα που βλέπετε παντού. Κατά την τελευταία δεκαετία, η JavaScript έχει αναλάβει τις πρώτες γραμμές των διακομιστών ιστού, καθώς οι εφαρμογές ιστού Node.js έγιναν ο πιο δημοφιλής τρόπος για τους προγραμματιστές να γράψουν «ισομορφικό κώδικα» που μπορεί να εκτελεστεί τόσο στους πελάτες όσο και στις ομάδες διακομιστών. Η JavaScript είναι σχεδόν η ίδια εποχή με την Java και όμως χρειάστηκαν χρόνια για να ανακαλύψουν οι άνθρωποι από την πλευρά του διακομιστή τη δύναμή της. Είναι νέο και παλιό ταυτόχρονα.

Η Java έχει πληκτρολογηθεί

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

Η Python δεν έχει πληκτρολογηθεί

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

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

Το JavaScript είναι και τα δύο

Το ίδιο το JavaScript δεν έχει πληκτρολογηθεί, αλλά πρόσφατα ορισμένα από τα υψηλού προφίλ μέλη του κόσμου JavaScript έχουν μεταβεί στο TypeScript, ένα υπερσύνολο της αρχικής γλώσσας που σας δίνει τη δυνατότητα να ορίσετε τους τύπους όταν θέλετε. Και αν δεν θέλετε, λοιπόν, η κανονική JavaScript θα λειτουργήσει επίσης καλά. Είναι μια χαλαρή έκδοση ελέγχου τύπου.

Η Java κυβερνά τις συσκευές

Η πιο δημοφιλής πλατφόρμα κινητών τηλεφώνων στον κόσμο είναι το Android, μια τεράστια στοίβα κώδικα που έχει δημιουργηθεί πάνω από την Java. Αλλά αυτή είναι μόνο η πιο ορατή πλατφόρμα. Οι αποκωδικοποιητές, τα νέα Chromebook και ακόμη και ορισμένοι επιτραπέζιοι υπολογιστές χρησιμοποιούν εφαρμογές Android όπως τα smartphone. Ένας στενός ξάδελφος της Java, C #, κυριαρχεί στον κόσμο των Windows. Το C # δεν είναι ακριβώς το ίδιο με το Java αλλά είναι πολύ κοντά. Εάν πρόκειται να συντάξετε μια εφαρμογή για ένα σταθερό κομμάτι υλικού, υπάρχει μια καλή πιθανότητα η Java να είναι η καλύτερη επιλογή.

Η Python κυβερνά την επιστήμη των δεδομένων

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

Μία από τις καλύτερες εφευρέσεις για τη δημιουργία και την κοινή χρήση διαδραστικών εγγράφων, το Jupyter Notebook, ξεκίνησε με την κοινότητα Python πριν αγκαλιάσει άλλες γλώσσες. Είναι ένας από τους καλύτερους τρόπους για να συνδυάσετε λογισμικό, δεδομένα και το κείμενο που εξηγεί τι συμβαίνει. Οι αναγνώστες μπορούν να απορροφήσουν τις λέξεις και στη συνέχεια να πατήσουν τα κουμπιά για να εκτελέσουν το λογισμικό στα δεδομένα.

Το JavaScript κυβερνά τον ιστό

Οι άλλες πλατφόρμες μπορεί να είναι ωραίες, αλλά το πρόγραμμα περιήγησης ιστού εξακολουθεί να είναι η μία πύλη που σχεδόν όλοι χρησιμοποιούν για να συνδεθούν με τον κόσμο. Είναι συνήθως το πιο χρησιμοποιημένο λογισμικό στην επιφάνεια εργασίας, το smartphone και το tablet. Το JavaScript ξεκίνησε ως το αφεντικό αυτού του τοπικού πελάτη και η επιρροή του επεκτάθηκε σε απόλυτη κυριαρχία καθώς η ανάπτυξη του Node.js διευκόλυνε τους προγραμματιστές να εκτελούν τον ίδιο κώδικα στον πελάτη και στον διακομιστή.

Υπάρχουν επίσης δεκάδες καλά πλαίσια JavaScript (Angular, React, Vue, κ.λπ.) που προσφέρουν τη βάση για τη δημιουργία της εφαρμογής ιστού σας και μερικά είναι αρκετά έξυπνα για να μετακινήσετε τον κώδικά σας μεταξύ του πελάτη και του διακομιστή, όπως απαιτείται.

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

Η Java τρέχει τα πάντα

Εάν γράψετε κώδικα Python, υπάρχει μια καλή πιθανότητα να καταλήξει να τρέχει στο Jython, μια εφαρμογή της γλώσσας που γράφτηκε στην Java για να επωφεληθεί από την πανταχού παρουσία της εικονικής μηχανής Java. Εάν πρέπει να εκτελέσετε JavaScript, μπορείτε επίσης να το τροφοδοτήσετε σε Rhino και Nashorn, δύο εργαλεία που μετατρέπουν τη JavaScript σε Java bytecode.

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

Η Python τρέχει παντού

Η Python δεν είναι η πρώτη ή ακόμα και η τελευταία επιλογή για άτομα που γράφουν εξομοιωτές για άλλες γλώσσες. Ωστόσο, είναι εύκολο να βρείτε το Python σε πολλούς υπολογιστές. Οι δημιουργοί της γλώσσας διανέμουν πάντα τον κώδικα ως ανοιχτού κώδικα και τα πακέτα είναι σχεδόν παντού. Πράγματι, θα βρείτε το Python που περιλαμβάνεται σε MacOS και τις περισσότερες πλήρεις δυνατότητες διανομών του Linux. Και ενώ δεν περιλαμβάνεται στα Windows, είναι εύκολο να εγκαταστήσετε - απλώς κάντε τον με έξυπνο τρόπο.

Το JavaScript εκτελείται στο πρόγραμμα περιήγησης

Είναι δύσκολο να πιστέψουμε ότι η γλώσσα παιχνιδιού που έχει δημιουργηθεί για τη δημιουργία κουτιών ειδοποίησης στο πρόγραμμα περιήγησης είναι πλέον το θεμέλιο για πολλές γλώσσες. Οι προγραμματιστές θέλουν να προσεγγίσουν χρήστες και αν οι χρήστες ζουν στο πρόγραμμα περιήγησης, λοιπόν, η εύρεση τρόπου εκτέλεσης του κώδικα σας σε JavaScript είναι ο γρηγορότερος τρόπος προσέγγισης όλων.

Δεν είναι απλώς ξαδέλφια JavaScript όπως το CoffeeScript και το LiveScript που μεταφέρονται στο JavaScript. Ακόμη και γλώσσες όπως οι Lisp, OCaml και Pascal μπορούν να μετατραπούν σε JavaScript και να εκτελεστούν στο πρόγραμμα περιήγησης. Το Python είναι δημοφιλές στο πρόγραμμα περιήγησης σε έργα όπως τα σημειωματάρια Jupyter και ακόμη και η Java μπορεί να μεταφραστεί σε JavaScript χρησιμοποιώντας εργαλεία όπως το Google Web Toolkit.

Η Java έχει ισχυρά IDE

Το Eclipse, το NetBeans και το IntelliJ είναι μερικά από τα καλύτερα περιβάλλοντα ολοκληρωμένης ανάπτυξης. Δημιουργήθηκαν από την κοινότητα Java και καλλιεργήθηκαν με την πάροδο των ετών για να δημιουργήσουν ένα από τα πιο υποστηρικτικά περιβάλλοντα για τη σύνταξη κώδικα. Οι αλγόριθμοι συμπλήρωσης κώδικα και δημιουργίας κώδικα ενδέχεται να μην γράφουν όλο το λογισμικό σας, αλλά μπορούν να πληκτρολογήσουν ένα σημαντικό ποσό. Όλα αυτά τα χέρια βοηθούν πραγματικά τους νέους προγραμματιστές να διορθώσουν τη σύνταξη.

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

Η Python έχει το σύννεφο

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

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

Υπάρχουν επίσης αρκετοί καλοί οικοδεσπότες για φορητούς υπολογιστές που προσθέτουν επιπλέον δυνατότητες για κοινή χρήση δεδομένων και χειρισμό μεγάλων, εντατικών υπολογιστικών εργασιών ανάλυσης δεδομένων. Η Google, για παράδειγμα, εκτελεί το Colaboratory, το οποίο θα αποθηκεύει τα δεδομένα σας και θα προσφέρει δωρεάν πρόσβαση σε GPU για γρηγορότερο υπολογισμό. Το Saturn Cloud εμφανίζει απόδοση που μπορεί να είναι 100 φορές ταχύτερη από την επιφάνεια εργασίας σας.

Το JavaScript έχει JSFiddle

Κάθε πρόγραμμα περιήγησης διαθέτει αρκετή ισχύ για να λειτουργεί ως IDE. Το JSFiddle είναι μόνο το πιο σημαντικό από περισσότερους από δώδεκα ιστότοπους που σας επιτρέπουν να μοιράζεστε κώδικα JavaScript με άλλους προγραμματιστές. Οι ιστοσελίδες, ωστόσο, δεν είναι στατικές, επειδή μπορείτε να παίζετε με τον κώδικα και να την παρακολουθείτε να εκτελείται στην ίδια ιστοσελίδα. Εργαλεία όπως αυτό το καθιστούν απλό να πειραματιστείτε με όλη τη συντακτική διασκέδαση του JavaScript.

Μάθετε οποιαδήποτε - ή και τα τρία

Ο κόσμος προγραμματισμού λατρεύει να αλληλο-γονιμοποιεί. Παρόλο που μπορεί να προκαλεί σύγχυση η ανάκαμψη μεταξύ διαφορετικών γλωσσών και η διατήρηση της σύνταξης ευθεία, είναι δυνατό να χρησιμοποιείς και τις τρεις γλώσσες σε έργα χωρίς να μπλοκάρεις. Τα έργα Java ή JavaScript που αναλύουν δεδομένα μπορούν να συνδεθούν σε βιβλιοθήκες επιστήμης δεδομένων γραμμένες στο Python. Ή τα έργα Python μπορούν να επικαλεστούν κώδικα Java ή JavaScript.

Οι έξυπνοι προγραμματιστές έχουν επίσης δημιουργήσει εργαλεία για αυτόματη μετάφραση, σύνδεση και ενοποίηση των διαφόρων γλωσσών μεταξύ τους. Θέλετε να εκτελέσετε τον κώδικα Python στο πρόγραμμα περιήγησής σας; Υπάρχουν πολλές διαφορετικές επιλογές τώρα και πιθανώς περισσότερες έρχονται. Η Java έχει μια κλάση ScriptEngine που θα αξιολογήσει τη JavaScript. Υπάρχουν εκατοντάδες διαφορετικές γλώσσες που θα λειτουργούν ως JavaScript μέσω μετάφρασης ή εξομοίωσης.

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

Διαβάστε περισσότερα για την ανάπτυξη λογισμικού:

  • Τα καλύτερα μαθήματα προγραμματισμού κατά το κλείδωμα
  • Τι είναι το CI / CD; Η συνεχής ολοκλήρωση και η συνεχής παράδοση εξηγούνται
  • Τι είναι η ευέλικτη μεθοδολογία; Εξήγησε η σύγχρονη ανάπτυξη λογισμικού
  • Τι είναι το API; Επεξήγησαν διεπαφές προγραμματισμού εφαρμογών
  • Η καλύτερη γλώσσα προγραμματισμού για να μάθετε τώρα
  • Οι πιο πολύτιμες δεξιότητες προγραμματιστών λογισμικού το 2020
  • 6 καλύτερες γλώσσες προγραμματισμού για ανάπτυξη AI
  • Οι 24 ρόλοι προγραμματιστών με τις υψηλότερες πληρωμές το 2020
  • Προγραμματιστής πλήρους στοίβας: Τι είναι και πώς μπορείτε να γίνετε ένας
  • 9 παγίδες καριέρας που πρέπει να αποφεύγει κάθε προγραμματιστής λογισμικού