H JavaScript παραμένει η πιο δημοφιλής γλώσσα προγραμματισμού. Βασικό της χαρακτηριστικό είναι τα πολλά διαφορετικά frameworks τα οποία ανταγωνίζονται μεταξύ τους για την...προτίμηση των προγραμματιστών!
Τι είναι όμως ένα framework? Πρόκειται για μια συλλογή από διάφορες Javascript βιβλιοθήκες κώδικα με βασικό σκοπό να διευκολύνει πολλές από τις διαδικασίες που θα χρησιμοποιήσει/υλοποιήσει ο προγραμματιστής.
Για να δούμε μερικά από τα πιο δημοφιλή από αυτά, ξεκινώντας από τα front-end frameworks
Angular
Το Angular είναι ένα από τα ισχυρότερα και δημοφιλέστερα frameworks αυτή την στιγμή.
Μερικά από τα βασικά χαρακτηριστικά του είναι :
1. Η ικανότητα του να προσφέρει προχωρημένες ιστοσελίδες με high-end επιδόσεις.
2. Μπορεί να χρησιμοποιηθεί σε πολλά διαφορετικά λειτουργικά συστήματα
3. Προσφέρει ένα εύκολα κατανοητό και πολύ προχωρημένο API
4. Προσφέρει την ικανότητα για αυτόματη συμπλήρωση εντολών.
5. Βρίσκει απευθείας τα λάθη στον κώδικα και προσφέρει απαντήσεις.
Τα υπέρ του Angular Framework :
1. Τέλειος συγχρονισμός μεταξύ model και view
2. Οι αλλαγές φαίνονται απευθείας στο view.
3.Ι κανότητα να ξεχωρίζει το data από view.
Τα κατά του :
1. Σχετικά βαρύ framework.
2. Αρκετά σύνθετο στην εκμάθηση
3. Θα πρέπει ο προγραμματιστής να μάθει το MVC πρότυπο (Model View Controller)
Vue JS
Το vue JS είναι ένα ακόμα πολύ δημοφιλές framework το οποίο συχνά χρησιμοποιείται για cross-platform εφαρμογές και ιστοσελίδες. Επίσης είναι ιδανικό για την δημιουργία ισχυρών single page applications ή αλλιώς SPA’s.
Μερικά από τα βασικά χαρακτηριστικά του Vue JS είναι :
1.Μια αποδοτική λύση για εικονικά Document Object Models views (ή αλλιώς DOMs).
2.Έρχεται με δικό του built-in component το οποίο βοηθάει στα CSS transitions και animations.
3.Επιλογές αμφίδρομης δέσμευσης δεδομένων (data binding).
4.Εύκολο στην εκμάθηση και στην κατανόηση.
Τα υπέρ του Vue JS framework :
1.Εύκολη ενσωμάτωση.
2.Μικρό σε μέγεθος.
3.Προσφέρει αμφίδρομη επικοινωνία.
4.“Ευλύγιστο” σαν framework.
Τα κατά του :
1.Έλλειψη από ουσιώδη plugins.
2.Ακατάλληλο για εκτεταμένο scaling.
3.Έχει γλωσσικά εμπόδια.
4.Μεγάλη ευλυγισία που λειτουργεί εναντίον του.
React JS
Το React JS είναι ένα open-source framework το οποίο συχνά χρησιμοποιείται για την κατασκευή απαιτητικών και ενεργών περιβαλλόντων χρήστη (User Interfaces ή αλλιώς UI). Είναι γνωστό ότι το React είναι πολύ φιλικό με τις μηχανές αναζήτησής και γι’ αυτό προτιμάται από developers που κατασκευάζουν ιστοσελίδες ηλεκτρονικού εμπορίου.
Μερικά από τα βασικά χαρακτηριστικά του React:
1. Εικονικό Document Object Model (DOM).
2. Χρησιμοποιεί μονόπλευρη δέσμευση δεδομένων (data binding).
3. Φτιαγμένο από πολλά components τα οποία ξαναχρησιμοποιούνται.
4. Εκπληκτικές cross-platform επιδόσεις.
Τα υπέρ του React:
1. Πολύ απλό στην χρήση και στην εκμάθηση του.
2. Έρχεται με ένα σετ από πολύ χρήσιμα και πρακτικά εργαλεία.
3. Βοηθά στην βελτιστοποίηση των επιδόσεων.
4. Μικρό σε μέγεθος.
5.Ι κανότητα να τεστάρουμε και να κάνουμε γρήγορο debugging.
Τα κατά του React:
1. Υπερβολικά συχνές ενημερώσεις οι οποίες αναγκάζουν τους developers να συνεχίζουν να διαβάζουν τις τελευταίες αλλαγές.
2. Σαν framework δεν είναι περιεκτικό, που σημαίνει ότι θα πρέπει να χρησιμοποιηθεί και με άλλα frameworks.
Στα back-end frameworks τώρα έχουμε τα:
Node JS
Το Node είναι ένα back-end open source framework το οποίο δουλεύει εκτός του browser μας. Δημιουργήθηκε το 2009 και βοηθά στο να αναπτυχθούν εφαρμογές ιστού οι οποίες βασίζονται μόνο σε μία γλώσσα προγραμματισμού.
Μερικά από τα βασικά χαρακτηριστικά του Node:
1. Γρήγορο στην χρήση και ενσωμάτωση του.
2. Ικανότητα για εκτεταμένο scale-up.
3. Ασύγχρονη εκτέλεση των threads χωρίς μπλοκάρισμα.
4. Μπορεί να χειριστεί μεγάλο όγκο συνεχόμενων συνδέσεων.
Τα υπέρ του Node:
1. Εύκολο στην εκμάθηση του, αλλά και στην ενσωμάτωση
2. Έχει πλούσιο οικοσύστημα με πολλά δωρεάν εργαλεία.
3. Αυξάνει την παραγωγικότητα των developers.
4. Αυξάνει τις μετατροπές (conversion growth)
Τα κατά του Node:
1. Δυσκολία στο να επεξεργάζεται CPU tasks.
2. Χρειάζεται συνεχή callbacks τα οποία επηρεάζουν την ποιότητα του κώδικα μας.