Το EITC/WD/JSF JavaScript Fundamentals είναι το ευρωπαϊκό πρόγραμμα πιστοποίησης πληροφορικής σχετικά με τις βασικές αρχές της γλώσσας προγραμματισμού ιστότοπων JavaScript.
Το πρόγραμμα σπουδών των EITC/WD/JSF JavaScript Fundamentals επικεντρώνεται σε πρακτικές δεξιότητες στον προγραμματισμό ιστότοπων JavaScript που οργανώνονται σε 15 ενότητες, που περιλαμβάνουν περιεκτικό διδακτικό περιεχόμενο βίντεο ως αναφορά για αυτήν την πιστοποίηση EITC.
Το JavaScript είναι μια γλώσσα προγραμματισμού που επιτρέπει την διαδραστική ανάπτυξη ιστοσελίδων και θεωρείται ουσιαστικό μέρος των σύγχρονων εφαρμογών ιστού. Παράλληλα με το HTML και το CSS, η JavaScript είναι μία από τις βασικές τεχνολογίες του World Wide Web. Η συντριπτική πλειονότητα των ιστότοπων το χρησιμοποιούν για συμπεριφορά σελίδας από την πλευρά του πελάτη και όλα τα μεγάλα προγράμματα περιήγησης στο Web διαθέτουν έναν ειδικό μηχανισμό JavaScript για να το εκτελέσουν. Ως γλώσσα πολλαπλών παραδειγμάτων, το JavaScript υποστηρίζει στιλ προγραμματισμού, λειτουργικό και επιτακτικό που βασίζονται σε εκδηλώσεις. Διαθέτει διεπαφές προγραμματισμού εφαρμογών (API) για εργασία με κείμενο, ημερομηνίες, κανονικές εκφράσεις, τυπικές δομές δεδομένων και το μοντέλο αντικειμένου εγγράφου (DOM). Παρόλο που υπάρχουν ομοιότητες μεταξύ JavaScript και Java, συμπεριλαμβανομένου του ονόματος γλώσσας, της σύνταξης και των αντίστοιχων τυπικών βιβλιοθηκών, οι δύο γλώσσες είναι διακριτές και διαφέρουν σημαντικά στο σχεδιασμό. Οι μηχανές JavaScript χρησιμοποιήθηκαν αρχικά μόνο σε προγράμματα περιήγησης ιστού, αλλά αποτελούν πλέον βασικά στοιχεία άλλων συστημάτων χρόνου εκτέλεσης, όπως το Node.js και το Deno. Αυτά τα συστήματα χρησιμοποιούνται για την κατασκευή διακομιστών και είναι επίσης ενσωματωμένα σε πλαίσια, όπως το Electron και το Cordova, για τη δημιουργία μιας ποικιλίας εφαρμογών.
Το πρότυπο ECMAScript δεν περιλαμβάνει είσοδο/έξοδο (I/O), όπως εγκαταστάσεις δικτύωσης, αποθήκευσης ή γραφικών. Στην πράξη, το πρόγραμμα περιήγησης ιστού ή άλλο σύστημα χρόνου εκτέλεσης παρέχει API JavaScript για I/O.
Το πρόγραμμα περιήγησης ιστού μωσαϊκών κυκλοφόρησε το 1993. Ως το πρώτο πρόγραμμα περιήγησης με γραφικό περιβάλλον χρήστη προσβάσιμο σε μη τεχνικά άτομα, έπαιξε εξέχοντα ρόλο στην ταχεία ανάπτυξη του νεοσύστατου World Wide Web. Οι κορυφαίοι προγραμματιστές της Mosaic ίδρυσαν στη συνέχεια την εταιρεία Netscape, η οποία κυκλοφόρησε ένα πιο γυαλισμένο πρόγραμμα περιήγησης, το Netscape Navigator, το 1994. Το Navigator έγινε γρήγορα το πιο χρησιμοποιημένο πρόγραμμα περιήγησης. Κατά τη διάρκεια αυτών των διαμορφωτικών ετών του Ιστού, οι ιστοσελίδες θα μπορούσαν να είναι στατικές μόνο, χωρίς να υπάρχει δυνατότητα δυναμικής συμπεριφοράς μετά τη φόρτωση της σελίδας στο πρόγραμμα περιήγησης. Υπήρχε η επιθυμία στην αναπτυσσόμενη σκηνή ανάπτυξης ιστού να καταργηθεί αυτός ο περιορισμός, οπότε το 1995, η Netscape αποφάσισε να προσθέσει μια γλώσσα δέσμης ενεργειών στο Navigator. Ακολούθησαν δύο διαδρομές για να το επιτύχουν αυτό: συνεργασία με την Sun Microsystems για την ενσωμάτωση της γλώσσας προγραμματισμού Java, ενώ προσέλαβαν επίσης τον Brendan Eich για την ενσωμάτωση της γλώσσας Scheme. Η διαχείριση του Netscape αποφάσισε σύντομα ότι η καλύτερη επιλογή ήταν για τον Eich να επινοήσει μια νέα γλώσσα, με σύνταξη παρόμοια με την Java και λιγότερο σαν το Scheme ή άλλες υπάρχουσες γλώσσες σεναρίου. Παρόλο που η νέα γλώσσα και η εφαρμογή του διερμηνέα ονομάστηκαν επίσημα LiveScript όταν στάλθηκαν για πρώτη φορά ως μέρος της κυκλοφορίας του Navigator τον Σεπτέμβριο του 1995, το όνομα άλλαξε σε JavaScript τρεις μήνες αργότερα. Η επιλογή του ονόματος JavaScript προκάλεσε σύγχυση, μερικές φορές δίνοντας την εντύπωση ότι είναι ένα απόκομμα της Java. Δεδομένου ότι η Java ήταν η καυτή νέα γλώσσα προγραμματισμού εκείνη την εποχή, αυτό χαρακτηρίστηκε ως τέχνασμα μάρκετινγκ από τη Netscape για να δώσει τη δική της νέα γλώσσα.
Η Microsoft έκανε το ντεμπούτο του στον Internet Explorer το 1995, οδηγώντας σε πόλεμο του προγράμματος περιήγησης με το Netscape. Στο μπροστινό μέρος της JavaScript, η Microsoft μετέτρεψε τον διερμηνέα Navigator για να δημιουργήσει τη δική του, που ονομάζεται JScript. Το JScript κυκλοφόρησε για πρώτη φορά το 1996, παράλληλα με την αρχική υποστήριξη για CSS και επεκτάσεις σε HTML. Κάθε μία από αυτές τις εφαρμογές ήταν αισθητά διαφορετική από τις αντίστοιχες στο Navigator. Αυτές οι διαφορές καθιστούσαν δύσκολο για τους προγραμματιστές να κάνουν τους ιστότοπούς τους να λειτουργούν καλά και στα δύο προγράμματα περιήγησης, οδηγώντας σε ευρεία χρήση των λογότυπων "με την καλύτερη προβολή στο Netscape" και "με την καλύτερη προβολή στον Internet Explorer" για αρκετά χρόνια.
Τον Νοέμβριο του 1996, η Netscape υπέβαλε JavaScript στην ECMA International, ως σημείο εκκίνησης για μια τυπική προδιαγραφή στην οποία θα μπορούσαν να συμμορφωθούν όλοι οι προμηθευτές προγραμμάτων περιήγησης. Αυτό οδήγησε στην επίσημη κυκλοφορία της πρώτης προδιαγραφής γλώσσας ECMAScript τον Ιούνιο 1997.
Η διαδικασία προτύπων συνεχίστηκε για λίγα χρόνια, με την κυκλοφορία του ECMAScript 2 τον Ιούνιο 1998 και του ECMAScript 3 τον Δεκέμβριο του 1999. Οι εργασίες για το ECMAScript 4 ξεκίνησαν το 2000.
Εν τω μεταξύ, η Microsoft κέρδισε μια ολοένα και πιο κυρίαρχη θέση στην αγορά του προγράμματος περιήγησης. Στις αρχές της δεκαετίας του 2000, το μερίδιο αγοράς του Internet Explorer έφτασε το 95%. Αυτό σήμαινε ότι το JScript έγινε το de facto πρότυπο για scripting από τον πελάτη στον Ιστό.
Η Microsoft συμμετείχε αρχικά στη διαδικασία προτύπων και εφάρμοσε ορισμένες προτάσεις στη γλώσσα JScript, αλλά τελικά σταμάτησε να συνεργάζεται για την εργασία ECMA. Συνεπώς, το ECMAScript 4 ήταν στρογγυλό.
Κατά την περίοδο της κυριαρχίας του Internet Explorer στις αρχές της δεκαετίας του 2000, το scripting από την πλευρά του πελάτη ήταν στάσιμο. Αυτό άρχισε να αλλάζει το 2004, όταν ο διάδοχος του Netscape, Mozilla, κυκλοφόρησε το πρόγραμμα περιήγησης Firefox. Ο Firefox έγινε δεκτός από πολλούς, λαμβάνοντας σημαντικό μερίδιο αγοράς από τον Internet Explorer. Το 2005, η Mozilla έγινε μέλος της ECMA International και ξεκίνησε η δουλειά με το πρότυπο ECMAScript for XML (E4X). Αυτό οδήγησε το Mozilla να συνεργάζεται από κοινού με τη Macromedia (αργότερα αποκτήθηκε από την Adobe Systems), οι οποίοι εφάρμοζαν το E4X στη γλώσσα ActionScript 3, το οποίο βασίστηκε σε ένα σχέδιο ECMAScript 4. Ο στόχος έγινε η τυποποίηση ActionScript 3 ως το νέο ECMAScript 4. Για το σκοπό αυτό, η Adobe Systems κυκλοφόρησε την εφαρμογή Tamarin ως έργο ανοιχτού κώδικα. Ωστόσο, τα Tamarin και ActionScript 3 ήταν πολύ διαφορετικά από το καθιερωμένο scripting από την πλευρά του πελάτη και χωρίς συνεργασία από τη Microsoft, το ECMAScript 4 δεν έφτασε ποτέ στο καρπό.
Εν τω μεταξύ, σημειώθηκαν πολύ σημαντικές εξελίξεις σε κοινότητες ανοιχτού κώδικα που δεν συνδέονται με το έργο ECMA. Το 2005, ο Jesse James Garrett κυκλοφόρησε μια λευκή βίβλο στην οποία επινόησε τον όρο Ajax και περιέγραψε ένα σύνολο τεχνολογιών, εκ των οποίων η JavaScript ήταν η ραχοκοκαλιά, για τη δημιουργία εφαρμογών ιστού όπου τα δεδομένα μπορούν να φορτωθούν στο παρασκήνιο, αποφεύγοντας την ανάγκη για πλήρη σελίδα επαναφορτώνει. Αυτό πυροδότησε μια περίοδο αναγέννησης του JavaScript, με επικεφαλής τις βιβλιοθήκες ανοιχτού κώδικα και τις κοινότητες που σχηματίστηκαν γύρω τους. Δημιουργήθηκαν πολλές νέες βιβλιοθήκες, όπως jQuery, Prototype, Dojo Toolkit και MooTools.
Η Google έκανε το ντεμπούτο της στο πρόγραμμα περιήγησης Chrome το 2008, με τη μηχανή JavaScript V8 που ήταν ταχύτερη από τον ανταγωνισμό της. Η βασική καινοτομία ήταν η συλλογή just-in-time (JIT), οπότε άλλοι προμηθευτές προγραμμάτων περιήγησης χρειάστηκαν να αναθεωρήσουν τους κινητήρες τους για το JIT.
Τον Ιούλιο του 2008, αυτά τα διαφορετικά κόμματα συγκεντρώθηκαν για μια διάσκεψη στο Όσλο. Αυτό οδήγησε στην τελική συμφωνία στις αρχές του 2009 να συνδυάσει όλες τις σχετικές εργασίες και να προωθήσει τη γλώσσα προς τα εμπρός. Το αποτέλεσμα ήταν το πρότυπο ECMAScript 5, που κυκλοφόρησε τον Δεκέμβριο του 2009.
Οι φιλόδοξες εργασίες για τη γλώσσα συνεχίστηκαν για αρκετά χρόνια, με αποκορύφωμα μια εκτενή συλλογή προσθηκών και βελτιώσεων που επισημοποιήθηκαν με τη δημοσίευση του ECMAScript 6 το 2015. Το σχέδιο προδιαγραφών διατηρείται επί του παρόντος ανοιχτά στο GitHub και οι εκδόσεις ECMAScript παράγονται μέσω τακτικών ετήσιων στιγμιότυπων. Οι πιθανές αναθεωρήσεις στη γλώσσα εξετάζονται μέσω μιας ολοκληρωμένης διαδικασίας πρότασης. Τώρα, αντί για αριθμούς έκδοσης, οι προγραμματιστές ελέγχουν την κατάσταση των επερχόμενων λειτουργιών ξεχωριστά.
Το τρέχον οικοσύστημα JavaScript διαθέτει πολλές βιβλιοθήκες και πλαίσια, καθιερωμένες πρακτικές προγραμματισμού και αυξημένη χρήση της JavaScript εκτός των προγραμμάτων περιήγησης ιστού. Επιπλέον, με την αύξηση των εφαρμογών μίας σελίδας και άλλων ιστοτόπων με βαριά JavaScript, έχουν δημιουργηθεί αρκετοί transpilers για να βοηθήσουν στη διαδικασία ανάπτυξης.
Για να εξοικειωθείτε λεπτομερώς με το πρόγραμμα σπουδών πιστοποίησης, μπορείτε να επεκτείνετε και να αναλύσετε τον παρακάτω πίνακα.
Το Πρόγραμμα Σπουδών Πιστοποίησης Βασικών Πιστοποιήσεων JavaScript EITC/WD/JSF παραπέμπει σε διδακτικό υλικό ανοιχτής πρόσβασης σε μορφή βίντεο. Η μαθησιακή διαδικασία χωρίζεται σε μια δομή βήμα προς βήμα (προγράμματα -> μαθήματα -> θέματα) που καλύπτει σχετικά μέρη του προγράμματος σπουδών. Παρέχονται επίσης απεριόριστες συμβουλές με ειδικούς του τομέα.
Για λεπτομέρειες σχετικά με τη διαδικασία πιστοποίησης ελέγξτε Πως δουλεύει.
Πόροι αναφοράς του προγράμματος σπουδών
Έγγραφα Web MDN - JavaScript
https://developer.mozilla.org/en-US/docs/Web/JavaScript
MDN Web Docs Learning Materials - JavaScript - Δυναμική δέσμη ενεργειών από την πλευρά του πελάτη
https://developer.mozilla.org/en-US/docs/Learn/JavaScript
Πρότυπο W3C για Σχεδίαση και Εφαρμογές Ιστού - API Ιστού JavaScript
https://www.w3.org/standards/webdesign/script
W3Schools - Εκμάθηση JavaScript
https://www.w3schools.com/js/default.asp
Το σύγχρονο σεμινάριο JavaScript
https://javascript.info/
CodePen: Online Code Editor και Front End Web Developer
https://codepen.io/
Κατεβάστε το πλήρες προπαρασκευαστικό υλικό αυτομάθησης εκτός σύνδεσης για το πρόγραμμα JavaScript Fundamentals EITC/WD/JSF σε αρχείο PDF
Προπαρασκευαστικά υλικά EITC/WD/JSF – τυπική έκδοση
Προπαρασκευαστικό υλικό EITC/WD/JSF – εκτεταμένη έκδοση με ερωτήσεις αναθεώρησης