Ή τουλάχιστον έτσι υποτίθεται ότι είναι! Ξέρουμε τη διαδικασία. Το μίσος για το JavaScript δεν ήρθε από το πουθενά. Η έλλειψη διαφορετικών γλωσσών για χρήση στο διαδίκτυο αποτελούσε από μόνη της ζήτημα για μεγάλο χρονικό διάστημα.
Θυμάμαι ότι όταν άρχισα να προγραμματίζω "πραγματικά", το Flash επρόκειτο να εγκαταλειφθεί και θα μέναμε χωρίς καμία διαδραστική πτυχή στους browsers μας, εκτός από αυτές που γίνονται με τη χρήση JavaScript. Silverlight; Κανείς δεν το θυμάται αυτό. Ή μήπως το ActiveX; Έχουμε ξεπεράσει προ πολλού τις ημέρες που αυτές οι τεχνολογίες είχαν την τιμητική τους και τώρα, ίσως περισσότερο από ποτέ, το JavaScript βρίσκεται στη δόξα του.
Είχα την ευκαιρία να εργαστώ στο JavaScript στο backend κάνοντας απλά API (express + κόμβος). Έχω κάνει κάποιες βασικές εφαρμογές για το touchpad (ReactNative) χρησιμοποιώντας JS. Στη συνέχεια σήκωσα κάποιο φορτίο από το κύριο νήμα χρησιμοποιώντας εργάτες υπηρεσιών. Έφτιαξα εφαρμογές frontend (React, Vue, AngularJS) και το μόνο πράγμα που μου λείπει είναι οι εφαρμογές γραφείου (Electron) - όλα ενσωματωμένα στο JavaScript!
Πώς γίνεται να υπάρχουν ακόμα άνθρωποι που πιστεύουν ότι ο JavaScript είναι νεκρός;
Για όσους προτιμούν πιο στατικές γλώσσες, το JavaScript θα είναι πάντα ένα έκτρωμα χωρίς typescript. Μόνο αν προστεθεί, η γλώσσα μπορεί να γίνει αποδεκτή από αυτούς. Οι προτιμήσεις των προγραμματιστών ήταν πολύ ισχυρές όταν πολλές κωδικός γραμμένο πίσω στο χρόνο ήταν στο Java ή C.
Όταν τους ζητήθηκε να κάνουν μια εργασία εκτός του πεδίου εφαρμογής της γλώσσας τους, αυτοί οι προγραμματιστές μπορεί να ήταν λίγο χαμένοι.Αυτή η τριβή έχει πλέον επιλυθεί με τη χρήση μετατροπέων και άλλων χρήσιμων εργαλείων, όπως το προαναφερθέν TypeScript. Απλά φανταστείτε ότι πρέπει να εγκαταλείψετε τη γλώσσα που αγαπάτε και που σας έχει μεγαλώσει σαν ένα καλό ζευγάρι παπούτσια για το μπερδεμένο και όχι και τόσο άνετο ζευγάρι αυτών:

Γιατί λοιπόν να επιλέξω το JavaScript για το επόμενο έργο? Θέλω οι προγραμματιστές μου να αγαπούν τον κώδικα που γράφουν, όχι να τον μισούν με κάθε κύτταρο του σώματός τους!
Το JavaScript είναι καθολικό - όλα τα επαγγέλματα είναι άριστα, αλλά δεν έχει κανένα.
Ακόμη και οι προγραμματιστές ιστού προσπαθούν να βρουν τρόπους να απαλλαγούν από το JS με το WebAssembly. Στην ανάπτυξη κινητών συσκευών, δεν έχουμε μόνο τις native εφαρμογές αλλά και πράγματα όπως το Flutter που εισβάλλουν στο κάστρο. Αλλά όταν πρόκειται να φτιάξετε ένα έργο από την αρχή μέχρι το τέλος, η ομάδα συχνά πρέπει να είναι διαφορετικές.
Java + Angular, Python και React... Όλα αυτά τα έργα χρειάζονταν ως επί το πλείστον δύο προγραμματιστές που επικεντρώνονταν σε διαφορετικές πτυχές του κώδικα. Αν επιλέξετε τους JS devs, μπορούν πιθανότατα να μπουν μέσα και να επιλύσουν ένα ticket σχετικά με τη ΒΔ, καθώς και να διορθώσουν κάποια θέματα CSS και το analytics script που στοιχειώνει το Lighthouse score σας εδώ και αρκετό καιρό.
Φυσικά, ορισμένα έργα απαιτούν τα πράγματα που φέρνουν στο τραπέζι π.χ. η Java, η Python, η Go ή η Ruby, αλλά στο τέλος, όσο μεγαλύτερη είναι η ποικιλομορφία στα παραδείγματα, τόσο λιγότερο πιθανό είναι να ψάχνετε για προγραμματιστές που θα έρθουν να κάνουν την πραγματική δουλειά. Ας ρίξουμε μια γρήγορη ματιά στα στατιστικά στοιχεία:

Αυτό μας δείχνει ότι το JS δεν μοιάζει νεκρό - στην πραγματικότητα ανθίζει και γίνεται ένας νέος διεκδικητής στο αγορά. Με την παγκόσμια πανδημία, παρατήρησα ότι το περιβάλλον JS έχει γίνει ακόμα πιο δημοφιλές, έτσι στην επερχόμενη έρευνα και θα στοιχημάτιζα ότι το JS μπορεί να ξεπεράσει το 70%. Εάν σχεδιάζετε να εκτελέσετε ένα νέο έργο, μπορείτε να επικοινωνήσετε μαζί μας και θα σας πούμε ευχαρίστως γιατί το JS μπορεί να είναι ο τρόπος να πάτε!
Τα πλεονεκτήματα του JS
Σήμερα η JS έχει ωριμάσει από την κάμπια που ήταν κάποτε. Έχουμε νέες εκδόσεις που βγαίνουν σε λογικά χρονικά πλαίσια. Τα σφάλματα που αναφέρονται στους προμηθευτές των φυλλομετρητών φροντίζονται ASAP και τα αστεία για τα πακέτα και τα frameworks που βγαίνουν κάθε ώρα είναι κάπως αληθινά.
Με μια γλώσσα που χρησιμοποιείται τόσο ευρέως από τόσους πολλούς ανθρώπους, είναι απλώς θέμα χρόνου να βρείτε τις καλύτερες λύσεις για να χειριστείτε τα προβλήματα που έχετε να αντιμετωπίσετε. Τον τελευταίο καιρό εργάζομαι πάνω στο IoT εφαρμογή που βοηθά τους ανθρώπους που βρίσκονται σε κίνδυνο να ειδοποιήσουν ορισμένες υπηρεσίες σχετικά με τον κίνδυνο που διατρέχει η ζωή τους. Αν δεν υπήρχε το JavaScript, δεν θα μπορούσα να εργαστώ σε μια τέτοια πρωτοβουλία. Για μένα, το JS άνοιξε πολλές πόρτες και αυτό μπορεί να ισχύει και για τους προγραμματιστές σας!
Μερικά πλεονεκτήματα που νομίζω ότι μπορεί να σας μετατρέψουν σε υποστηρικτές του JS:
- πολλαπλές υποστηριζόμενες πλατφόρμες (διαδίκτυο, κινητά, IoT, επιφάνεια εργασίας, ψυγείο, διαστημικό σκάφος HUD),
- ένα πακέτο για οτιδήποτε (είτε πρόκειται για χειρισμό ημερομηνιών είτε για παραγωγή αστείων),
- ένας js dev είναι ένα ελβετικό μαχαίρι,
- συνεχής βελτίωση της γλώσσας,
- σπουδαία κοινότητα πάντα πρόθυμη να βοηθήσει (ή να επισημάνει θέματα ως διπλά),
- με εργαλεία CLI, μπορείτε να δημιουργήσετε εφαρμογές σχεδόν αμέσως.
Σχόλια
Υπάρχουν κάποια όρια στο τι μπορεί να κάνει το JavaScript, αλλά υποθέτω ότι αν είστε πεισματάρης και έχετε αρκετή μνήμη RAM, καφέ και εγκεφαλικά κύτταρα στη διάθεσή σας, τότε μπορείτε να κάνετε απολύτως τα πάντα με αυτό.
Διαβάστε περισσότερα:
Γιατί θα πρέπει (πιθανώς) να χρησιμοποιήσετε την Typescript
Πώς να μην σκοτώσετε ένα έργο με κακές πρακτικές κωδικοποίησης;
Στρατηγικές άντλησης δεδομένων στο NextJS