Showing posts with label Programming. Show all posts
Showing posts with label Programming. Show all posts

Sunday, July 17, 2016

Membuat Hellow World Node.js pake Nodeclipse

Nodeclipse itu free IDE untuk node.js.... So silahkan download di sini....

Terus silahkan download, terus silahkan diextract....abis itu silahkan di run... :D


Teruuuus..... kita buat new project... klik file , new, terus other :
Terus pilih Node.js project :
Ini projectnya kita pilih yang template empty dl... :)
Teruss... tambain file javascript baru,,, klik kanan projectnya terus pilih new, javascript file ;
Terus taorin container, dan nama filenya ;
Daaan... hasilnya :
Terus silahkan tambahkeun Hellow Worldnya :v
Klu di run...


Yeeeei.... :v :v :v

npm install connect



Membuat Server Sederhana(hellowworldserver) di Node.js

Okiee...dipostingan ini kita akan membuat server sederhana di node.js. Yang dibutuin cuma module default http, trs kita butuh callback request, terus start servernya diport tertentu. Untuk lebih jelasnya silahkan ketik kode ini :
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
var http = require("http");

//callback function, kode ini dieksekusi pas ada request
function onRequest(request, response)
{
 console.log("A request from user...."+request.url);
 response.writeHead(200,{"Context-Type": "text/plain"});
 response.write("Hellow disana....Terima kasih sudah akses server ini... :D");
 response.end();
}


//Start server and listen to port 8888
http.createServer(onRequest).listen(8888);
console.log("Server running....");

Terus kita start servernya pake cmd...
Hasilnya dibuka pake browser....

setInterval, __dirname, & __filename di Node.js

setInterval itu ampir sama dengan setTimeout, cumaaaan,,setTimeout itu dieksekusi cma sekali, tapi klu setInterval itu dieksekusi terus menerus.... Contohnya seperti inih...
Naaah... Hellow Hisoka akan diprint terus-menerus dengan interval 2 sekon... siipss..seperti itu ajjah yang setInterval....


Terus klu yang __dirname ituuu cuma ngasih liad directory file node.js kita...terus __filename itu selain dirname juga ngasih liad smpe filenamenya... contoh2nya kyk gini :
Seperti itu ajjah... :D

Dasar Pake Module di Node.js

Module berarti kita misah2in beberapa program ke dalam beberapa file. File berisi berbagai macam fungsi atau variabel dsb yang nantinya dipake oleh module atau program lain. Naah.. misalkan kita buat file aritmatik.js yg isinya :
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
function addNum(a, b)
{
 return a+b;
}

function divNum(a,b)
{
 return a-b;
}


var hay = "Hellow ini cuma variabel biasa... :D";

//Export masing2 fungsi buat dipakai diluar;
module.exports.tambah = addNum;
module.exports.kurang = divNum;
module.exports.test = hay;
Terus di mainProgram Node.js-nya module aritmatik ini dipanggilnya kyk gini :
1
2
3
4
5
6
var operasi = require("./aritmatik");

//Panggil masing2 fungsi dan variabel dari module aritmatik
console.log("Penjumlahan 9 + 8 = "+operasi.tambah(9,8));
console.log("Pengurangan 13 - 11 = "+operasi.kurang(13,11));
console.log("Variabel biasa = "+operasi.test);

Klu mainprogram.js ini kita jalanin hasilnya :
Naaah.... kliatan operasi penambahan, pengurangan, dan variabel biasa dari module aritmatiknya... :D
Btw... sebenarnya ada cara lain buat export sesuatu dari module, klo cara diatas kan terlihat agak ribet yaah..soalnya kita nulis fungsi atau variabel dl, trs nulis lagi buat nandain dia akan diexport. Taapi.. klu pengen sekali ajjah... carana kek gini nih...
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
module.exports = 
{
 perkalian: function(a,b)
 {
  return a*b;
 },

 pembagian: function(a,b)
 {
  return a/b;
 },

 stringBiasa: "Ini cara yang lebih simpel..:D"
}
Terus ngeload di mainprogram.js-nya juga sama...
1
2
3
4
5
//Ini cara yang kedua
var op2 = require("./aritmatika2");
console.log("Perkalian 3 * 7 = "+ op2.perkalian(3,7));
console.log("Pembagian 34/5 = "+op2.pembagian(34,5));
console.log("String biasa = "+op2.stringBiasa)
Hasil :
Daaan... yang perlu dicatet,,, Module disini itu kita ngereference yaaah,,, jadi klu ada variabel2nya diubah...maka akan secara otomatis berubah ditempat lain juga.. jadi klu g' mau pake reference, kita harus pake "return" didalam variabelnya...

Teruus... di node.js sendiri sudah banyak module2 default yang bisa kita pake {yaah kek librari bawaan gitu :D}, jadi tinggal panggil ajjah.. :D :D :D mmmm... misalkaan... kita pengen write and read file, tinggal panggil require("fs"); fs itu fileSystem, contohnya seperti ini :
1
2
3
4
5
//Default module untuk write and read file
console.log("\n\n");
var myFile = require("fs");
myFile.writeFileSync("hisoka.txt","This is Hisoka's awesome file... :D"); //baca file
console.log("Hasil read : "+myFile.readFileSync("hisoka.txt").toString());
filenya :
Sooo kek gitu ajjah cara makena ahahaha... simpel yaaak... :D :D :D
Mmm.... module penting yg lain mungkiiiin....mmmm.. module path, contohnya kek gini :
1
2
3
4
5
6
7
8
9
//Module path
var myPath = require('path'); //import path module
var hisokaWebHome = "Desktop/Hisoka//poipo/index.html";
var hisokaWebAbout = "Desktop\Hisoka/poipo/about.html";

console.log(myPath.normalize(hisokaWebHome)); //nyesuaian sesuai OS apa pake forward atau backslash
console.log(myPath.dirname(hisokaWebAbout));//dapatin directory name
console.log(myPath.basename(hisokaWebAbout));//basename
console.log(myPath.extname(hisokaWebAbout));//dapatin extension filenya
Naah... klu diliad, hisokaWebHome itu pake forwardslassh semua terus ada yagn doubleforwardslass malah...tapi begitu dinormalisasi, semuanya berubah menjadi backslash, jadi kliatan gunanya ehehe... :D

Terus yang dirname, basename, extname, jg cukup jelas dari gambar diatas... :D

Cukup sekian untuk pengenalan module di Node.js... :D

Saturday, July 16, 2016

Dasar Prototype di Node.js

Secara sederhana, prototype adalaah cara muda buat nambain method atau parameter baru dalam suatu fungsi. Mmmm...misalkan kita ada fungsi kyk gini :
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
function Akatsuki()
{
 this.name = "";
 this.power = 100;
 this.givePower = function givePower(memberTarget)
 {
  memberTarget.power += 1;
  console.log(this.name+" has given 1 power to "+memberTarget.name);
 } 
}

var Hisoka = new Akatsuki();
var Itachi = new Akatsuki();

Naaah... disini kita ada 2 var Hisoka dan Itachi yang masing2 berupa Akatsuki, kalo misalkan Hisoka ngasih 1 power ke Itachi berarti :
1
2
3
4
5
6
7
8
Hisoka.name = "Hisoka";
Itachi.name = "Itachi";

Hisoka.givePower(Itachi);

//Cek masing-masing power
console.log("Hisoka's Power : "+Hisoka.power);
console.log("Itachi's Power : "+Itachi.power);
Hasilnya :
Naaah... klu udah smpe sini, kita misalkan pengen nambah sesuatu ke dalam fungsi Akatsuki, itu bisa pake prototype, misalkan kita pengen nambain takePower, jadinya kyk gini :
1
2
3
4
5
6
7
//pake prototype buat nambain variabel baru dalam Akatsuki
Akatsuki.prototype.takePower = function takePower(memberTarget)
{
 memberTarget.power -= 7;
 this.power += 7;
 console.log(this.name +" has taken power from "+ memberTarget.name);
}
Kita udah nambain takePower ke Akatsuki berarti sekarang Hisoka udah bisa pake takepower-nya, contoh kyk gini :
1
2
3
4
Hisoka.takePower(Itachi);
//Cek masing-masing power
console.log("Hisoka's Power : "+Hisoka.power);
console.log("Itachi's Power : "+Itachi.power);
Hasilnya :
Naaah... kliataan kaan... Hisoka nambah 7, Itachi kurang 7. Dari sini juga jelas penggunaan prototype kekna... :D mmm.... coba satu lagi kyk gini :
1
2
3
4
Akatsuki.prototype.jutsu = "Secret... :D";
//cek lagi...
console.log("Hisoka's Jutsu : ",Hisoka.jutsu);
console.log("Itachi's Jutsu : ",Itachi.jutsu);
Hasilnya :

Siiips... ckup demikin... :D ....
Untuk source code lengkapnya seperti ini :
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
function Akatsuki()
{
 this.name = "";
 this.power = 100;
 this.givePower = function givePower(memberTarget)
 {
  memberTarget.power += 1;
  console.log(this.name+" has given 1 power to "+memberTarget.name);
 } 
}

var Hisoka = new Akatsuki();
var Itachi = new Akatsuki();

Hisoka.name = "Hisoka";
Itachi.name = "Itachi";

Hisoka.givePower(Itachi);

//Cek masing-masing power
console.log("Hisoka's Power : "+Hisoka.power);
console.log("Itachi's Power : "+Itachi.power);


//pake prototype buat nambain variabel baru dalam Akatsuki
Akatsuki.prototype.takePower = function takePower(memberTarget)
{
 memberTarget.power -= 7;
 this.power += 7;
 console.log(this.name +" has taken power from "+ memberTarget.name);
}

Hisoka.takePower(Itachi);
//Cek masing-masing power
console.log("Hisoka's Power : "+Hisoka.power);
console.log("Itachi's Power : "+Itachi.power);


Akatsuki.prototype.jutsu = "Secret... :D";
//cek lagi...
console.log("Hisoka's Jutsu : ",Hisoka.jutsu);
console.log("Itachi's Jutsu : ",Itachi.jutsu);

Double and Triple Equals di Node.js

Double equals itu cuma ngekompare value ajjah... jadi klu misalkan kita punya
console.log(17 == "17"); maka hasilnya akan true, soalnya valuenya SAMA...
tapi klu triple equals itu ngekompoare value sama tipe variabelnya, jadi klu misalkan
console.log(17 === "17"); ini hasilnya akan false, soalnya Valuenya sama cuman tipenya beda, 17 itu integer, tapi "17" itu string, makanya false... :D
Contohnya kyk gini :

Contoh Reference di Node.js

Berikut contoh sederhana reference di node.js:
1
2
3
4
5
6
7
8
9
var Hisoka = {
 favFood: "Kelapa Muda",
 favDrink: "Human Blood ;D" 
};

var Itachi = Hisoka;
Itachi.favFood = "Dorayaki";

console.log("FavFood Hisoka : "+Hisoka.favFood);

Kalo kodenya diperhatiin diatas, Hitachi ngereference ke Hisoka, jadi klu misalkan Itachi.favFood diubah ke Dorayaki, maka secara otomatis favFood punya Hisoka jg akan berubah jadi dorayaki, seperti terlihat hasilnya berikut ini :
okieee... :D

Contoh Sederhana Handling Multiple Requests Pake Node.js

Okiee.... disini ceritanya kita akan membuat ilustrasi yang ngehandle beberapa request sekaligus, dan diresponsenya dibalikin setelah bbrapa detik... berikut contoh kodenya :
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
function order(orderNumber)
{
 console.log("Customer order number : ", orderNumber);


 cookAndDeliverOrder(function()//anonymous function ini akan dipanggil setelah 5 dtk
  {
   console.log("Here is the food number : ", orderNumber);
  });
}

function cookAndDeliverOrder(callback)
{
 //disini harusnya konek kedatabase...
 //tapi gpp kita idle dl ajjah 5 detik ehehe...:D
 setTimeout(callback,5000);
}


order(1);
order(2);
order(3);
order(4);
order(5);
order(6);
order(7);
order(8);
order(9);
Mmmm...Hasilnya seperti ini :

Mmmmm.....Seperti dilihat pada animasi diatas, pertama-tama semua ordernya dieksekusi, disini kliatan g' satu-satu atau sekuensial yaaah..., tapi dieksekusi semua soalnya yang order pertama harus nunggu 5 detik, abis pindah buat eksekusi order kedua, ternyata order kedua jg harus nunggu 5 detik, jadi dilanjutin ke order ketiga...dan seterusnya... setelah menunggu lima detik, semua outputnya lngsung dikluarin bareng2...
Yaaaps... contoh kyk gini adalah contoh sederhana handling multiple request pake node.js... :D

Friday, July 15, 2016

Permulaan Node.js :D :D :D

Di sini kita akan belajar bahan dasar di node.js... Sooo mmmm... pertama-tama silahkan install dl node.jsnya... bisa dilihat disini...
Naaah...terus kita pake cmd ajjah... :V.. so silahkan buka cmdnya terus ketik "node" kyk gini :
Terus kita coba dengan Hellow Hisoka kyk gini :
Daaan...Hellow Hisokana berhasil.. .. . .. :D
terus klu mo exit cmdnya pake command ".exit" kyk gini :
Teruss kita coba2 yang lain kyk gini :
1
2
var person= {name:"Hisoka", jutsu:"secret", clan:"secret"};
console.log(person);
Daaan...klu kita mau pake IDE kyk notepad atau sublime, kita tinggal bikin file dengan extensi.js terus tar commandnya di cmd "node namafile.js"... kyk gini :
Terus di cmdnya pertama-tama kita ke directory filenya dl...terus baru masukin commandnya :
Terus tekan enter... dan hasilnya :
Naaah... kliatan isi dari var personnya... ehehe... :D
Neext...berikutnya kita bikin function... kyk gini :
Yaaap... yg function add ini kelihatannya sudah ckup jelas dari kode diatas.... :D
Terus klu ditambain function yg g' ada returnya kyk gini :
Kliatan klu function g' ada returnya jadi undefined... :)
Terus klu kita buat function kyk gini... {sebenarnya prosedur seeh bukan function :D}

Naaah... liaaad...yg myVar, sebenarnya dia adalah variabel tapi pas dipanggil itu pake () didepannya... daaan... functionnya juga g' prlu ada nama... so ini disebut anonymous function di node.js... :D
daan.. klu karena functionnya ditaro dalam myVar, berarti kita bisa masukin dia ke fungsi setTimeout kyk gini :
Yaaaps... cukup sekian dulu untuk pemanasan node.js... :)

Semoga bermanfaat.... :)

Installing Node.js in Windows 7

First one first, download the installer from this site..
After downloadin the file...just install it.. :D








And then to make sure it's successfully installed, open your cmd, then type "node" as shown below :
It meanss... Okiee.. :D :D :D
And then try to put this code to your cmd :
console.log("Hellow Hisoka");
Weeell... I think that's all the process for installing and verifying the node.js installation process... :D

We are good to rock with node.js now... ;)