Οι καλύτερες δημιουργίες στατικών ιστότοπων και πότε πρέπει να τις επιλέξετε πάνω από ένα CMS

Πίσω στην ημέρα, οι ιστοσελίδες ήταν στατικοί ιστότοποι, με μόνο HTML και CSS (και αργότερα κάποια JavaScript). Προσπαθήστε να θυμηθείτε τι σημαίνει αυτό.

Δεν υπήρχε κωδικός διακομιστή ή βάση δεδομένων. Το πρόγραμμα περιήγησής σας κατέβασε και εμφανίζει ένα αρχείο HTML που φιλοξενείται κάπου. Η ανάπτυξη έγινε απευθείας στα αρχεία κειμένου ή μέσω προγραμμάτων όπως το Dreamweaver.

Η ανάπτυξη του διαδικτύου κέρδισε επιτέλους το ρυθμό και, μέχρι τώρα, δεν έχει σταματήσει να επιταχύνεται. Σε κάποιο σημείο, εμφανίστηκε η έννοια του Συστήματος Διαχείρισης Περιεχομένου (CMS). Στη συνέχεια, νέοι τρόποι ανάπτυξης πυλών, ιστολογίων και ιστότοπων μάρκετινγκ αναπτύχθηκαν και ευημερούσαν. Το κάνουν ακόμα, με το WordPress να είναι η κορυφαία επιλογή CMS αυτή τη στιγμή.

Ένα CMS μπορεί να λύσει πολλά προβλήματα, τόσο από την άποψη του προγραμματιστή είτε του διαχειριστή. Αλλά υπάρχουν ορισμένοι λόγοι για να μην χρησιμοποιήσετε έναν από αυτούς και να επιστρέψετε σε έναν παλιό, παλιό φίλο.

Η επιλογή ενός CMS για ένα συγκεκριμένο έργο θα απαιτήσει αυστηρές προδιαγραφές και εξαρτήσεις. Μια τυπική εγκατάσταση του WordPress θα χρειαστεί έναν διακομιστή ιστού όπως το Apache, το PHP με διάφορες επεκτάσεις και τη βάση δεδομένων MySQL. Όλα αυτά πρέπει να ενημερώνονται και να συντηρούνται. Όμως, σε ορισμένες περιπτώσεις, αυτές οι διαδικασίες μπορούν ακόμη και να προκαλέσουν περισσότερα προβλήματα.

Ένας από τους πιο σημαντικούς παράγοντες για την ανάπτυξη ιστού σήμερα είναι η ασφάλεια. Αυτό, δυστυχώς, είναι ένα από τα πιο σημαντικά μειονεκτήματα των CMS. Η χρήση ενός CMS είναι σαν να κάνετε τον εαυτό σας ευάλωτο σε κυβερνοεπιθέσεις. Ο αριθμός των τρωτών σημείων που ανοίγετε εσείς αυξάνεται με τα πρόσθετα που εγκαθιστάτε και χρησιμοποιείτε. (Τα πρόσθετα είναι ο πραγματικός λόγος για τη χρήση CMS στην πρώτη θέση.)

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

Έτσι, δημιουργώντας έναν στατικό ιστότοπο, αυτά τα προβλήματα καθίστανται ξεπερασμένα. Ένας στατικός ιστότοπος αποτελείται μόνο, όπως υποδηλώνει το όνομα, στατικά αρχεία. Όπως ορισμένα αρχεία HTML και CSS και λίγο JavaScript.

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

Οι πραγματικές σελίδες έχουν ήδη δημιουργηθεί και ίσως ελαχιστοποιηθούν. Από την άποψη της απόδοσης, φαίνεται να είναι πολύ καλύτερα από οποιαδήποτε λύση που έχει αποθηκευτεί στο CMS.

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

Ωστόσο, οι στατικοί ιστότοποι έχουν και κάποια μειονεκτήματα. Βρίσκεστε ουσιαστικά στο πίσω μέρος του ιστού. Το πιο σημαντικό, χάνετε τη διαδραστικότητα με τον χρήστη - πράγματα όπως προφίλ χρηστών, αγαπημένα και προτεινόμενες αναγνώσεις. Υπάρχουν τρόποι για να προσθέσετε μερικές από αυτές τις δυνατότητες - όπως σχολιασμός μέσω της πλατφόρμας Disqus - αλλά αυτές δεν είναι βέλτιστες.

Το μεγαλύτερο χαρακτηριστικό που λείπει από αυτές τις γεννήτριες είναι η έλλειψη διαχειριστικού περιβάλλοντος χρήστη. (Αν και είναι εύλογο να υποθέσουμε ότι θα υπάρξει λύση για αυτό σε κάποιο σημείο.) Μερικοί περισσότεροι τεχνικοί μπορεί να μην δυσκολεύονται να δημιουργήσουν νέα αρχεία σε κατάλληλους φακέλους και να συνδέσουν στοιχεία όπως εικόνες. Ωστόσο, ως επί το πλείστον, οι δημιουργοί μη τεχνικού περιεχομένου μπορεί να θεωρήσουν ότι η έλλειψη ενός διαχειριστή διεπαφής χρήστη δεν είναι ζωντανή.

Πρόκειται κυρίως για μια απόφαση σχεδιασμού έργου με βάση τις απαιτήσεις της. Για πολλούς ιστότοπους, ένα CMS είναι σίγουρα υπερβολικό.

Λαμβάνοντας υπόψη τα παραπάνω σημεία, θα πρέπει να μπορείτε να απαντήσετε εάν ένας στατικός ιστότοπος είναι αρκετός για ένα συγκεκριμένο έργο. Αλλά ένα άλλο πρόβλημα θα ήταν ο μεγάλος αριθμός επιλογών που απαιτούνται και ο συνοδευτικός αρχικός χρόνος εγκατάστασης.

Στον κόσμο του CMS, υπάρχουν αμέτρητες επιλογές, αλλά και νικητής. Το WordPress, ως επιλογή, θα κάνει τη δουλειά για οποιοδήποτε έργο. Στον κόσμο του Static Site Generators, υπάρχουν πάρα πολλές επιλογές - 459 για να είμαστε ακριβείς.

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

Το Jekyll είναι μακράν η πιο δημοφιλής από αυτές τις γεννήτριες. Είναι κατασκευασμένο με Ruby και ενσωματωμένο στις σελίδες GitHub. Επομένως, είναι αρκετά δημοφιλές για προσωπικά έργα ή / και τεκμηρίωση. Έχει μια τεράστια βάση χρηστών και έναν μεγάλο κατάλογο προσθηκών.

Ο Hugo μοιάζει πολύ με τον Jekyll. Είναι χτισμένο στο Go και το βασικό του σημείο εναντίον του Jekyll είναι η εκπληκτική του ταχύτητα. Το Jekyll μπορεί να είναι αρκετά αργό όταν δημιουργείται ο πραγματικός ιστότοπος, ειδικά όταν ο αριθμός των αναρτήσεων / σελίδων αυξάνεται.

Αλλά ο Hugo δημιουργεί τον ιστότοπο μέσα σε λίγα δευτερόλεπτα. Υπάρχουν άλλες αφαιρέσεις που κάνουν το Hugo πιο φιλικό προς το χρήστη και πιο εύκολο να ξεκινήσετε. Δεν χρειάζεται τόση διαμόρφωση για να δημιουργήσει κάτι από το μηδέν.

Το Hexo είναι μια νεότερη προσθήκη και δημιουργήθηκε με το NodeJS. Διαφημιζόμενη, και ως επί το πλείστον χρησιμοποιείται ως πλατφόρμα blog, συνδυάζει την επεκτασιμότητα του Jekyll με την ταχύτητα του Hugo. (στην πραγματικότητα γρηγορότερα από τον Hugo)

Το Wintersmith είναι ένα άλλο χτισμένο πάνω από το NodeJS. Αυτό είναι διαφορετικό καθώς είναι αρκετά μινιμαλιστικό. Βασικά είναι μια πλατφόρμα που μπορείτε να προσαρμόσετε μέσω κάποιων πρόσθετων στις ανάγκες σας. Απαιτεί σίγουρα κάποια τροποποίηση για να το κάνει να λειτουργεί, αλλά αφήνει περισσότερο χώρο για προσαρμογή.

Η τελευταία επιλογή είναι η νεότερη και η πιο ενδιαφέρουσα.

Το Gatsby είναι το μοναδικό πλαίσιο που φέρνει τις στατικές σελίδες στις στοίβες στις μέρες μας. Χρησιμοποιεί React.js και Webpack για να δημιουργήσει ένα SPA (Εφαρμογή μίας σελίδας) με το περιεχόμενό σας. Υπόσχεται να αφαιρέσει μεγάλο μέρος της διαμόρφωσης που απαιτείται για μια τέτοια εφαρμογή. Με αυτόν τον τρόπο, παρέχει στον προγραμματιστή μια εύχρηστη λύση που θα παράγει, στο τέλος, μια σύγχρονη και προηγμένη εφαρμογή.

Η αλήθεια είναι ότι το Gatsby μπορεί να χρησιμοποιηθεί για πολλά άλλα πράγματα παρά μόνο ένα blog. Το πραγματικό όριό του δεν έχει βρεθεί ακόμα. (Μόλις έφτασε στην πρώτη του σταθερή κυκλοφορία νωρίτερα αυτό το μήνα.)

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

Περίληψη

Κοιτάζοντας τις λήψεις τους τελευταίους έξι μήνες, μπορούμε να δούμε ότι ο Gatsby μπορεί να είναι ο νικητής της παραγωγής. Αυτοί οι αριθμοί ενδέχεται να μην είναι 100% αληθινοί.

Το Gatsby μπορεί επίσης να χρησιμοποιηθεί για πιο περίπλοκα πράγματα από τη μετατροπή markdown σε HTML. Όμως, καθώς η βάση χρηστών του επεκτείνεται γρήγορα, ενδέχεται να έχουμε βρει το WordPress για δημιουργούς στατικών ιστότοπων.