Σχεδιασμός και υλοποίηση πληροφοριακού συστήματος διαχείρισης εθελοντών και απινιδωτών
41
2.2.7 Webpack
To Webpack [26], αποτελεί ένα εργαλείο το οποίο ενώνει πολλαπλά αρχεία (Javascript,
CSS, κ.α.) σε ένα ή δύο κύρια αρχεία του ίδιου είδους (static module bundler). Είναι ίσως το
κορυφαίο εργαλείο στο είδος του αυτή την στιγμή και τρομερά σημαντικό διότι, καταφέρνει
και ελαττώνει σε πολύ μεγάλο βαθμό το μέγεθος των αρχείων που ουσιαστικά είναι η
εφαρμογή, αποτέλεσμα με άμεση αντανάκλαση στην ταχύτητα και απόκριση της εφαρμογής.
Έρχεται προ εγκατεστημένο πλέον με έτοιμες ρυθμίσεις (pre-build) στα περισσότερα
frameworks (και στο Laravel) ή έτοιμα πακέτα για δημιουργία εφαρμογών, διότι ο αριθμός
των βιβλιοθηκών που χρησιμοποιούνται είναι δυσανάλογα μεγάλος για το τελικό μέγεθος της
εφαρμογής που απαιτείται.
2.2.8 Babel
To Babel [27], αποτελεί έναν μεταγλωττιστή της Javascript (compiler), που μεταφράζει
τις καινούργιες εκδόσεις της γλώσσας στην γνωστή σε όλους τους browsers ES5, ώστε η
διαδικτυακή εφαρμογή να τρέχει το ίδιο ομαλά σε όλους τους browsers. Αναλύθηκε
προηγουμένως στην ενότητα της Javascript, το πρόβλημα που επιλύει. Είναι το κορυφαίο
εργαλείο στο είδος του, ακριβώς όπως και με το webpack, έρχεται προ εγκατεστημένο παντού
και πιο συγκεκριμένα, υπάρχει έτοιμη η σύνδεση του με το webpack, ώστε ο προγραμματιστής
να μην χρειαστεί να επέμβει ριζικά. Αρκετά εργαλεία που αναφέρθηκαν προηγουμένως,
χρησιμοποιούν καινούργιες λειτουργίες της Javascript οπότε καθιστά απαραίτητη η προσθήκη
του.
2.2.9 Pusher API
Το Pusher API [28], αποτελεί μία βιβλιοθήκη τρίτου προσώπου (third-party library),
που καθιστά εφικτή την αποστολή διάφορων συμβάντων (events), με σκοπό την ενημέρωση
του εκάστοτε χρήστη σε πραγματικό χρόνο (Real-Time). Δημιουργεί μία μοναδική εμπειρία
χρήσης (UI experience) καθώς ο χρήστης θα λάβει ειδοποίηση για κάποιο συμβάν χωρίς την
ανανέωση της εφαρμογής. Τα events μπορεί να είναι ενέργειες που πραγματοποιούνται στον