Monday, May 21, 2012

PENGGUNAAN/PENERAPAN KOMPUTASI

Pada pembahasan yang lalu, penulis telah membahas mengenai Model Komputasi. Di kesempatan kali ini, penulis akan membahas tentang contoh penggunaan/penerapan komputasi. Adapun contoh penggunaan/penerapan komputasi, yaitu :

Petri Net

Petri net merupakan salah satu model untuk merepresentasikan sistem terdistribusidiskret. Sebagai sebuah model, Petri net merupakan grafik 2 arah yang terdiri dari placetransition, dan tanda panah yang menghubungkan keduanya. Di samping itu, untuk merepresentasikan keadaan sistem, token diletakkan pada tempat tertentu. Ketika sebuah transition terpantik, token akan bertransisi sesuai tanda panah.Petri net ini pertama kali diajukkan oleh Carl Adam Petri pada tahun 1962.

Gambar 1. Petri Net

Mesin Moore 
Dalam teori komputasi sebagai prinsip dasar komputer, mesin Moore adalah otomasi fase berhingga (finite state automaton) di mana keluarannya ditentukan hanya oleh fase saat itu (dan tidak terpengaruh oleh bagian masukan/input). Diagram fase (state diagram) dari mesin Moore memiliki sinyal keluaran untuk masing-masing fase. Hal ini berbeda dengan mesin Mealy yang mempunyai keluaran untuk tiap transisi.
Mesin Mealy
Dalam teori komputasi sebagai konsep dasar sebuah komputer, mesin Mealy adalah otomasi fase berhingga (finite state automaton atau finite state tranducer) yang menghasilkan keluaran berdasarkan fase saat itu dan bagian masukan/input. Dalam hal ini, diagram fase (state diagram) dari mesin Mealy memiliki sinyal masukan dan sinyal keluaran untuk tiap transisi. Prinsip ini berbeda dengan Mesin Moore yang hanya menghasilkan keluaran/output pada tiap fase.
 
Gambar 2. Mesin Mealy
 
Sumber :

MODEL KOMPUTASI

Model komputasi mempunyai 3 model, yaitu :
  1. fungsional,
  2. logika, dan 
  3. imperatif.
Sebagai tambahan terhadap satuan nilai-nilai dan operasi yang berhubungan, masing-masing model komputasi memiliki satu set operasi yang digunakan untuk menggambarkan komputasi.
Model Fungsional
Model ini terdiri dari satu set nilai, fungsi, dan operasi aplikasi fungsi dan komposisi fungsi. Fungsi ini dapat mengambil fungsi lain sebagai argumentasi dan mengembalikan fungsi tersebut sebagai hasil (higher-order function). Suatu program adalah kumpulan definisi fungsi sedangkan suatu komputasi adalah aplikasi fungsi.
Contoh model fungsional :
Fungsi linier y = 3x + 2 dapat didefinisikan sebagai berikut fx = 3*x + 2.
Model fungsional ini menjadi sangat penting karena telah dikembangkan dari ratusan tahun yang lalu dan sebagai bentuk metode dasar dari sebagian besar metode penyelesaian masalah.
Model Logika
Model ini terdiri dari satu set nilai, definisi hubungan, dan kesimpulan logis. Program terdiri dari definisi hubungan dan suatu komputasi adalah suatu bukti (suatu urutan kesimpulan).
Contoh model logika :
Fungsi linier y = 3x + 2 dapat didefinisikan sebagai berikut F(X,Y) if Y is 3*x + 2
Model logika penting karena merupakan perumusan proses pemberian alasan dan itu berhubungan dengan relatioanl database dan expert system.
Model Imperatif
Model ini terdiri dari satu set nilai yang mencakup suatu keadaan dan operasi tugas untuk memodifikasi pernyataan. Pernyataan adalah set pasangan nilai-nama dari konstanta dan variabel. Program terdiri dari urutan tugas dan suatu komputasi terdiri dari urutan pernyataan.
Contoh model imperatif :
Fungsi linier y = 2x + 3 dapat didefinisikan sebagai berikut y:= 2*x +3
Model imperatif penting karena model berubah dan perubahan adalah bagian dari lingkungan. Model imperatif merupakan pendekatan yang paling tepat untuk pemodelan perangkat keras yang mengeksekusi program.
Sumber : 

APLIKASI SMTP CLIENT PADA DESKTOP MENGGUNAKAN JAVA

SMTP (Simple Mail Transfer Protocol) merupakan cara yang praktis, efisien, dan dapat diandalkan untuk melakukan pengiriman email. Untuk dapat membuat aplikasi SMTP client pada desktop menggunakan Java, ketik kode program berikut ini pada text editor apa saja, seperti notepad, editplus, Eclipse for Java Developer :

import java.io.*;
import java.net.*;
public class SmtpClient {
    public static void main (String argv[]) {
        Socket smtpSocket = null;
        DataOutputStream os = null;
        BufferedReader is = null;      
        try {
            smtpSocket = new Socket("mail.uajy.ac.id",25);
            os = new DataOutputStream(smtpSocket.getOutputStream());
            is = new BufferedReader(new InputStreamReader(smtpSocket.getInputStream()));
        } catch (UnknownHostException e) {
            System.err.println("Nama komputer tidak dikenali");
        } catch (IOException e) {
            System.err.println("Tidak dapat melakukan operasi io");
        }       
        if(smtpSocket!=null && os!=null && is!=null) {
            try {
                //mengirim dan mencetak pesan
                System.out.println(is.readLine());
                os.writeBytes("HELO\r\n");
                    System.out.print("HELLO\n");
                    System.out.println(is.readLine());
                os.writeBytes("MAIL From:nyuyu7@gmail.com\r\n");
                    System.out.print("MAIL From:nyuyu7@gmail.com\n");
                    System.out.println(is.readLine());
                os.writeBytes("RCTP To: kusnadi@mail.uajy.ac.id\r\n");
                    System.out.print("RCTP To: kusnadi@mail.uajy.ac.id\n");
                    System.out.println(is.readLine());
                os.writeBytes("DATA\r\n");
                    System.out.print("DATA\n");
                    System.out.println(is.readLine());
                os.writeBytes("From: nyuyu7@gmail.com\r\n");
                    System.out.print("From: nyuyu7@gmail.com\n");
                    System.out.println(is.readLine());
                os.writeBytes("Subject: testing\r\n");
                    System.out.print("Subject: testing\n");
                    System.out.println(is.readLine());
                os.writeBytes("Hi, ini percobaan kirim email\n");
                    System.out.print("Subject: testing\n");
                    System.out.println(is.readLine());
                os.writeBytes("\r\n.\r\n");
                    System.out.print(".\n");
                    System.out.println(is.readLine());
                os.writeBytes("QUIT\r\n");
                    System.out.print("QUIT\n");
                    System.out.println(is.readLine());
                //Menutup semua objek
                    os.close();
                    is.close();
                    smtpSocket.close();
            } catch (UnknownHostException e) {
                System.err.println("Nama komputer tidak dikenali");
            } catch (IOException e) {
                System.err.println("Tidak dapt melakukan Operasi io");
            }
        }
    }
}

1. Simpan dengan nama SmtpClient.java pada direktori mana saja, misal di D:\workspace\SmtpClient\src
2. Buka cmd (command prompt). ubah root-nya ke direktori penyimpanan kode program tadi (lihat Gambar 1).
3. Kompilasi kode program tersebut dengan perintah javac SmtpClient.java [enter]
4. Eksekusi kode programnya dengan perintah java SmtpClient [enter]

 Gambar 1. Output Program

Selamat mencoba.. :)

Wednesday, May 16, 2012

# Tugas Pemrogramman Jaringan – new 3 mei 2012

1. Jelaskan secara singkat apa yang anda ketahui tentang UDP? 
2. Jelaskan perbedaan TCP dan UDP! 
3. Berikan contoh aplikasi–aplikasi yang menggunakan protokol UDP, dan jelaskan bagaimana kerja aplikasi tersebut! 
4. Bagaimana konsep Client Server dalam jaringan komputer? 
5. Jelaskan secara singkat apa yang anda ketahui tentang Protokol Transport! 
6. Dalam protokol transport terdapat dua protokol utama yaitu TCP and UDP, jelaskan perbedaan TCP dan UDP! 
7. Berikan contoh aplikasi–aplikasi yang menggunakan protokol TCP, dan jelaskan bagaimana kerja aplikasi tersebut! 
8. Jelaskan langkah dan prinsip kerja socket programming untuk komunikasi dua arah! 

Wednesday, May 2, 2012

MENGUBAH HOSTNAME MENJADI IP ADDRESS PADA LOCAL COMPUTER MENGGUNAKAN JAVA

Hampir sama dengan pembahasan sebelumnya, yaitu Cara Mendapatkan IP Address Menggunakan Java yang membedakan adalah pada pembahasan kali ini untuk mendapatkan IP Address pada local computer, user harus mengetahui terlebih dahulu hostname pada local computer tersebut. Dari situ, hostname yang diinputkan dirubah menjadi byte - byte IP Address. Untuk lebih jelasnya, perhatikan langkah - langkah di bawah ini :

1. Buat sebuah file java dan masukan lising program dibawah ini pada IDE apapun, seperti editplus atau Eclipse for Java Developer :

Gambar 1. Listing Program NsLookup

Tuesday, May 1, 2012

MENGUBAH IP ADDRESS MENJADI HOSTNAME PADA LOCAL COMPUTER MENGGUNAKAN JAVA

Cara lain mendapatkan hostname yaitu dengan mengubah IP Address menjadi hostname. Untuk lebih jelasnya, perhatikan langkah - langkah berikut :

1. Tulis listing program berikut ini pada IDE apapun seperti editplus ataupun Eclipse for Java Developer.
Gambar 1. Listing program IPtoName