Προγραμματισμός

9 λόγοι για να δημιουργήσετε την εφαρμογή ιστού σας με το Jamstack

Η δημιουργία μιας ευέλικτης και επαναληπτικής εφαρμογής σε σύντομο χρονικό διάστημα μπορεί να είναι δύσκολη. Τα γνωστά σύννεφα όπως το AWS, το Azure και το GCP συμβάλλουν στην παράδοση επεκτάσιμων εφαρμογών ιστού με χαμηλό κόστος μέσα σε λίγες εβδομάδες. Επιλέξτε μια διαχειριζόμενη βάση δεδομένων, μετακινήστε τον κωδικό εφαρμογής σε κοντέινερ Docker ή λειτουργίες back-end και αναπτύξτε τα πάντα σε τυχόν αλλαγές κώδικα. Αυτή είναι η σύγχρονη ανάπτυξη εφαρμογών, σωστά;

Σε αυτήν την ανάρτηση, θα περιγράψω τα πιο σημαντικά πράγματα που απαιτούνται για την ανάπτυξη και αποστολή λογισμικού με εκπληκτικό ρυθμό, με μια εφαρμογή Next.js γραμμένη σε TypeScript, που αναπτύχθηκε μέσω Vercel και υποστηρίζεται από μια βάση δεδομένων χωρίς διακομιστή που ονομάζεται FaunaDB. Θα εξηγήσω κάθε ένα από αυτά τα πράγματα λεπτομερώς, προσθέτοντας μερικά παραδείγματα εδώ και εκεί. Συνιστώ ανεπιφύλακτα να τα δοκιμάσετε όλα. Όλα έχουν γενναιόδωρα δωρεάν επίπεδα και μπορούν να χρησιμοποιηθούν από μια μικρή ομάδα προγραμματιστών έως και τριών μελών.

Η χρήση πλατφορμών ανάπτυξης με επίκεντρο προγραμματιστή σε συνδυασμό με προσφορές χωρίς διακομιστή συνοψίζεται ως Jamstack. "J-A-M" σημαίνει JavaScript, API και σήμανση. Περισσότερες πληροφορίες για το Jamstack μπορείτε να βρείτε στη διεύθυνση //jamstack.org/.

Η ανάπτυξη είναι μια λεπτομέρεια εφαρμογής

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

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

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

Η πλατφόρμα Vercel συνδέεται άψογα με συστήματα ελέγχου εκδόσεων όπως το GitHub ή το GitLab. Συνδέω απλώς το αποθετήριο μου και προσαρμόζω τη ρύθμιση ονόματος κεντρικού υπολογιστή διακομιστή ονομάτων και τελείωσα.

Στο τρέχον έργο μου, έχω καθορίσει μερικές εύχρηστες εργασίες npm που χρησιμοποιούνται σε κάθε έκδοση για να διασφαλίσω ότι το λογισμικό μας λειτουργεί και πληροί τα πρότυπα λογισμικού και τις βέλτιστες πρακτικές:

{

"scripts": {

"tsc": "tsc", // ελέγξτε την ασφάλεια τύπου

"lint": "eslint", // κάντε ανάλυση στατικού κώδικα

"lint: ci": "eslint --max-warnings = 0",

"lint: fix": "eslint --fix",

"test": "jest --watch", // εκτέλεση δοκιμών

"test: ci": "jest --ci",

"δοκιμή: κάλυψη": "αστείο - κάλυψη",

"έλεγχοι": "npm-run-all lint: ci tsc test: ci",

"dev": "env-cmd next dev", // ξεκινήστε το τοπικό περιβάλλον dev

"έναρξη": "επόμενο",

"start-port": "επόμενη έναρξη -p $ PORT",

"build": "επόμενο build",

"now-build": "npm-run-all ελέγχους build", // CI build

"serve": "επόμενη έναρξη",

  }

}

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

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