Cara Menulis Aplikasi Node.js Pertama Anda di Linux


Tren pengembangan web telah berubah secara drastis selama beberapa tahun terakhir dan sebagai pengembang web, untuk menjadi yang terdepan, penting untuk selalu mengikuti perkembangan teknologi terkini.

JavaScript adalah bahasa pemrograman yang sedang tren saat ini; tidak diragukan lagi ini adalah teknologi paling populer yang digunakan oleh pengembang full stack.

Kerangka kerja web JavaScript telah menjadi solusi ajaib untuk pengembangan web yang lebih cepat dengan efisiensi mutlak, keamanan, dan biaya minimal. Saya yakin Anda pernah mendengar tentang Node JavaScript (biasanya disebut sebagai Node.js atau hanya Node), ada banyak rumor tentang hal itu di internet.

Pada artikel ini, saya akan menunjukkan cara memulai pengembangan aplikasi dalam JavaScript menggunakan Node.js di Linux. Namun pertama-tama, mari kita lihat pengenalan singkat tentang Node.js.

Apa itu Node.js?

Node.js adalah runtime JavaScript sumber terbuka, ringan, dan efisien yang dibangun di mesin JavaScript V8 Chrome. Ini dirancang tanpa thread (single-threaded) dan memiliki implementasi serupa dengan Twisted, mesin jaringan yang dibangun menggunakan Python atau Event Machine, perpustakaan pemrosesan acara untuk program Ruby.

Inti dari Node.js didasarkan pada pemrograman berbasis peristiwa; Oleh karena itu, seorang programmer harus memahami peristiwa apa saja yang tersedia dan bagaimana meresponsnya.

Manajemen Paket Di Bawah Node.js

Node.js menggunakan pengelola paket dan ekosistem JavaScript yang disebut “npm ”, yang berisi banyak sekali koleksi perpustakaan sumber terbuka gratis. Ini mendukung pengembangan perangkat lunak modular. Anda dapat menggunakannya untuk menginstal paket node, berbagi, mendistribusikan kode Anda, dan mengelola dependensi paket.

Mengapa Node.js Penting?

Node.js adalah yang kuat dan penting karena alasan berikut:

  • Ini menggunakan model eksekusi I/O non-pemblokiran yang digerakkan oleh peristiwa asinkron, yang meningkatkan throughput aplikasi dan mendukung skalabilitas untuk aplikasi web dunia nyata.
  • Ini adalah single threaded sehingga hanya dapat menggunakan 1 CPU pada waktu tertentu.
  • Aplikasi web node.js adalah server web yang lengkap misalnya Nginx atau Apache.
  • Ini mendukung thread melalui API child_process.fork(), untuk memunculkan proses anak, dan juga menawarkan modul cluster.

Dengan pengenalan singkat ini, Anda pasti bersemangat untuk menulis program JavaScript pertama Anda. Namun, hal pertama yang harus dilakukan adalah menginstal paket Node.js dan NPM di sistem Linux Anda menggunakan panduan berikut.

  1. Instal Versi Nodejs dan NPM Terbaru di Sistem Linux

Cara Membuat Aplikasi Node.js Pertama Anda di Linux

Setelah Anda menginstal Node.js, Anda siap berangkat. Pertama mulailah dengan membuat direktori yang akan menyimpan file aplikasi Anda.

sudo mkdir -p /var/www/myapp

Lalu pindah ke direktori tersebut dan buat file package.json untuk aplikasi Anda. File ini membantu sebagai dokumentasi kecil untuk proyek Anda: nama proyek, penulis, daftar paket tempat proyek bergantung, dan seterusnya.

cd /var/www/myapp
npm init

Ini akan menanyakan sejumlah pertanyaan kepada Anda, cukup jawab seperti dijelaskan di bawah, dan tekan [Enter]. Perhatikan bahwa hal terpenting dalam package.json adalah kolom nama dan versi seperti yang dijelaskan di bawah.

  • nama paket – nama aplikasi Anda, defaultnya adalah nama direktori.
  • versi – versi aplikasi Anda.
  • deskripsi – tulis deskripsi singkat untuk aplikasi Anda.
  • titik masuk – menyetel file paket default yang akan dieksekusi.
  • perintah pengujian – digunakan untuk membuat skrip pengujian (defaultnya adalah skrip kosong).
  • repositori git – tentukan repositori Git (jika Anda memilikinya).
  • kata kunci – menetapkan kata kunci, penting bagi pengguna lain untuk mengidentifikasi paket Anda di npm.
  • penulis – tentukan nama penulis, masukkan nama Anda di sini.
  • lisensi – tentukan lisensi untuk aplikasi/paket Anda.

Selanjutnya, buat file server.js.

sudo vi server.js

Salin dan tempel kode di bawah ini ke dalamnya.

var http = require('http');
http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.end('Hello World!');
}).listen(3333);
console.log('Server started on localhost:3333; press Ctrl-C to terminate...!');

Selanjutnya, mulai aplikasi Anda menggunakan perintah berikut.

node server.js
OR
npm start

Selanjutnya, buka browser web dan akses aplikasi web Anda, yang tidak melakukan apa pun selain mencetak string ”Halo dunia! ”, menggunakan alamat:

http://localhost:3333

Pada kode kita di atas, event utama yang sedang diproses adalah permintaan HTTP melalui modul HTTP.

Modul HTTP Nodejs

Di Node.js, modul lebih mirip pustaka JavaScript, modul berisi fungsi yang dapat Anda gunakan kembali di aplikasi Anda. Anda dapat menggunakan modul bawaan, tiga puluh modul pihak, atau membuatnya sendiri.

Untuk memanggil modul di aplikasi Anda, gunakan fungsi require seperti yang ditunjukkan.

var http = require('http');

Setelah modul http disertakan, modul ini akan membuat server yang mendengarkan port tertentu (3333 dalam contoh ini). Metode http.creatServer membuat server http sebenarnya yang menerima fungsi (yang dipanggil ketika klien mencoba mengakses aplikasi) sebagai argumen.

http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.end('Hello World!');
}).listen(3333);

Fungsi di http.createServer memiliki dua argumen: req(request) dan res(response). Argumen req adalah permintaan dari pengguna atau klien dan argumen res mengirimkan balasan ke klien.

res.writeHead(200, { 'Content-Type': 'text/plain' });		#This is a response HTTP header
res.end('Hello World!');

Bagian terakhir dari kode mengirimkan output ke konsol, setelah server diluncurkan.

console.log('Server started on localhost:3333; press Ctrl-C to terminate...!');

Perutean di Node.js

Di bagian ini, saya akan menjelaskan salah satu konsep terpenting dalam pemrograman Node.js yang dikenal sebagai perutean (serupa dengan perutean dalam jaringan komputer: proses menemukan jalur lalu lintas dalam suatu jaringan).

Di sini, perutean adalah teknik menangani permintaan klien; menyajikan konten yang diminta klien, sebagaimana ditentukan dalam URL. URL terdiri dari jalur dan string kueri.

Untuk melihat string kueri permintaan klien, kita dapat menambahkan baris di bawah ini dalam respons kita.

res.write(req.url);
res.end()

Di bawah ini adalah kode baru.

var http = require('http');
http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.write(req.url);
      res.end();		
      }).listen(3333);
console.log('Server started on localhost:3333; press Ctrl-C to terminate...!');

Simpan file dan mulai aplikasi Anda lagi menggunakan perintah berikut.

node server.js
OR
npm start

Dari browser web, ketikkan URL berbeda yang akan ditampilkan seperti yang ditunjukkan di bawah ini.

http://localhost:3333
http://localhost:3333/about
http://localhost:3333/tecmint/authors

Sekarang, kita akan membuat situs web yang sangat kecil untuk Tecmint dengan halaman beranda, tentang, dan penulis. Kami akan menampilkan beberapa informasi di halaman ini.

Buka file server.js untuk diedit, dan tambahkan kode di bawah ini ke dalamnya.

//include http module 
var http = require('http');

http.createServer(function(req,res){
	//store URL in variable q_string

	var q_string = req.url;
	switch(q_string) {
		case '/':
                        	res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('Welcome To linux-console.net!')
                        	res.end();
                        	break;
                	case '/about':
                		res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('About Us');
                        	res.write('\n\n');
                        	res.write('linux-console.net - Best Linux HowTos on the Web.');
                        	res.write('\n');
                        	res.end('Find out more: https://linux-console.net/who-we-are/');
                        	break;
                	case '/tecmint/authors':
                        	res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('Tecmint Authors');
                        	res.write('\n\n');
                        	res.end('Find all our authors here: https://linux-console.net/who-we-are/');
                        	break;
                	default:
                       		res.writeHead(404, { 'Content-Type': 'text/plain' });
                       		res.end('Not Found');
                        	break;
	}
}).listen(3333);
console.log('Server started on localhost:3333; press Ctrl-C to terminate....');

Pada kode di atas, kita telah melihat cara menulis komentar di Node.js menggunakan karakter // dan juga memperkenalkan pernyataan switch dan case untuk merutekan permintaan klien.

Simpan file, mulai server dan coba akses berbagai halaman.

Itu saja untuk saat ini! Anda dapat menemukan informasi lebih lanjut di situs web Nodejs dan NPM.

Baca Juga: Cara Menginstal PM2 untuk Menjalankan Aplikasi Node.js di Linux

Kesimpulan

Node.js sedang mencapai level tertinggi baru saat ini, hal ini membuat pengembangan full-stack jauh lebih mudah dibandingkan sebelumnya. Filosofi unik pemrograman berbasis peristiwa memungkinkan Anda membuat proses web dan server yang sangat cepat, efisien, dan skalabel.

Selanjutnya, kami akan menjelaskan kerangka kerja Node.js, yang memperluas kemampuan aslinya untuk mengembangkan aplikasi web/seluler dengan cepat dan andal. Bagikan pendapat Anda tentang artikel ini melalui bagian komentar di bawah.