#Webcomponents και προσβασιμότητα

Γενικές πληροφορίες για τα Webcomponents

Εισαγωγή

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

Τα λεγόμενα Web Component μπορούν να διορθωθούν, τα οποία είναι επαναχρησιμοποιούμενα συστατικά HTML που μπορούν να χρησιμοποιηθούν ανεξάρτητα από το πλαίσιο. Τα τυποποιημένα Web Component (2012) υποστηρίζεται τώρα από κάθε κοινό φυλλομετρητή.

Τι είναι τα Web Components;

Τα Web Components είναι μπλοκ κώδικα που καλύπτουν την εσωτερική δομή των στοιχείων HTML, συμπεριλαμβανομένων των CSS και JavaScript. Επίσης, επιτρέπουν στον αντίστοιχο κώδικα να χρησιμοποιεί οποιοδήποτε μέρος σε ιστότοπους και εφαρμογές ιστού.

Η ιδέα αναπτύχθηκε από μια ομάδα εργασίας της Κοινοπραξίας World Wide Web (W3C), η οποία ιδρύθηκε το 1994 και οδηγήθηκε μέχρι σήμερα από τον Τιμ Μπέρνερς Λι. Έχει δεσμευτεί έντονα να τυποποιήσει όλες τις τεχνολογίες στοιχειώδους ύφανσης από τότε. Το μοντέλο Web Components που δημοσιεύθηκε το 2012 προβλέπει κυρίως τις ακόλουθες τέσσερις προδιαγραφές για τη δημιουργία των χρήσιμων στοιχείων HTML:

  1. Custom elements: JavaScript-Apis για τον ορισμό των προσαρμοσμένων στοιχείων.
  2. Shadow DOM: απομονωμένο τμήμα κώδικα εντός του τυπικού DOM.
  3. HTML-template: Πρότυπα σήμανσης που δεν εμφανίζονται στην οθόνη αλλά χρησιμοποιούνται μόνο ως βάση για Custom elements.

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

Γιατί συνιστάται να χρησιμοποιήσετε τα Webcomponents;

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

Για το λόγο αυτό, το World Wide Web Consortium (W3C) ανάπτυξε ένα καθολικό πλαίσιο για την απλή και πρωταρχική επαναχρησιμοποίηση του HTML, του CSS και του κώδικα JavaScript.

Δεδομένου ότι τα Webcomponents χαρακτηρίζονται από μια απλή σύνταξη, η οποία μπορεί να μάθει καθένας γρήγορα, οι αρχάριοι προγραμματισμού επωφελούνται επίσης από το πρότυπο W3C. Τα τελευταία χρόνια, η Google εργάζεται ως μέρος του "Polymer Project" για την ανάπτυξη βιβλιοθηκών και προτύπων για τον προγραμματισμό των Webcomponents.

Webcomponents και προσβασιμότητα

Τα Webcomponents δηλαδή οι υποκείμενες τεχνολογίες (Custom elements, Shadow DOM και HTML-Templates) επιτρέπουν την εφαρμογή των User Interface elements χωρίς εμπόδια, απόλυτα δυναμικά και η επανειλημμένη χρήση τους είναι και αυτή δυνατόν. Η έγκυρη ερμηνεία τους προϋποθέτεται για να μην δημιουργηθούν προβλήματα.

Αναμφίβολα η πρόκληση είναι να αποκτήσετε πρόσβαση στο περιεχόμενο των υποκείμενων τεχνολογιών (Custom elements, Shadow DOM και HTML-Templates), δηλ. μέσα από το τυπικό DOM. Μόνο τότε μπορούν τα προγράμματα οθόνης όπως NVDA και JAWS να ερμηνεύουν τον κώδικα χωρίς προβλήματα.

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