Thursday, May 11, 2017

MAKALAH PEMROGRAMAN WEB LANJUT TOPIK BAHASAN NODE.JS

STMIK AMIKOM YOGYAKARTA



MAKALAH
PEMROGRAMAN WEB LANJUT


TOPIK BAHASAN NODE.JS








Disusun Oleh :

M. Yusuf                                              (15.02.9149)
Aditya Handriyanto                         (15.02.9150)
Indra Permana                                  (15.02.9161)
Muhammad Mustajib                    (15.02.9160)


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.





B.      SEJARAH DAN PERKEMBANGAN NODE.JS
                       Node.js pertama kali diciptakan dan diperkenalkan untuk pengguna pada sistem Linux pada tahun 2009. Node.js dikembangkan oleh Ryan Dahl dan disponsori oleh Joyent, perusahaan tempat ia bekerja. 
Ryan dahl bersama timnya membuat node.js pada tahun 2009.
menggunakan mesin javascript v8 milik google chrome, nodeJS memiliki skalabilitas yang sangat tinggi, berbasisevent (event driven programming), dan memiliki konsep asynchronous yang sangat bagus sehingga membuatnya ringan dan efisien.
Walaupun node.js masih terbilang baru, teknologi ini sudah banyak berkembang, salah satunya adalah munculnya framework nodejs yaitu express JS. Framework express js diinspirasi oleh proyek Ruby "Sinatra", framework ini merupakan framework paling populer dikarenakan kemudahannya dalam membuat kerangka aplikasi web dan mobile secara minimal dan fleksibel dengan teberbagai fitur.
Salah satu contohnya adalah penggunaan module - module yang dapat disinkronkan oleh node.js, anggap saja dalam penggunaan module jade dan stylus, express js cukup menggunakan fungsi - fungsi yang akan melakukan pemanggilan terhadap module tersebut.
Beberapa situs yang sudah menggunakan teknologi ini adalah http://www.shutterstock.com, http://www.learnboost.com, http://www.geekli.st dan masih banyak lagi situs - situs lain yang sudah menggunakannya. Teman - teman bisa cek dan melihat perbedaan yang mencolok bagaimana situs - situs yang menggunakan node.js mengambil data dengan situs - situs yang tidak menggunakan node.js.






C.      KELEBIHAN DAN KEUNTUNGAN DARI NODE.JS

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

1.      Langsung menuju web Node Js https://nodejs.org/en/
2.      Lalu Download yang versi v4.6.0 LTS

3.      Klik 2kali file exe nya

4.      Install seperti biasa, klik next seterusnya hingga muncul di bagian wizard untuk menyimpannya dimana

Bisa disesuaikan, atau untuk defaultnya C:\Program Files\nodejs

Webserver

Setelah anda memiliki instalasi Node.js, sekarang anda sudah bisa membuat web server sederhana menggunakan node.js. 

5.      Buat file javascript, berisi kode seperti berikut

var http = require('http'); http.createServer(function (req, res) {   res.writeHead(200, {'Content-Type': 'text/plain'});   res.end('Hello : ZEN\n'); }).listen(1337, '127.0.0.1'); console.log('Server running at http://127.0.0.1:1337/');
6.      Lalu simpan dengan nama apa saja dan di folder mana saja
7.      Lalu panggil atau cek menggunakan CMD atau command prompt,

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


Bagikan

Jangan lewatkan

MAKALAH PEMROGRAMAN WEB LANJUT TOPIK BAHASAN NODE.JS
4/ 5
Oleh

Subscribe via email

Suka dengan artikel di atas? Tambahkan email Anda untuk berlangganan.

1 komentar:

Tulis komentar
avatar
July 11, 2019 at 3:02 AM

wow your content is so good if anyone want more information can visit my website

Reply