Pengenalan
Apa itu Node.js?
Node.js adalah kedua-dua sumber terbuka dan percuma, dan digunakan untuk pelbagai tujuan. Untuk menamakan beberapa, Node.js sangat efisien untuk menyajikan kandungan dinamis. Jika anda ingin cara yang cepat dan cekap untuk mendapatkan blog dan berjalan, Node.js dapat menyederhanakan proses tersebut. Berdasarkan JavaScript, Node.js boleh digunakan oleh kebanyakan pembangun laman web yang ingin melaksanakan operasi sisi pelayan tanpa perlu belajar bahasa yang sama sekali baru. Node.js juga sangat berkesan memori, mengendalikan semua permintaan secara asynchronously, dan pengurus paket termasuk mempunyai akses ke repositori terbesar di dunia.
Kelebihan
Node.js mempunyai beberapa kelebihan, seperti berikut:
- Secara aktif menyokong tugas tak segerak. Sebagai contoh, apabila pengguna membuat permintaan kepada skrip yang ditulis Node.js, Node.js terus tersedia untuk permintaan baru semasa memproses permintaan semasa.
- Menyokong sebilangan besar pengedaran Linux dan mempunyai sebilangan besar pakej pra-tulisan yang tersedia untuk anda gunakan.
- Mempunyai kebanyakan fungsi asas yang anda perlukan terbina dalam. Ini termasuk kemampuan untuk mengedit, memindahkan atau menghapus fail; serta berinteraksi dengan MySQL, MongoDB, dan pelbagai perkara lain tanpa perlu menggunakan pengurus pakej termasuk.
- Menggunakan repositori terbesar pakej di dunia:
npm.
- Sintaks kod yang serupa untuk JavaScript. Node.js pada dasarnya adalah JS sisi pelayan.
Kelemahan
Malangnya, Node.js mempunyai kekurangannya:
- Kerana ia adalah bahasa yang agak baru, berbanding dengan sesuatu seperti PHP, kod dasarnya sering dikemas kini. Ini bermakna panggilan atau kaedah yang anda gunakan mungkin tidak berfungsi pada versi sebelumnya Node.js.
- Node.js kadang-kadang memerlukan masa lebih lama untuk menulis kod, kerana tidak dapat menggunakan perpustakaan lain dengan mudah. ImageMagick, sebagai contoh, adalah perpustakaan popular yang digunakan pada PHP yang tidak disokong dengan Node.js.
- Tidak seperti Jawa, pengecualian sukar dilaksanakan. Ini bermakna hampir mustahil untuk mencari kesilapan dalam kod anda jika anda mempunyai fail JS yang beribu-ribu baris panjang.
Menggunakan Node.js
Prasyarat
- Sebarang versi moden Ubuntu, CentOS, atau Debian dipasang. Artikel ini hanya akan merangkumi proses pemasangan untuk CentOS.
- Minimum 256 MB RAM. Perhatikan, angka ini bergantung kepada aplikasi yang akan anda jalankan.
- Untuk tutorial ini, anda juga memerlukan penyunting teks, seperti Vim atau Nano.
Memasang Nod
Kemas kini pengurus pakej anda:
yum update -y
Pasang Node.js:
yum install nodejs -y
Jika anda diminta untuk mengimport kunci, masukkan Yuntuk meneruskan.
Pastikan pemasangan berjaya:
node -v
npm -v
Konvensyen Jenis Fail Asas
Semua fail Node.js mesti diakhiri dengan .js. Sebagai contoh, pemecah kuadratik sederhana boleh dipanggil Quadratic.js. Setelah itu, anda boleh menyebutnya apa sahaja yang anda mahukan selagi syarat pertama dipenuhi.
API
Bahasa pengaturcaraan biasanya APItersedia, dan Node.js tidak terkecuali. Jika anda hilang atau keperluan untuk mencari sintaks untuk fungsi (atau kaedah), lihat dokumen Node.js .
CATATAN: Seperti yang telah disebutkan sebelumnya, Node.js mempunyai asas kod yang sentiasa dikemas kini dan dengan demikian, fungsi di sini mungkin tidak lagi berfungsi pada versi yang lebih baru.
Mencipta Program Pertama Anda
Hai dunia!
Dalam bahagian ini, kami akan mempelajari tentang program paling asas yang boleh anda buat. Untuk memulakan, pergi ke /~atau /root. Mewujudkan projek pertama anda semudah mencipta fail JS:
nano HelloWorld.js
Sebaik sahaja anda berada di dalam editor teks kegemaran anda, masukkan yang berikut:
// For reference, comments are made using '//' added before or after a line. Comments are ignored by the Node.js interpreter.
console.log("Hello, world!"); // console.log() simply outputs text to the terminal.
Keluar dan simpan.
Sekarang, lancarkan program anda:
node HelloWorld.js
Anda akan melihat output berikut:
[root@test-server ~]# node HelloWorld.js
Hello, world!
Matematik & Pembolehubah Mudah
Dalam bahagian ini, kita akan belajar bagaimana untuk melaksanakan operasi asas matematik. Untuk bermula, pergi ke /rootdirektori anda sekali lagi dan buat fail yang dipanggil MathTest.js:
nano MathTest.js
Tampal kod berikut ke dalam fail:
var a = 5; // Variables are declared using 'var variableName = value'. The value can be a string, integer, boolean value (ie. true/false) or an object.
var b = 10;
var c = "Hello, world!";
console.log(c); // This line will output the contents of variable c.
console.log("a = " + a + ", b = " + b); // This line prints out the respective values for a & b.
console.log("a + b = " + (a + b)); // This line prints out the result of (a + b) or (5 + 10). The result should be 15.
Simpan dan keluar.
Apabila anda melaksanakan MathTest.jsprogram anda, anda akan melihat perkara berikut:
[root@test-server ~]# node MathTest.js
Hello, world!
a = 5, b = 10
a + b = 15
Memulakan Webserver Pertama kami
Dalam bahagian ini, kami akan mempelajari cara memulakan webserver Node.js. Untuk memulakan, buat fail yang dipanggil WebTest.js:
nano WebTest.js
Tampal kod berikut:
// This line includes the HTTP module. Having it included allows us to use it's methods and functions to start a working webserver.
var http = require("http");
var a = 5, b = 10;
http.createServer(function (request, response) {
// This will simply output "Request received!" to your terminal when you visit your page.
console.log("Request received!");
// This line tells your browser that it should be expecting HTML content to be returned.
response.writeHead(200, {'Content-Type': 'text/html'});
// The following line adds "Hello, world! a + b = 15" to the body. The <i></i> tags will italicize the text.
response.write("<i>Hello, world! a + b = " + (a + b) + "</i>");
// Finally, we'll tell the browser that we're done sending data with 'response.end()' below.
response.end();
}).listen(8080);
Setelah menyimpan fail, jalankan program baru anda:
[root@test-server ~]# node WebTest.js
Sekarang, lawati http://(YOUR_SERVER_IP):8080. Pastikan firewall anda dikonfigurasi dengan betul untuk membenarkan permintaan tersebut.
Anda akan melihat Request received!pada terminal anda dan yang berikut dalam penyemak imbas anda:
Hello, world! a + b = 15
NOTA: Untuk menutup (tutup) WebTest.js, gunakan kombinasi kekunci berikut: CTRL+ C.
Sekarang bahawa anda memahami beberapa asas, bahagian berikut akan memperkenalkan anda untuk menggunakan modul pihak ke-3, dipasang melalui npm.
Memasang Modul Pihak Ketiga dan Menggunakannya dalam Program
Dalam bahagian ini, kami akan memperluaskan pertama kami "Hello, world!" program. Untuk memulakan, kami akan memasang pakej yang dipanggil colo . Pakej ini membolehkan kami menggunakan warna pada terminal.
Untuk bermula, kami akan gunakan npmuntuk memasang pakej:
npm i colo
Untuk rujukan, anda boleh mengeluarkan pakej dengan npm remove colo
Apabila proses selesai, anda akan mempunyai akses kepada colopakej tersebut. Sekarang, setelah anda membuka HelloWorld.js, tambahkan baris berikut di bahagian atas:
var colour = require("colo");
Di mana anda melihat console.log(...), merangkum "Hello, world!" dengan kurungan. Pada permulaan kurungan, tambahkan colour.red.bold:
console.log(colour.red.bold("Hello, world!"));
Kod akhir anda akan kelihatan seperti berikut:
var colour = require("colo");
console.log(colour.red.bold("Hello, world!"));
Simpan, keluar dan jalankan program anda. Keluaran akan sama persis seperti sebelumnya, kecuali "Hello, world!" kini akan menjadi merah (dan tebal) di terminal anda.
Tahniah untuk melengkapkan semua program asas. Ini akan memberi anda pengetahuan untuk mentafsirkan (sekurang-kurangnya sebahagian besar) kod yang digunakan dalam tutorial lain. Mudah-mudahan, anda tidak berhenti di sini - terdapat banyak perkara lain yang boleh anda lakukan dengan Node.js!
Sekiranya anda mendapati bahawa Node.js bukan bahasa untuk anda, membuangnya semudah yang berikut:
yum remove nodejs -y