Mengenai pembangunan bahagian belakang, kita semua telah menemui OG—Node.js.
Ia pantas, ia ringan, dan ia mempunyai daya tarikan yang didorong oleh peristiwa itu. Tetapi kemudian, masuk ke dalam bilik—Nest.js.
Ia Node.js tetapi dengan kilauan. Jika anda pernah tertanya-tanya sama ada Nest.js hanyalah Node.js dalam pakaian mewah atau sesuatu yang benar-benar revolusioner, sandarkan diri kerana kami akan menumpahkan kacang.
Node.js adalah seperti rakan yang boleh dipercayai yang sentiasa ada untuk anda. Mahu memutarkan pelayan pantas? Node.js.
Memerlukan sesuatu yang ringan yang boleh digunakan di mana-mana? Node.js.
Tetapi mari kita hadapi, rakan ini mempunyai tangkapan—mereka tidak membantu anda membersihkan diri selepas parti.
Kod dalam vanilla Node.js dengan cepat boleh bertukar menjadi situasi spageti, dan walaupun modul fs dan http hebat, anda akan mendapati diri anda mencapai pakej pihak ketiga lebih cepat daripada yang anda boleh katakan pemasangan npm.
Dan jangan lupa kekacauan yang menggembirakan panggilan balik yang memperkenalkan kita kepada "neraka panggilan balik".
Janji dan async/menunggu seperti Node.js akhirnya membesar, tetapi beberapa parut tidak pernah pudar.
Nest.js memasuki sembang seperti keajaiban yang menyukai TypeScript dan menggunakan penghias.
Dibina di atas Node.js dan Express, ia menawarkan struktur yang begitu teratur, Marie Kondo akan meluluskan.
Dengan Nest.js, anda mendapat ekosistem yang lengkap, suntikan kebergantungan yang dibakar dalam (ya, tiada lagi bekas DI yang boleh digulung dengan tangan) dan penghias seperti @ApiBearerAuth() yang menjadikan dokumen API anda berkilauan.
Oh, dan adakah saya menyebut? Ia mempunyai pendapat—tetapi dengan cara yang baik. Anda mungkin pada mulanya berasa sesak, tetapi tidak lama lagi anda akan menyedari dinding itu sebenarnya perancah, dan anda sedang membina sebuah bangunan pencakar langit.
Node.js membolehkan anda memilih antara JavaScript dan TypeScript, yang comel sehingga anda mengalami ralat masa jalan dan menjerit ke dalam kekosongan.
Nest.js, sebaliknya, memeluk TypeScript seperti adik beradik yang telah lama hilang. Dengan antara muka, generik dan segala-galanya yang selamat untuk jenis, anda akan tertanya-tanya mengapa anda pernah mengekod tanpanya.
Pasti, menaip segala-galanya boleh terasa seperti melakukan cukai, tetapi apabila anda membiasakannya, anda akan menikmati ketenangan apabila mengetahui API anda tidak akan meletup kerana anda melepasi rentetan di mana objek dijangkakan.
Penghias dalam Nest.js adalah seperti emoji dalam teks—pada mulanya, ia kelihatan lebih, tetapi tidak lama kemudian anda menyedari bahawa mereka menambah semua konteks yang anda tidak tahu anda perlukan.
Ambil @ApiBearerAuth() sebagai contoh. Daripada menerangkan secara manual apa yang diharapkan oleh API anda, penghias ini menyepadukan dengan cantik dengan Swagger, menjadikan dokumen anda hampir menulis sendiri.
Dan kemudian terdapat @Controller(), @Injectable(), dan @Module(). Ia seperti bermain dengan blok LEGO di mana setiap bahagian terpasang pada tempatnya.
Anda bukan sekadar menulis kod; anda sedang mengarang orkestra.
Jika Node.js ialah pisau Swiss Army pelbagai guna, Nest.js ialah seluruh kotak alat dang, lengkap dengan manual pengguna.
Node.js sesuai apabila anda mahukan fleksibiliti dan tidak kisah sedikit huru-hara. Tetapi jika anda sedang membina sesuatu yang serius, Nest.js ialah rakan kongsi yang memastikan anda berasas, berstruktur dan hanya sedikit obsesi TypeScript.
Jadi, apakah pilihan anda? Node.js klasik atau sepupunya yang berpakaian kemas, Nest.js? Sama ada cara, anda sedang dalam perjalanan.
Hanya ingat: tidak kira apa yang anda pilih, jangan lupa untuk npm memasang kewarasan di sepanjang jalan.
Salah satu perkara yang digemari oleh pembangun tentang Nest.js ialah betapa mudahnya untuk menyepadukan Swagger.
Dengan beberapa penghias dan beberapa konfigurasi, dokumentasi API anda disiarkan secara langsung dan sedia untuk menarik perhatian.
Nest.js menjadikannya mudah kerana ia memahami kod anda—terima kasih kepada antara muka TypeScript dan DTO (Objek Pemindahan Data).
Semuanya berstruktur, jadi Swagger tahu dengan tepat apa yang masuk dan keluar daripada API anda.
Tetapi mari bercakap tentang Node.js sebentar. Sudah tentu, anda boleh menyepadukan Swagger, tetapi ia bukan berjalan-jalan di taman.
Tanpa antara muka atau DTO yang dilampirkan pada permintaan atau badan respons anda, Swagger mungkin terlepas markah—atau lebih teruk lagi, meninggalkan anda menulis skema untuk laluan secara manual.
Jadi, apakah yang anda lakukan apabila anda setinggi lutut dalam Node.js dan memerlukan dokumen API tahap Swagger tanpa mengeluarkan peluh?
Di situlah LiveAPI masuk. Saya sedang membangunkan alat ini untuk menjadikan dokumentasi API sangat mudah. Sama ada anda menggunakan Node.js biasa, Express atau apa-apa sahaja di antaranya, LiveAPI melangkah masuk dan melakukan pengangkatan berat.
Cara ia berfungsi:
Dengan LiveAPI, anda tidak perlu menangani keperitan menyediakan Swagger dari awal. Ia pantas, cekap dan ia direka untuk menjimatkan masa anda (dan kewarasan).
Jadi, mengapa tidak mencubanya? Semak sekarang: LiveAPI.
Atas ialah kandungan terperinci Node.js lwn Nest.js: Kisah Dua Rangka Kerja. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!