Diajukan untuk memenuhi salah satu tugas mata kuliah Teori Bahasa dan Otomata
Dosen pengampu :
Oleh :
BANDUNG
2018
A. PENGERTIAN NODE.JS
Node.js adalah sebuah platform yang dibuat berdasarkan runtime untuk
JavaScript di Chrome untuk membangun aplikasi network yang cepat dan terukur. Node.js
menjalankan aplikasi berdasarkan atas peristiwa (event-driven) dan non-blocking I/O yang
membuat aplikasi node.js lebih cepat, ringan, efisien dan cocok sekali untuk aplikasi dengan
transaksi data yang besar. Sama seperti Apache, node.js juga merupakan aplikasi yang
digunakan pada sisi server (server-side).
Node JS akan semakin bnayak digunakan pada berbagai aplikasi web di masa depan,
setidaknya demikian menurut prediksi banyak pakar dan pengamat teknologi.
Bagi programmer website, ini menjadi kabar baik sekaligus buruk. Kabar
baiknya teknologi ini tentu memiliki berbagai kelebihan dan dukungan dalam
pengembangan website yang lebih baik, sedangkan kabar buruknya para programmer
website harus mempelajari lagi suatu teknologi baru.
Node.js berfungsi untuk membuat aplikasiweb pada sisi server dengan menggunakan
bahasapemrograman javascript.
selama ini kita mengenal pemrograman website pada
sisi servermenggunakan php, ruby, dan seterusnya. Sementara umumnya javascript digunakan
untuk pembuatan website pada sisi client, contohnya untukvalidasi form atau membuat
efek transisi dan animasi. Library javascript jquery yang sangat populer juga dibuat untuk
memudahkan scripting pada sisi client.
tetapi juga performanya yang cepat dengan menggunakan engine javascript
google v8. Node.js juga menyediakan arsitektur even – driven dan non- blocking i/o api yang
didesain untuk mengoptimalkan aplikasi web karena dapat menangani operasi yang bersama
tanpa multithreading sehingga mengakibatkan tingkat skalabilitas node.js sangat baik.
1. Pengembang hanya cukup memakai satu bahasa untuk mengembangkan aplikasi client &
server sehingga mengurangi 'Learning Curve' untuk mempelajari bahasa server yang lain.
2. Mendukung reuse of code, yang dimaksud disini adalah kemudahan sharing code antara client
dan server, dimana seorang programmer dapat membangun sebuah objek dengan mengextend
objek-objek yang telah ada secara mudah, sehingga programmer itu mungkin tidak perlu tahu
dengan kode-kode dari objek yang ingin ia extend , yang ia butuhkan hanyalah pengetahuan
mengenai property dari objek itu dan hal-hal yang dapat dilakukan oleh objek itu.
3. Mendukung JSON, sehingga untuk mengkonsumsi data-data dari pihak ketiga pemrosesan di
Node.js akan sangat mudah sekali.
4. Asinkron I/O & event, maksudnya adalah proses eksekusi program tidak perlu menunggu
pembacaan suatu file sampai selesai tetapi tetap dapat langsung menjalankan kode Javascript
selanjutnya yang dieksekusi secara bersamaan, hal ini dapat membuat kerja sistem lebih ringan
dan cepat.
5. Database NoSQL seperti MongoDB dan CouchDB mendukung langsung Javascript sehingga
interfacing dengan database ini akan jauh lebih mudah.
6. Memakai engine V8 yang selalu mengikuti perkembangan standar ECMAScript, jadi tidak
perlu ada kekhawatiran bahwa browser tidak akan mendukung fitur-fitur di Node.js.
7. Open Source, source code nodejs berada pada Github. Hal ini membuat perkembangan node.js
sangat cepat, terlebih hal ini juga dapat memudahkan para programmer yang masih bertitel
"Mahasiswa" dapat mencicipi teknologi baru ini.
8. Dengan bahasa JavaScript, ia mempermudah pembelajaran sisi-belakang jika memang sudah
menguasai JavaScript; pemula bahkan lebih cepat menguasainya karena dari sisi-klien juga
menggunakan bahasa Javascript
9. adanya pertukaran kode antara klien dan server, yaitu server-side rendering pada kerangka
JavaScript
10. adanya fasilitas untuk membuat aplikasi waktu nyata (realtime application)
11. bersumber terbuka, sehingga pengguna mengetahui bagaimana proses aplikasi berjalan,
mengubahnya, dan gratis dipakai
12. mendukung penyimpanan sementara (cache).
D. INSTALASI NODE.JS
Node.js bisa diinstal pada sistem operasi seperti Windows, Mac OS X, Linux dan SunOS.
Tersedia juga source yang bisa anda kompilasi sendiri. Untuk menginstallnya di sistem
operasi Windows, silahkanunduh dari tautan berikut dan install di sistem anda.
Cara Install Node Js
4. Install seperti biasa, klik next seterusnya hingga muncul di bagian wizard untuk
menyimpannya dimana
Webserver
Setelah anda memiliki instalasi Node.js, sekarang anda sudah bisa membuat web server
sederhana menggunakan node.js.
8. Kemudian buka browser untuk memanggil dengan membuka link localhost:1337 sesuai pada
port yang sudah dikoding atau di file js tadi
Jika sudah tampill maka node js siap dijalankan dan sudah aktif di file testing.js tadi.
E. Hal - Hal yang perlu diperhatikan dalam Membangun Website menggunakan node.js
Berikut beberapa hal yang perlu diperhatikan dalam membangun website menggunakan
node.js secara fleksibel :
NPM
NPM (Node Package Manager) merupakan package manager yang digunakan NodeJS. Sejak
versi 0.6.3, NPM ini sudah diikutsertakan secara default waktu instalasi NodeJS.
Jade
Module ini merupakan mesin template untuk nodejs. Module ini menawarkan banyak fitur,
untuk mengenal lebih dalam module ini dapat dilihat pada https://github.com/jadejs/jade#a1
Stylus
Module merupakan pre-processor untuk CSS. Modul ini sama kerjanya dengan LESS, tapi
dibuat khusus untuk NodeJS.
Framework node.js
Framework sudah barang tentu hal yang penting dalam membangun website, agar lebih
fleksibel dan efisien.
F. Aplikasi Tersibuk Yang Memanfaatkan Node JS Sebagai Basis Sistem
Platform yang dibangun oleh Ryan Dahl pada 2009 lalu ini cukup membuat perubahan
besar pada dunia development. Konsep event-driven dan non-blocking I/O nya menjadikan
Node JS alternatif baru untuk membangun aplikasi sisi server. Sampai sekarang pun
komunitasnya berkembang pesat. Terbukti dengan npm nya yang menjadi package manager
terbesar/teramai di dunia.
1. Paypal
Pada tahun 2013 Paypal mengganti keseluruhan platform yang awalnya Java menjadi Node
JS.
2. LinkedIn
LinkedIn yang merupakan social network terbesar untuk para professional ini memanfaatkan
Node JS sebagai backend API untuk aplikasi mobile mereka. Node JS menjadi end point data
untuk aplikasi Android dan Iphone.
3. Uber
Semenjak tahun 2011 Uber mengganti backend mereka dengan Node JS. Tujuan perombakan
ini untuk meningkatkan performa backend Uber.
4. Medium
Situs besutan co-founder Twitter ini menjadi situs blog publishing yang
populer. Medium medapatkan 25 juta unique reader setiap bulannya. Seperti diterangkan
pada blog engineering nya, backend utama dari Medium memanfaatkan Node Js
dan DynamoDB.
5. Netflix
Situs yang baru saja di block oleh salah satu ISP ini menggunakan Node JS sebagai backend.
Selain Node JS, Netflix juga menggunakan Java, Python dan Cassandra dalam stack nya.
6. Flipboard
Flipboard di host pada Amazon EC2 dan menggunakan Node Js sebagai backend nya.
7. Trello
Trello merupakan aplikasi manajemen proyek yang digemari developer maupun non
developer. Trello masuk dalam top developer tool 2015 versi StackShare. Merujuk pada
blog FogCreek ternyata Node JS menjadi backend dari Trello.
G. SUMBER
1. nodejs.org
2. http://expressjs.com/
3. http://www.ngulikweb.com/internet/mengenal-node-js-jalankan-javascript-di-server/
4. http://tambahilmu.com/2013/03/26/express-node-js-framework-pengenalan/
5. http://bisakomputer.com/nodejs-membangun-website-dengan-express-framework/
6. http://www.clock.co.uk/blog/a-simple-website-in-nodejs-with-express-jade-and-stylus
7. http://idjs.github.io/belajar-nodejs/
8. https://github.com/idjs/belajar-nodejs