nehéz lehet keretet választani a NodeJS alkalmazáshoz. Nagyon sokan vannak, saját erősségeikkel és gyengeségeikkel. A nap végén a választott keretrendszer függ a programozási környezettől, és attól, hogy mit szeretne az alkalmazás. Egyes keretek könnyűek, gyorsak, és nem törődnek azzal, hogyan építik fel az alkalmazást. Mások több funkcióval rendelkeznek, de arra kényszeríthetik Önt, hogy használja a motorjaikat, és bizonyos módon rendezze a kódot.
ennek a cikknek az a célja, hogy összehasonlítsa a legnépszerűbb csomópont-keretrendszereket, hogy végül eldönthesse, melyik a megfelelő a projektjéhez.
mi a keretrendszer?
Általánosságban elmondható, hogy a keretrendszer az alkalmazás támogatási rendszere. A Node egy sor eszközt biztosít az alkalmazás által igényelt dolgok, például a hálózat és a fájlrendszer összekapcsolásához. A keretrendszer kiterjeszti ezeket a képességeket, és kivonja a fejlesztés néhány bonyolultabb aspektusát. Előfordulhat például, hogy a kódban lévő kezelő kérésobjektumot kap a hálózattól. Egy keretrendszer elfoghatja ezt a kérésobjektumot, mielőtt elérné a kezelőjét, hozzáadva néhány további módszert és képességet, hogy megkönnyítse a munkát.
a Node keretrendszernek több változata van, és mindegyik más-más programozási élményt nyújt.
MVC keretrendszerek
az MVC (Model View Controller) architektúra egy hasznos tervezési minta, amely három részre osztja az alkalmazás logikáját: modellek az adatok alakjának meghatározására, nézetek a felhasználói felület rendezésére, vezérlők a kettő közötti kommunikációra. Az MVC architektúrát támogató csomópont-keretek hasznosak, ha nem akar túl sok időt tölteni a kód rendezésével kapcsolatos aggódással.
Express
mi is kap Express az útból első, mivel nincs lista csomópont keretek lenne teljes nélküle. Az Express továbbra is a népszerű keretek uralkodó bajnoka, mivel 47,5 K-os Github-csillagai, 1,8 K-os órái és 7,7 K-os villái igazolják. Ez önmagában kiváló választás. Robusztus, jól tesztelt, és van egy nagy közösség, amely fenntartja és együttműködik vele, aki támogathatja Önt és válaszolhat a kérdésekre.
Express touts magát, mint egy “gyors, un-vélemény nélküli, minimalista keretet csomópont.”A hangsúly a teljesítményen van, és csak azt adja meg, amire szüksége van. A keretrendszer kevés saját funkcionalitást biztosít, ahelyett, hogy lehetővé tenné a kiterjedt köztes szoftverek láncolását a kérések feldolgozásához.
első lépések
hozzon létre egy szervert.js vagy app.js fájlt a gyökér a projekt, és adja hozzá a következő kódot
const express = require('express')const app = express()app.get('/', function (req, res) { res.send('Hello World')})app.listen(3000)
futtassa a szerver
node ./server.js
és látogasson localhost:3000 a böngészőben, hogy a választ.
vitorlák
a vitorlák hangsúlyozzák a stabilitást és a könnyű használatot, és sokkal többet nyújtanak a dobozból, mint az expressz. A teljes verem irányába hajlik, támogatást nyújt a hitelesítéshez, saját ORM az adatbázis-interfészhez, a Websocketekhez és a sablonozáshoz. A Sails inkább véleményes, mint az Express — ami azt jelenti, hogy a biztosított ORM (Waterline) és sablonmotort (EJS) kell használni, bár a Consolidate nevű kiterjesztés támogatást nyújt más Sablonmotorokhoz, amelyek kompatibilisek az Express-szel.) Sails is büszkélkedhet lenyűgöző API generátor nevű Blueprints, amely lehetővé teszi, hogy létrehoz API végpontok minimális kézi kódolás. A vitorlák dokumentációjából:
…ha létrehoz egy felhasználót.js modell fájlt a projektben, majd tervrajzok engedélyezve lesz képes azonnal látogasson /felhasználó/létrehozása?name = joe egy felhasználó létrehozásához, és látogasson el a /user oldalra, hogy megtekinthesse az alkalmazás felhasználóinak tömbjét. Mindezt egyetlen kódsor írása nélkül!
A Sails már régóta létezik, és a Github csillagok, nézetek és villák szerint a legnépszerűbb keretek közé tartozik. Sok nagyvállalat támaszkodik a vitorlákra, ami azt jelenti, hogy elég robusztus ahhoz, hogy támogassa a vállalati szintű alkalmazásokat.
első lépések
A Sails erőteljes parancssori felületet biztosít az új alkalmazás nagyon gyors elindításához
npm install -g sailssails new <project_name>
a rendszer kéri, hogy válasszon egy webalkalmazás sablont beépített hitelesítéssel és bejelentkezéssel, vagy egy üres alkalmazást. Miután a Sails befejezte az alapok beállítását, cd-t a projekt mappájába, és futtassa
sails lift
mostantól navigálhat a localhost:1337 oldalra a létrehozott honlap megtekintéséhez.
Full-Stack keretrendszerek
a Full – stack keretrendszerek struktúrát és funkcionalitást biztosítanak a teljes alkalmazás számára-az ügyféltől a szerveren át az adatbázisig. A teljes verem keretrendszer számos funkcióval rendelkezhet, beleértve a sablonmotorokat, a WebSocket könyvtárakat és az ORM-eket. A csapat méretétől és az alkalmazástól függően ezek a funkciók nagyon hasznosak lehetnek, vagy többek lehetnek, mint amire szüksége van.
Meteor
a Meteor a második legtöbbet csillagozott, megtekintett és villás csomópont keretrendszer a Githubon. A közösség élénk, a dokumentáció kiterjedt. A dokumentáció tartalmazza a legjobb gyakorlatokat, az ajánlott stílus útmutatókat, valamint számos oktatóanyagot és műszaki cikket. A Meteor az npm-mel és a saját Atmosphere nevű csomagkezelőjével, valamint a Mongo adattár beépített támogatásával és a React, Angular vagy Blaze egyszerű integrációjával érkezik. Ez inkább véleményes, mint expressz vagy vitorlák.
a Meteor a szerveroldali rendereléssel szemben az “adatokat a vezetéken” használja-tehát a szerver adatokat küld, nem HTML — t, és a kliens rendereli azokat. A Meteor build eszköz a dobozból támogatja a mobil keresztül Cordova és támogatja a forró újratöltés.
első lépések
a Meteor build eszköze az, ami létrehozza, lefordítja és futtatja az alkalmazást. Töltse le a curl segítségével.
curl https://install.meteor.com/meteor create <project_name>
ez létrehozza a fájlstruktúrát mindenhez, amire szüksége van egy alapvető Javascript alkalmazásban, a /client és /server könyvtárakba rendezve. cd-t a projekt gyökerébe, és futtassa
meteor run
az alkalmazásnak most a localhost-on kell futnia:3000
REST API-keretrendszerek
ha az alkalmazás ügyféloldalát lefedjük, akkor szükség lehet egy keretrendszerre a verem szerver részéhez. Ebben az esetben, lehet, hogy megy egy egyszerű REST API keret csak kezelni CRUD kéréseket a szerver. Ezt nagyjából megteheti az Express segítségével, de vannak olyan keretek is, amelyek kifejezetten az adott eset kezelésére irányulnak.
Loopback
a loopback a Github szerint a második legnépszerűbb REST API keretrendszer. Az IBM fejlesztette ki, ez egy ” nagyon bővíthető, nyílt forráskódú csomópont keretrendszer, amely az Express-en alapul, amely lehetővé teszi API-k és mikroszolgáltatások gyors létrehozását.”Egy parancssori eszközzel rendelkezik a projektek generálásához, valamint a vezérlők és modellek könnyű létrehozásához, és kiegészítő támogatást nyújt az egyszerű hitelesítéshez és engedélyezéshez. Nem nyújt támogatást nézetekhez, sablonokhoz vagy dedikált ORM-hoz, mivel csak API-ként kívánják használni.
a Loopback lehetővé teszi dinamikus API létrehozását percek alatt, minimális kódolással. A fejlesztési ciklus nagyon gyors, és a fájlszerkezet tiszta és hasznos. A beállítás tartalmazza az eslint, a prettier, a mocha és a docker konfigurálásának lehetőségeit a dobozból.
első lépések
npm install -g @loopback/clilb4 <project_name>
a rendszer kéri, hogy válaszoljon néhány kérdésre az alkalmazás beállításával kapcsolatban, és a fájlstruktúra állványra kerül. új útvonal létrehozásához futtassa a
npm start
parancsot, és válaszoljon az utasításokra. A vezérlőfájl létrehozása után importálhatja a Loopback get funkciót, és felhasználhatja a vezérlő
import {get} from '@loopback/rest';export class HelloController { @get('/hello') hello(): string { return 'Hello world!'; }}
Összefoglalás: legjobb csomópont.js keretek
keret | teljesítmény | közösség | könnyű használat | legjobb |
---|---|---|---|---|
expressz | gyors. Hozzáteszi kevés, így semmi, hogy int ő módon csomópont nyers sebesség. | masszív. Rengeteg feltett és megválaszolt kérdés. | olyan nehéz, mint szeretné, hogy ez. | nagy és kis projektek. Szintén nagyszerű módja annak, hogy megtanulják, hogyan kell dolgozni a csomóponttal. |
Vitorlák | Közepes. A hangsúly a fejlesztő hatékonyságának javítására irányul a teljesítmény felett. | nagy. Egy jól megalapozott projekt, amely már régóta létezik. | könnyű. A tervrajzok nagyon egyszerűvé teszik az API működését minimális kódolással. | közepes méretű projektek, amelyeknek gyorsan le kell állniuk a földről. |
Meteor | Lassabb. A hangsúly a felállás/prototípus a projekt nagyon gyorsan. | kisebb, de élénk és növekvő. | könnyű. A tervrajzok nagyon egyszerűvé teszik az API működését minimális kódolással. | kis projektek gyors felállítása. Piszkos a kezed egy új eszközzel. |
Loopback | Közepes. | kicsi, de azok, akik szeretik, nagyon szeretik. | könnyű, de nem nyújt annyi elöl. | vállalati szintű API létrehozása külön kezelőfelülethez. |
következtetések
nehéz kiválasztani a végleges” legjobb ” csomópont-keretet, mivel a választott keret az Ön igényei szerint változik. Ha azt szeretné, hogy szabadon választhassa meg saját könyvtárait és harmadik fél integrációit, az Express vagy a Loopback lehet a legjobb megoldás. De ha a csapat azt akarja, hogy álljon fel egy teljesen új alkalmazás elölről hátra kérdése néhány nap, Meteor vagy vitorlák talán jobban megfelel az Ön igényeinek.
a cikkben tárgyaltakon túl sok más keretrendszer is létezik, és a legjobb módja annak, hogy megtudja, mi fog működni az alkalmazás vagy a csapat számára, ha elolvassa a dokumentumokat, és kipróbál néhányat.
- hogyan kell használni egy API
- JavaScript
- Hogyan hozzunk létre egy API
- a csomópont.js És Express.js
- Hogyan építsünk egy időjárás App csomópont.js
- Hogyan hozzunk létre egy GraphQL kiszolgálót a Node és az Express segítségével