Showing posts with label knowledge. Show all posts
Showing posts with label knowledge. Show all posts

Wednesday, July 8, 2015

Game Simulasi Tank Rantai Markov (GameMaker)

udah lama ga share nih bro sibuk kuliah :v, kali ini ane mau share tugas ahir mata kuliah Teknik Simulasi Dan Pemodelan ane.
jadi si dosen minta bikinin game berbasis AI(Artificial Intellegent) dan menghitung Probabilitas dari sebuah peperangan.
~Sedikit Curhat :D ane ubek ubek om google game rantai markovnya / tank simulator, tank apalah semua keyword dah ane coba ga game berbasis AI ini ga nemu nemu , ane cari di website 3D Rad ga nemu juga tank simulator, googling lagi website GreenFoot ga nemu juga , ahirnya dapet info dari temen , suru coba cek website GameMaker barangkali ada game yg serupa , ahirnya nemu game bernama ChaotaTanks yang dibikin sama agan THEEPICWAC  nih bisa diliat disini bro.
gamenya udah bagus , sangat bagus , tapi kurang rapih di menu dan pause nya. nah menurut petuah yang pernah saya dengar yaitu ATM/

Apa tuch ATM ?

ATM itu singkatan dari Amati Tiru Modifikasi , nah berbekal sedikit pengetahuan saya mengenai coding GameMaker ahirnya ane benerin sedikit bug dan menambahkan menu dan pause nya bro.
langsung aja bro silahkan di download di bawah.

ScreenShot :




barangkali mau di edit edit udah ane sedian file .GMK yang bisa di edit lewat software Game Maker, biasalah mahasiswa kan sukanya edit edit :D
oh iya , baca petunjuknya dulu ya bro biar ngerti gamenya , gamenya berbasis AI jadi kita tinggal summon summon aja , tinggal nonton aja. sesuai judulnya rantai markov yaitu menghitung probabilitas siapa yg akan memenangkan peperangan.

Link Download : Link

sekian share kali ini bro , masih banyak bug yg blm di benerin tapi , dosen sudah memfonis game saya bagus sesuai apa yg di inginkan :D jadi ane ga bener benerin bugnya bro maaf.
sekian share saya kali ini terimakasih.
Read More

Wednesday, May 20, 2015

Mengantisipasi Android Yang Hilang

halo bro dah lama ga nulis blog nih gara gara sibuk kuliah , semakin mendekati akhir semester , semakin sibuk hehehe.
kali ini saya akan mengshare Cara mengatasi android yang hilang tanpa menggunakan aplikasi pihak ketiga (pakai aplikasi bawaan).

Jadi Ceritanya gini... tempo hari saya mendapat kabar dari sodara ane (panggil saja dia si lontong) .
jadi handphonenya si lontong ini hilang , ntah di curi temannya atau emang si lontong yang lupa terahir meletakan handphonenya dimana. nahh saking paniknya dia sampe nginep di rumah ane karna takut di marahi ibu nya bro , secara gitu anak anak sekarang kan hpnya bagus bagus , begitu ilang ehhhh malah takut pulang kerumah.  berhubung ane anak IT ~jasiiikkk di mata masyarakat itu masyarakat taunya anak IT itu bisa ngutak ngatik teknologi , walaupun di bangku kuliah ga ada mata kuliah Melacak Handphone android Hilang. akhirnya dia minta ane lacak tuh hpnya yang ilang. tapi alhasil gabisa dilacak karna doi blm ngaktifin suatu settingan yang kali ini mau ane share sama ente ente bro.
ya wasalam lah handphonenya monggo di ikhlasin. makanya sebelum di curi alangkah baiknya kita antisipasi melakukan cara ini.

oke cukup basa basinya , langsung mulai aja.
kita akan pakai aplikasi Google Setting. jadi Google Setting ini berfungsi untuk melaporkan dimana posisi kita berada dengan mengaktifkan GPS pada handphone yang ingin di lacak, tentunya Handphone tersebut harus memiliki datapaket agar bisa terhubung internet. ibarat Google Setting sebagai Listener/Server yang senantiasa memberikan informasi apabila ada request dari user.
mari mulai aktifkan Google Setting nya, mari buka aplikasi Google Setting
sebelum kita mulai , pastiin handphone yang mau di setting udah log in pakai email Google ya karna nanti kita ngelacaknya dari email yang sudah LOG IN di handphone tersebut

lalu klik tombol Security 


terus ceklist bagian yang saya tandai kotak merah seperti di bawah ini:
*kalau ada pop up klik yes aja


nahh kalo semua udah selesai , anda sudah berhasil mensetting android anda agar bisa di remote dari google.
cara ngelacaknya gimana bro?
okee cara ngelacaknya pertama tama mari kita buka link https://www.google.com/android/devicemanager , nahhh kalo dah di buka silahkan log in email anda yang di pakai di android.
nahh aplikasi ini bernama Android Device Manager (ADM) nanti kita akan meremote dari aplikasi ini.

di kotak merah itu adalah penjelasan tentang device android yang memakai email anda , dari kotak merah terdapat tombol Ring, Lock, Erase untuk mencoba meremote device yang sudah kita setting tadi , silahkan klik Ring untuk ngebunyiin device anda.
oh iya , handphone harus mengaktifkan datapaket atau harus bisa terhubung internet untuk melakukan remote dari Android Device Manager ini. tidak akan bisa di remote jika handphone tersebut tidak terhubung internet.
jangan pernah sekali sekali klik Erase dan Lock apabila Handphone anda tidak dalam keadaan benar benar dicuri !!! karna Erase akan membuat handphone anda mereset pabrik atau Factory Reset, Lock berfungsi untuk mengunci handphone anda.

kotak biru adalah lokasi dimana handphone saya berada.
oke handphone android anda berhasil di setting agar bisa di remote apabila hilang, dicuri, atau di umpetin teman.
perlu di ingat , selalu aktifkan data paket untuk menghindari kejadian kejadian yang tidak di inginkan bro, sekarang ga cuma mbah dukun aja yang bisa ngelacak barang hilang , mbah Google ga kalah canggih bro hehehe.

oke bro sekian post kali ini mudah mudahan bermanfaat
Read More

Friday, April 17, 2015

[Part 2] Program Sederhana Java Dengan Database MySQL

nahh kita sampai di part 2 bro biar kayak harry potter gitu ber sequel jajajajaja :D.
untuk part 1 nya bisa dilihat disini nih bro.
oke lanjut ya kita langsung menuju ke program aja tanpa basa basi.

Membuat Form Sederhana

klik new file di netbeans pilih category Swing GUI Forms dan File Typesnya: JFrame Form lalu beri nama Form

nah tampilannya masih kosong kan, kita perlu menambahkan beberapa text box dan button button.
untuk menambahkannya , tinggal Drag and Drop saja dari layer palatte.
dan ubah nama variabelnya sesuaikan seperti punya saya silahkan lihat gambar berikut:



semoga temen temen bisa ngerti ya ini semua , saya memisahkan setiap jenis jenis palettenya dengan warna yang berbeda-beda , untuk nama variabelnya bisa dilihat di kolom Navigator (di sebelah kiri) samakan saja variabelnya ya untuk menghindari error. untuk mengubah nama variabel tinggal klik kanan palette yang mau diubah , lalu klik Change Variabel Name.
oke setelah kita selesai membuat form , kita beralih untuk coding codingnya ya


package universitas;

import java.sql.*; //maksud dari (*) bintang adalah memanggil library semua yang ada di properti sql
import java.sql.SQLException; //library exception
import java.sql.Connection; //library koneksi sql
import javax.swing.table.DefaultTableModel; //library default table model
public class Form extends javax.swing.JFrame {

    private DefaultTableModel model; //variabel model table yang kita inginkan atau custom

    public Form() 
    {
        initComponents();
        
        model = new DefaultTableModel(); //model default membentuk table yang kita inginkan kolom dan barisnya
        
        tabelmahasiswa.setModel(model); //untuk mengatur table model
        model.addColumn("NIM");             //mengatur kolom
        model.addColumn("Nama");            //mengatur kolom
        model.addColumn("Tanggal Lahir");   //mengatur kolom
        model.addColumn("Jurusan");         //mengatur kolom
        model.addColumn("Alamat");          //mengatur kolom
        
        loadData(); //memanggil metode loadData
    }
    
    public void loadData() //metode loadData
           
    {
        model.getDataVector().removeAllElements();  //menghapus seluruh data
        
        
        model.fireTableDataChanged(); //memberi tahu bahwa data telah kosong
         
        try
        {
            Connection c = KoneksiDatabase.getkoneksi();
            Statement s = c.createStatement();
            
            String sql = "SELECT * FROM mahasiswa"; //query database berfungsi untuk menampilkan semua data dari tabel mahasiswa
            ResultSet r = s.executeQuery(sql);
            
            while(r.next())
            {
                //lakukan penelusuran baris
                Object[] o = new Object[5];
                o[0] = r.getString("NIM");
                o[1] = r.getString("NAMA");
                o[2] = r.getDate("TANGGAL_LAHIR");
                o[3] = r.getString("JURUSAN");
                o[4] = r.getString("ALAMAT");
                
                model.addRow(o);
            }
            
            r.close();
            s.close();
        
        }
        
        catch(SQLException e)
        {
            System.out.println("Terjadi Error di loaddata");
        }
        kosongin(); //memanggil metode kosongin
    }

     public void kosongin() //metode kosongin berfungsi untuk mengosongkan semua field
    {
        String ksong = "";
        String nulll = null;
        inputnama.setText(ksong);
        inputnim.setText(ksong);
        inputjurusan.setText(ksong);
        inputlahir.setText(nulll);
        inputalamat.setText(ksong);
     
    }

metode loadData berguna untuk me load data yang kita simpan di database kita ketika program di jalankan , makanya loaddata terletak di dalam konstruktor Form.
perlu di ingat , ketika kita memakai Default Table Model kita hanya di perkenankan untuk memasukan data bertipe Array Object ke dalam Default Table Model.
metode kosongin berguna untuk mengosongkan atau meng clear kan semua yang ada di text field agar user tidak susah susah menghapus setiap ingin mengisi data berikutnya.
oke kita lanjut

Menambah Aksi Ke Button Tambah

kita akan menambahkan aksi aksi ke dalam button yang telah kita buat.
pertama mari kita buat aksi untuk button Tambah.
silahkan klik kanan button Tambah >> Events >> Action >> actionPerformed
nah otomatis kita akan di arahkan ke script action button Tambah.
Silahkan isi Seperti ini


private void tambahActionPerformed(java.awt.event.ActionEvent evt) {                                       
        String nim = inputnim.getText();    //mendapatkan text dati field inputnim  
        String nama= inputnama.getText();   //mendapatkan text dati field inputnama
        java.util.Date tanggaLahir = (java.util.Date) inputlahir.getValue(); 
        String jurusan = inputjurusan.getText(); //mendapatkan text dati field inputjurusan
        String alamat = inputalamat.getText();   //mendapatkan text dati field inputalamat
        
        
        try
        {
            Connection c = KoneksiDatabase.getkoneksi();
            String sql = "INSERT INTO mahasiswa VALUES (?, ?, ?, ?, ?)"; //query database memasukan data ke values sekian sekian
            PreparedStatement p = c.prepareStatement(sql);
            
            p.setString(1, nim);
            p.setString(2, nama);
            p.setDate(3, new java.sql.Date(tanggaLahir.getTime()));
            p.setString(4, jurusan);
            p.setString(5, alamat);
            
            p.executeUpdate();
            p.close();
        }
        
        catch(SQLException e)
        {
            System.out.println("Terjadi Error di tambah");
        }
        finally //akan tetap dijalankan walaupun error tertangkap
        {
            loadData();
        }  
    }                 

bisa dilihat , pada button Tambah kita mencoba menambahkan , data data yang telah di input di field ke dalam database mahasiswa yang sudah kita buat tadi , syntaks getText() berguna untuk mendapatkan text dari Field yang bersangkutan

Menambahkan Aksi Ke Button Ubah

untuk aksi button Ubah , agak sedikit berbeda dengan aksi button Tambah,  perbedaannya adalah pertama kita harus mendeteksi baris yang sedang di klik, setelah itu baru melakukan proses pengubahan data yang diklik dengan data baru yang ada dalam input field.
langsung saja skrip button ubah:


private void ubahActionPerformed(java.awt.event.ActionEvent evt) {                                     
        int i = tabelmahasiswa.getSelectedRow();
        if (i == -1) 
        {
           return; //tidak ada baris terseleksi 
        }
        
        //ambil nim yg terseleksi karna nim primary key
        String nim = (String) model.getValueAt(i, 0);
        String nama = inputnama.getText();
        java.util.Date tanggallahir = (java.util.Date) inputlahir.getValue();
        String jurusan = inputjurusan.getText();
        String alamat = inputalamat.getText();
        
        try
        {
            Connection c = KoneksiDatabase.getkoneksi();
            String sql = "update mahasiswa set nama = ?, tanggal_lahir = ?, jurusan = ?, alamat = ? where nim = ?"; //query update mysql
            PreparedStatement p = c.prepareStatement(sql);
            
            p.setString(1, nama);
            p.setDate(2, new java.sql.Date(tanggallahir.getTime()));
            p.setString(3, jurusan);
            p.setString(4, alamat);
            p.setString(5, nim);
            
            p.executeUpdate();
            p.close();
        }
        
        catch (SQLException e)
        {
            System.out.println("Terjadi Error");
        }
        finally
        {
            loadData();
        }
        
    }                           

kondisional if berguna untuk mendapatkan baris yang terseleksi pada tabel, jika tidak ada baris yang terseleksi, maka proses Ubah dibatalkan.
untuk mendapatkan baris yang terlseksi dengan menggunakan metode getSelectedRow()  dan jika returnnya -1 maka baris tidak ada yang terseleksi.

Menambahkan Aksi Baris Terseleksi

aksi ini berguna ketika baris Table terseleksi, misalnya: jika baris pertama terseleksi, maka program akan menampilkan data yang terseleksi tersebut pada Form. Hal ini agar pengubahan lebih mudah, karna kita tidak perlu memasukan seluruh datanya lagi.

Untuk menambahkan aksi ketika baris terseleksi, kita dapat menggunakan aksi Mouse Click, yaitu aksi yang dijalankan ketika mouse mengklik. Caranya , klik kanan komponen Table pada Form, setelah itu pilih Events >> Mouse >> mouseClicked. Kita otomatis akan diarahkan ke script tersebut.
Silahkan isi skripnya seperti ini:


 private void tabelmahasiswaMouseClicked(java.awt.event.MouseEvent evt) {                                            
       int i = tabelmahasiswa.getSelectedRow();
       
       if (i == -1)
       {
           return;
       }
       
       String nim = (String) model.getValueAt(i, 0);
       inputnim.setText(nim); //setText untuk mengatur text sesuai nim yang di seleksi
       
       String nama = (String) model.getValueAt(i, 1);
       inputnama.setText(nama); //setText untuk mengatur text sesuai nama yang di seleksi

       
       java.util.Date tanggalLahir = (java.util.Date) model.getValueAt(i, 2);
       inputlahir.setValue(tanggalLahir); //setValue untuk mengatur Date sesuai Date yang di seleksi

       
       String jurusan = (String) model.getValueAt(i, 3);
       inputjurusan.setText(jurusan); //setText untuk mengatur text sesuai jurusan yang di seleksi

       
       String alamat = (String) model.getValueAt(i, 4);
       inputalamat.setText(alamat); //setText untuk mengatur text sesuai alamat yang di seleksi

       
       
    }                            


Menambahkan Aksi Ke Button Hapus

Untuk aksi Hapus, kita tidak perlu menggunakan Input Form, yang kita perlukan hanyalah baris yang terseleksi. Jika baris tidak ada yang terseleksi, maka proses penghapusan dibatalkan.
Isikan Script berikut di aksi Button Hapus


 int i = tabelmahasiswa.getSelectedRow();
       if (i == -1) //mengecek apakah ada baris yang terseleksi
       {
           return;
       }
       
       String nim = (String) model.getValueAt(i, 0);
       
       try
       {
           Connection c = KoneksiDatabase.getkoneksi();
           
           String sql = "delete from mahasiswa where nim = ?"; //delete dari kolom nim
           PreparedStatement p = c.prepareStatement(sql);
           
           p.setString(1, nim);
           
           p.executeUpdate();
           p.close();
       }
       
       catch(SQLException e)
       {
           System.err.println("Terjadi Error");
       }
       
       finally
       {
           kosongin();
           loadData();
       }
    }                                     

lihat kita hanya perlu mengecek apakah ada baris yang terseleksi atau tidak.
mudah kan brooooo, oke untuk aksi button terahir mari kita tambahkan

Menambahkan Aksi Ke Button Clear

button Clear berfungsi untuk mengosongkan semua field yang ada agar user tidak usah menghapus field apabila ingin mengisi data yang selanjutnya.
ini yang paling susah brooo parah bener nihhhhh , siapin kopi, rokok , kembang 7 rupa deh untuk nulis script ini.
langsung aja ya


private void btnclearActionPerformed(java.awt.event.ActionEvent evt) {                                         
        kosongin();
    }    

gimana susah kan broooo, hahahaha just kidding :D ini yang paling gampang dari semuanya hahahaha.

oke kalo semua udah di tulis coba jalanin brooo di running aja, jangan lupa Xampp nya di run juga broooo nanti gabisa konek ke MySQL.
nih hasilnya ane skrinsutin

gimana pusing kan loe , sama TS juga dulu pusing juga , tapi setelah bertapa di kalijodo  di baca baris per baris , dan di ganti ganti variabelnya , ehh ngerti dehhhh.
Program ini masih bisa di kembangin bro sesuai kreativitas loe loe pada.
kira kira segini bro ilmu yang TS berikan , TS juga masih belajar broo tolong di maklumin ya kalo ada yang salah salah, silahkan kalo ada yang masih bingung insyaallah TS jawab (kalau bisa :D).
oke sekian ya bro TS ngantuk mau bobo Cantik duluuu Muachh :*
Read More

Wednesday, April 15, 2015

[Part 1] Program Sederhana Java Dengan Database MySql

Assalamu'alaikum warahmatullahi wabarakatuh
alhamdulilah akhirnya masih diberi kesempatan untuk sharing ilmu kepada temen temen walaupun ilmunya sedikit semoga bermanfaat :D
artikel sebelumnya membahas tentang cara menggunakan Kelas, Metode, dan Konstruktor kalo gapercaya klik Disini
kali ini saya akan mencoba membagi ilmu kepada temen temen bagaimana cara mengkonekan database MySql di Java. Sebelum kita membuat program , kita diharuskan mengetahui tentang MySql. moso anak IT gatau MySql seh, pasti udah pada tau semua kan , kalo emang msh ada yang gatau(capek deh) coba tanya mbah google ya , karna saya tidak akan membahas MySql disini :D. saya akan lebih fokus kepada fungsi skrip skrip yang akan kita praktikan.
sebelumnya ada beberapa hal yang harus di siapin dulu nih bro:


  1. 1.Xampp
Xampp Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl.
nah karna kita bakalan pakai MySQL untuk simpan databasenya , kita harus menginstall software ini broo (bukan promosi) supaya MySql bisa di terjemahkan. silahkan donglot Disini sesuaikan dengan Operating System anda ya, kalo dah di download di install ya.

  1. 2.Pengetahuan Fundamental Sintaks MySQL
nah ini nih yang lebih penting , harus tau sintaks dasar bahasa MySQL bro , kalo basicnya aja gatau nanti bakalan pusing kalo ketemu Query-Query nya bro , karna ada pepatah ngomong:
kau harus belajar berjalan untuk bisa berlari B-) ~hahahaha

okee kalo semua dah di siapin langsung aja bikin projek baru brooo di NetBeans pastinya  eitss santai dulu , jangan buru buru , alangkah baiknya kita bikin database nya dulu okee masbro.
silahkan buka Xampp Control Panel yang sudah kita install tadi , dan Klik Start pada Apache dan MySQL biar server localhost kita jalan. liat gambar di bawah kalo masih bingung

oke kalo udah di jalanin di minimize aja ya , jgn di close.
Dalam kasus ini kita membuat program sederhana Universitas yang memiliki fungsi CRUD yaitu Create    (Insert)
Read      (Select)
Update   (Update)
Delete    (Delete)
Apanya yang mau di CRUD in tuh om? , karna dalam kasus ini mengenai universitas , jadi Objek yang kita CRUD kan yaitu mahasiswa. Mahasiswa sendiri tentunya memiliki attribut masing masing yaitu nama , tanggal lahir, alamat, jurusan , nim , dll.

silahkan buat database baru bernama universitas

create database universitas;

namanya tolong disamain saja ya agar nanti pas program dijalankan tidak ada yang error. "universitas" tidak ada kapital.
kira kira tablenya kaya gini bro:

berikut table mahasiswa yang saya buat.
sipp kalo udah, baru deh kita buat programnya di NetBeans broo.
langsung aja new project namain universitas jangan centang create main class nya ya , nanti itu belakangan aja.

Membuat Koneksi Mysql

nah kalo udah bikin projectnya, saatnya membuat Koneksi Database ke database universitas yang kita buat sebelumnya. hal pertama yang kita lakukan adalah menambahkan Driver MySQL ke dalam project yang kita buat. Caranya , klik kanan bagian Library pada project yang kita buat lalu   klik add library
lalu pilih "MySQL JDBC DRIVER"
kira kira seperti ini gambarnya:

setelah itu klik add library
oke setelah kita menambahkan library MySQL JDBC DRIVER. kita akan membuat package untuk menggantikan <default package>. silahkan klik kanan project universitas >>  New >> Java Package
namai saja packagenya "universitas".
nahh saatnya kita membuat class yang berisikan kode kode.
silahkan buat class bernama "KoneksiDatabase" lalu isikan kode berikut:


package universitas;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class KoneksiDatabase {
    private static Connection koneksi;
    
    public static Connection getkoneksi()
    {
       if (koneksi == null) { //jika koneksi kosong/idle
           try
           {
               String url = "jdbc:mysql://localhost:3306/universitas"; //default JDBC Driver
               String user = "root"; //user 
               String password = ""; //password default KOSONG
               
               DriverManager.registerDriver(new com.mysql.jdbc.Driver());
               
               koneksi = DriverManager.getConnection(url, user, password);
           }
           
           catch (SQLException e)
           {
               System.out.println("Koneksi Error di tahap KoneksiDatabase");
           }
       }
       return koneksi;
    }
}

saya akan mencoba menjelaskan skrip di atas.
di dalam class KoneksiDatabase terdapat variabel Static Koneksi kenapa harus Static , karna variabel Static bisa digunakan tanpa harus membuat objek dari kelas itu sendiri, jangan hawatir , kita akan membahasnya nanti :D. ohh iya , jika variabelnya bertipe Static maka jika ingin memanggil variabel tersebut di dalam method , method itu harus bertipe Static juga bro.
pada variabel String url, user, password harus disesuaikan di komputer anda ya , jika anda telah merubah settingan user dan password anda bisa menyesuaikannya dengan punya anda, nahh itu url letak kita menyimpan database, jika sobat ingin tau , silahkan buka localhost anda , tetapi defaultnya seperti itu yaa.

oke sekarang kita beralih ke metode getkoneksi terdapat kata kata try dan catch.
apa itu try dan catch? sebenarnya saya tidak ingin menjelaskannya habis habisan , saya hanya akan menjelaskan basicnya saja. try dan catch adalah suatu penanganan eksepsi atau penanganan error. simpelnya , try dan catch akan memberitahu kita jika koneksi berhasil atau koneksi error. tentu sangat berguna jika kita mengetahui dimana error kita berada , karna jika tidak membuat try dan catch di sisi programmer tidak akan tahu telah terjadi error di baris ke berapa? maka dari itu sangat berguna menggunakan try dan catch.

oke jika sudah dibuat , kita akan lanjut besok ya di part ke 2 :D
sorry apabila penjelasannya kurang mengerti , karna TS juga masih belajar.

Read More

Sunday, April 5, 2015

[BELAJAR]Kelas, Method, Konstruktor di Java

Post sebelumnya membahas pentingnya kelas di dalam pemrograman java
Kali ini TS akan membagikan APA ITU KELAS? METHOD ? dan KONSTRUKTOR? di java
oke langsung aja.

Kelas

bagi yg baru belajar java pasti akan bingung.
Kok kelas di taruhnya beda file sih?  ya kelas bisa di taruh berbeda file / workplace agar kita gampang untuk memodifikasi, dan mengidentifikasi code code. tapi kelas juga bisa di taruh pada workplace main kelas tapi saya tidak merekomendasikan taruh di dalam main kelas karna akan susah memahami bagi yg pemula. oh iya jika anda membuat kelas sudah pasti kelas itu sendiri memiliki object , kita akan membahas tentang Object nanti.
mari lihat gambar berikut cara membuat kelas:

klik file pada netbeans lalu klik New File >> Categories: java >> File Types: Java Class

lalu beri nama : mahasiswa
klik finish jika sudah
maka tampilan awal kelas yg belum terisi Attribut dan Method seperti berikut:


package latihankelas;

public class mahasiswa {
    
}

dalam konsep OOP kelas memiliki attribut.
Di kelas juga terdapat Attribut.
Apa itu Attribut? Attribut adalah variabel yang di deklarasikan di dalam kelas.
dalam kasus ini kelas tersebut adalah mahasiswa, jadi mahasiswa harus memiliki attribut , attribut apakah yg biasanya ada di mahasiswa? biasanya terdapat nim, nama, alamat, email.
mari kita membuat Attribut:



package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
}

maksud dari public adalah , Attribut dari Nama, alamat, email, dan nim bisa di akses di luar kelas tersebut. itu dinamakan VISIBILITAS atau visibility.


Visibility

Visibilitas adalah suatu properti yg berguna untuk mengatur attribut dan method agar bisa di akses dan tidak di akses oleh kelas yang kita tentukan.
berikut adalah table kebenaran Visibility:

jadi Attribut Nama, alamat, dan email adalah public , kita bisa mengubah di kelas mana saja, tetapi pada Attribut Nim adalah private , jadi kita hanya bisa mengubah Attribut Nim di dalam kelas itu sendiri yaitu kelas mahasiswa.
Ahhh gapercaya ah broo.  gapercaya ?? oke kita buktikan, tapi sebelumnya tambahkan kode berikut di dalam kelas mahasiswa:


package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public void ubahdata(String nama,String alamat,String email) //ini adalah method
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
    }
    
    public void ubahnim(int nim) //ini adalah method
    {
        this.Nim = nim;
    }
}

lalu tulis code seperti ini di dalam main kelas:



package latihankelas;


public class Latihankelas {

    public static void main(String[] args) {
        mahasiswa junior = new mahasiswa(); //membuat object dari kelas mahasiswa
        junior.Nama = "ucok";
        junior.Alamat = "jl.hj boong";
        junior.Email = "squalvj@gmail.com";
        junior.Nim = 1234;      //tidak akan bisa di jalankan karna Nim mempunyai visibilitas private. jika baris ini dihapus baru akan bisa
        
        junior.ubahnim(1234);  //memakai method ubahnim baru bisa mengubah nim karna method tersebut berada di kelas yg sama
    }
}

coba jalankan programnya, pasti tidak akan bisa di jalankan karna nim mempunyai visibilitas Private, maka dari itu kita menggunakan method bernama ubahnim agar bisa mengubah nilai di attribut Nim karna method ubahnim mempunyai visibilitas public yg berarti kita bisa mengaksesnya di kelas mana saja. silahkan ubah kode script menjadi seperti ini agar bisa di jalankan:


maka program sukses di jalankan.
pada kasus ini , Object dari kelas mahasiswa yaitu junior , objek adalah suatu  data yang mempresentasikan sebuah kelas yang di wakilinya, pada kasus ini object mewakili kelas mahasiswa.


METHOD

di java terdapat 2 buah metode yaitu:

  1. 1.Fungsi
Fungsi merupakan metode yg memliki nilai balik jika metode tersebut dipanggilm cara pembuatan sebuah fungsi adalah dengan cara menentukan nilai baliknya, lalu membuat nama metodenya.
di dalam method jenis Fungsi , kita wajib menentukan return karna method jenis ini harus memliki return.

  1. 2.Prosedur
Prosedur, merupakan metode yang tidak memiliki nilai balik, cara pembuatan prosedur sama dengan fungsi , tapi bedanya hanya Prosedur tidak boleh memiliki nilai balik(return), Prosedur dibuat menggunakan kata kunci void sebelum deklarasi nama method.

tanpa sadar , anda sudah menggunakan method jenis prosedur dengan menuliskan script script yang di atas.


package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public void ubahdata(String nama,String alamat,String email) //ini adalah method berjenis PROSEDUR
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
    }
    
    public void ubahnim(int nim) //ini adalah method berjenis PROSEDUR
    {
        this.Nim = nim;
    }
}

method ubahnim dan ubahdata merupakan suatu Method berjenis prosedur.
mari kita lengkapi kode menjadi seperti ini:


package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public void ubahdata(String nama,String alamat,String email) //ini adalah method berjenis PROSEDUR
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
    }
    
    public void ubahnim(int nim) //ini adalah method berjenis PROSEDUR
    {
        this.Nim = nim;
    }

    public String tampilNama() //method fungsi
    {
        return Nama;
    }
    
    public String tampilAlamat() //method fungsi
    {
        return Alamat;
    }
    
    public String tampilEmail() //method fungsi
    {
        return Email;
    }
    
    public int tampilNim() //method fungsi
    {
        return Nim;
    }
}

contoh penggunaan:


package latihankelas;


public class Latihankelas {

    public static void main(String[] args) {
        mahasiswa junior = new mahasiswa(); //membuat object dari kelas mahasiswa
        junior.Nama = "ucok";
        junior.Alamat = "jl.hj boong";
        junior.Email = "squalvj@gmail.com";
        junior.Nim = 1234;      //tidak akan bisa di jalankan karna Nim mempunyai visibilitas private. jika baris ini dihapus baru akan bisa

        String nama = junior.tampilNama(); //penggunaan method fungsi
        System.out.println("nama junior adalah: " + nama); //menampilkannya
        
        junior.ubahnim(1234);  //memakai method ubahnim baru bisa mengubah nim karna method tersebut berada di kelas yg sama
    }
}

berikut penjelasannya mudah mudahan ngerti ya, maklum TS cupu bro edit pake paint wkwkwkw :D

oh iya di atas adalah contoh penggunaan parameter, parameter boleh tidak di isikan bro. artinya suatu Method boleh tidak ada parameter. Dan tipe data di parameter harus sama dengan tipe data yang akan di isikannya, apabila di parameter method ubahdata memiliki tipe data String untuk nama, maka kita tidak boleh mengisikan angka atau integer untuk mengisi di parameter Nama tersebut.



Konstruktor

Kontruktor merupakan metode yg secara otomatis dipanggil ketika sebuah objek dipanggil. Cara membuat metode konstruktor adalah, nama metode harus SAMA dengan nama kelas dan tidak mengembalikan nilai balik(return) dan tidak boleh juga menggunakan kata kunci void. silahkan lihat contohnya bro :



public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public mahasiswa() //konstruktor
    {
        System.out.println("Objek mahasiswa dibuat!");
    }
    
    public mahasiswa(String nama, String alamat, String email, int nim)
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
        this.Nim = nim;
    }
}

lihat konstruktor mempunyai nama yg sama dengan kelas tersebut, dan konstruktor tidak memiliki return maupun kata kunci void.
nah contoh penggunaannya di dalam main kelas seperti ini bro:



public class Latihankelas {

    public static void main(String[] args) {
        mahasiswa junior = new mahasiswa(); //apabila di jalankan akan menghasilkan "Objek mahasiswa dibuat!"
        
        mahasiswa senior = new mahasiswa("Udin Gambrong", "Jl.hj boong", "Udin31@hajilulung.com", 12345);
       
        
    }
}

lihat penggunaannya dengan berbeda objek:

  • Junior

Objek junior memakai konstruktor yg tidak mempunyai parameter jadi apabila di jalankan akan menghasilkan output "Objek mahasiswa dibuat!"


  • Senior
objek Senior memakai konstruktor yang menggunakan parameter , jadi kita bisa mengisikan data langsung tanpa harus menggunakan method-method lainnya karna pada  parameter tersebut berfungsi untuk mengisikan data attribut di kelas mahasiswa

tanpa sadar anda sudah menggunakan method overloading di dalam skrip di atas , saya tidak akan menjelaskannya disini , mungkin nanti akan saya jelaskan di post post terbaru.


nahh sudah mengerti bukan tentang dasar dasar penggunaan Kelas, Method, Konstruktor, ini hanya pengetahuan dasar dalam menggunakan kelas, method , dan konstruktor. nanti kita akan belajar tentang kelas abstract, interface, overloading method, overloading Konstruktor, enumerasi, dll. maka dari itu kita harus mengerti konsep dasar seperti ini apabila ingin beralih ke konsep yang lebih Advance seperti yang saya singgung di atas. kalau konsep dasarnya saja tidak tahu tidak akan bisa tau konsep konsep Advance yang saya singgung di atas.

oke bro kalo ada yang bingung silahkan di tanyain ya bro , jangan malu bertanya brooo , ada pepatah ngomong:
Malu bertanya , sesat di jalan Googling di jalan. karna sekarang udh modern broo pepatahnya juga dah megang android, gausah lg tanya di jalan , tinggal buka google maps :D.

oke sekian ya artikel saya yang berantakan ini. 

Assalamualaikum Warrahmatullahi Wabarrakatuh

Read More

Tuesday, March 31, 2015

Kenapa kita harus membuat kelas di java?



tempo hari TS mengikuti kelas pemrograman dan beruntungnya kelas pemrograman tersebut membahas tentang java , trainer kelas tersebut sebenarnya mengerti apa definisi Kelas sebenarnya , tetapi sang trainer sangat sulit menjelaskan kepada mahasiswanya. kali ini Saya akan menjelaskan sedikit pengetahuan saya mengenai Kelas di Java.


Saat pertama belajar java , TS pernah berfikir
kok bahasa pemrograman ini ribet bgt pake kelas kelas segala
ternyata pertanyaan saya cukup membuat saya terlihat bodoh,  karna seharusnya "Kelas" itulah yg menjadi  fitur utama bahasa java, dan banyak orang memilih java karna memiliki fitur yg tidak dimiliki bahasa pemrograman lain.
dengan adanya kelas, kita bisa mensederhanakan sejumlah kode kode yg tidak harus di tulis berkali kali dan dengan adanya kelas juga kita dapat meminimalsirkan pendeklarasian Variabel sehingga dapat menghemat size dari program yg kita buat.


Kelas Itu Apa sih ?

kelas adalah suatu prototype sekumpulan script yg saling berintegrasi terhadap kelas lainnya , dan kelas wajib memiliki objek. Apa itu Objek ? saya tidak akan menjelaskan mengenai objek pada post kali ini jika anda ingin mengetahui apa itu objek silahkan klik Disini.
saya analogikan seperti ini:

Objek merupakan hasil dari sebuah kelas, jika diibaratkan Objek adalah kue,maka kelas adalah cetakan kuenya, dimana kue dibuat menggunakan cetakan tersebut. Dan sebuah cetakan kue dapat membuat beberapa kue, artinya sebuah  kelas  dapa t   membua t   beberapa  object


oke balik ke topik ya

Kenapa kita harus membuat kelas?

Dalam kasus ini , program ini adalah program yg ber output sama hanya saja beda Metode. anggap saja anda sudah mengetahui tentang pendeklarasian kelas dan objek .
baiklah mari lihat kedua program yg sama di bawah ini:

  • Program 1 memakai kelas:


public class mahasiswa {
    public String Nama, Alamat; //attribut di kelas mahasiswa
    public int Nim, Semester;  //attribut di kelas mahasiswa
    
    public void setNama(String nama)
    {
        this.Nama = nama;
    }
    
    public String tampilNama()
    {
        return Nama;
    }
    
    public void setNim(int nim)
    {
        this.Nim = nim;
    }
    
    public int tampilNim()
    {
        return Nim;
    }
    
    public void setAlamat(String alamat)
    {
        this.Alamat = alamat;
    }
    
    public String tampilAlamat()
    {
        return Alamat;
    }
    
    public void setSemester(int semester)
    {
        this.Semester = semester;
    }
    
    public int tampilSemester()
    {
        return Semester;
    }
    
    public void tampilAll()
    {
        System.out.println("=================================");
        System.out.println("NIM: " + tampilNim());
        System.out.println("Nama: " + tampilNama());
        System.out.println("Alamat: " + tampilAlamat());
        System.out.println("Semester: " + tampilSemester());
        System.out.println("=================================");
    }
    
}



public class MainMahasiswa {
    public static void main(String[] args) {
      mahasiswa junior = new mahasiswa(); //membuat objek junior di kelas mahasiswa
     
      //mengisi nilai ke dalam objek memakai method di kelas mahasiswa
      junior.setNama("Ucok");
      junior.setNim(1234);
      junior.setAlamat("Jl.hj boong");
      junior.setSemester(1);
      junior.tampilAll(); //method yg menampilkan semua data dari attribut di kelas mahasiswa
      
      mahasiswa senior = new mahasiswa(); //membuat objek senior di dalam mahasiswa
      
      //mengisi nilai ke dalam objek memakai method di kelas mahasiswa
      senior.setNama("Mukrom");
      senior.setNim(4321);
      senior.setAlamat("jl.Jamblang");
      senior.setSemester(6);
      senior.tampilAll(); //method yg menampilkan semua data dari attribut di kelas mahasiswa
      
      mahasiswa junior2 = new mahasiswa(); //membuat objek junior2 di dalam mahasiswa

      //mengisi nilai ke dalam objek memakai method di kelas mahasiswa
      junior2.setNim(1324);
      junior2.setNama("Joko");
      junior2.setAlamat("Jl. Dukuh");
      junior2.setSemester(1);
      junior2.tampilAll(); //method yg menampilkan semua data dari attribut di kelas mahasiswa
      
    }
}

bisa dilihat dari program di atas. penggunaan Kelas cukup membantu dalam menulis program , sehingga memudahkan kita meminimalisir kode program yg berulang ulang di tulis. tetapi dengan menggunakan kelas , bisa lebih mudah. Point penting dalam OOP (Oriented Object Programming) itu ada 4:

  1. 1.Correctness (benar)
  2. 2.Readability  (Mudah di pahami)
  3. 3.Maintainabilty (mudah di maintain maksudnya mudah untuk memodifikasi attribut&variabel apabila ada request dr user)
  4. 4.Performance (performa)
tetapi point ke 4 menjadi urusan belakangan setelah ke 3 point sudah Benar

  •  Contoh Program 2 Tidak Memakai Kelas:

public class MainMahasiswa {
    public static void main(String[] args) {
     String mahasiswa1,mahasiswa2, mahasiswa3, alamat1, alamat2, alamat3;
     int nim1, nim2, nim3, semester1, semester2, semester3;
     
     //memasukan nilai ke mahasiswa1 (asumsikan bahwa mahasiswa junior)
     mahasiswa1 = "Ucok";
     nim1 = 1234;
     alamat1 = "Jl.hj boong";
     semester1 = 1;
     
      //menampilkan variabel
      System.out.println("=================================");
      System.out.println("NIM: " + nim1);
      System.out.println("Nama: " + mahasiswa1);
      System.out.println("Alamat: " + alamat1);
      System.out.println("Semester: " + semester1);
      System.out.println("=================================");
      
     //memasukan nilai ke mahasiswa2 (asumsikan bahwa mahasiswa senior)
     mahasiswa2 = "Mukrom";
     nim2 = 4321;
     alamat2 = "jl.Jamblang";
     semester2 = 6;
     
       //menampilkan variabel
       System.out.println("=================================");
       System.out.println("NIM: " + nim2);
       System.out.println("Nama: " + mahasiswa2);
       System.out.println("Alamat: " + alamat2);
       System.out.println("Semester: " + semester2);
       System.out.println("=================================");
      
     //memasukan nilai ke mahasiswa3 (asumsikan bahwa mahasiswa junior2 
      mahasiswa3 = "Joko";
      nim3 = 1324;
      alamat3 = "Jl.Dukuh";
      semester3 = 1;

        //menampilkan variabel
        System.out.println("=================================");
        System.out.println("NIM: " + nim3);
        System.out.println("Nama: " + mahasiswa3);
        System.out.println("Alamat: " + alamat3);
        System.out.println("Semester: " + semester3);
        System.out.println("=================================");
      
    }
}

bisa dilihat perbedaan program di atas apabila di bandingkan dengan program yg memakai Kelas.
kita amati program di atas yg tidak memakai Kelas:

  • Terlalu banyak mendeklarasikan variabel
program yg sama tanpa menggunakan Kelas terlihat sangat banyak mendeklarasikan variabel sehingga membuat ukuran size program bertambah dan menambah lamanya waktu running program . contoh di atas hanya menggunakan beberapa variabel , nahh kalo variabelnya ratusan ? (goyang dumang itu jari) (nilai kurang untuk point performance)
  • Terlalu banyak penulisan kode yg sama (duplication)
program tidak menggunakan Kelas terlalu banyak menulis program yg sama. coba lihat pada baris program yg menampilkan variabel (yang ada "//menampilkan variabel"). lihat terdapat banyak duplikasi penulisan kode yg sama , hanya berbeda variabelnya. jika memakai Kelas kita tinggal membuat method menampilkan semua variabel (lihat di program 1 terdapat method tampilAll() ). nahh bagaimana kalo nampilin variabelnya 100x ? Kelas sangat berguna untuk menangani kasus seperti ini . (nilai kurang untuk point READABILITY)

  • Susah apabila ada penambahan data/variabel
tanpa menggunakan Kelas , akan sangat sulit untuk menambahkan maupun menghapus suatu data/variabel.
Jika kita ingin menambahkan variabel ipk di setiap tampilan mahasiswa di program 2 kita harus mendeklarasikan di awal : 
ipk1 untuk mahasiswa1, ipk2 untuk mahasiswa2 , dst
menampilkannya ke output: System.out.println("IPK: " + ipk1), System.out.println("IPK: " + ipk2), dst
akan sangat sulit untuk menambahkan suatu data ke program apabila tidak menggunakan Kelas.
jika anda menggunakan Kelas anda cukup menambahkan attribut ipk di dalam kelas mahasiswa:



 public class mahasiswa {
 public String Nama, Alamat;
 public int Nim, Semester;
 public int ipk // Attribut baru di dalam kelas mahasiswa

 public void setIpk(String ipk) //menambahkan method di kelas mahasiswa
{
    this.Ipk = ipk
}

 public int tampilIpk()   //menambahkan method di kelas mahasiswa
{
    return Ipk;
} 

 public void tampilAll()
    {
        System.out.println("=================================");
        System.out.println("NIM: " + tampilNim());
        System.out.println("Nama: " + tampilNama());
        System.out.println("Alamat: " + tampilAlamat());
        System.out.println("Semester: " + tampilSemester());
        System.out.println("IPK      : " + tampilIpk());   //menampilkan ipk mahasiswa
        System.out.println("=================================");
    }

}

anda cukup menambahkan attribut ipk seperti pada program di atas dan menambahkannya di setiap objek pada main class (dalam kasus ini objeknya junior, dan senior).
apabila anda tidak memakai kelas apa anda mau menuliskan satu per satu di setiap variabel ipk ingin ditampilkan ? dan kalau objeknya ratusan ? (Nilai kurang untuk MAINTAINABILITY)


Kesimpulannya, apabila anda membuat program untuk di pakai oleh user , JANGAN PERNAH MEMBUAT TIDAK MEMAKAI KELAS pada program tersebut. karna kelas adalah kebutuhan dasar untuk program program kompleks , dan memudahkan sisi developer maupun si user yg akan memakai program tersebut.

Terus tidak memakai kelasnya kapan dong ?
nahh ini cocok di pakai untuk tugas kuliah apabila tugas tersebut tidak terlalu kompleks banget, karna tugas kuliah masuk kategori Aplikasi prakarya tidak seperti aplikasi yg akan anda buat untuk user nanti , itu dinamakan Aplikasi Production (klik disini apabila ingin mengetahui apa itu aplikasi prakarya dan production).
kalau bisa, sesederhana apapun program yg kita buat , kita diharuskan membuat kelas , karna JAVA memegang teguh konsep OOP . Kelas juga akan meningkatkan skill logika kita apabila di pakai terus menerus.

nahh udah tau kan gimana pentingnya pakai Kelas di java.
cukup sekian deh post kali ini pegel juga nih tangan hahaha  ,kalo ada yg bingung silahkan di tanya monggo saya akan jawab semampu saya.
semoga bermanfaat untuk kalian TS pamit dulu ya mau go home :D
Read More

Wednesday, March 25, 2015

[BELAJAR] Java Input memakai Scanner

Input di java tidak semudah seperti di C++ yg hanya memakai sintaks cin >> (nama variabel).
di java tidak bisa menginput seenak jidat mu. ada banyak cara untuk menginputkan suatu input ke variabel.
kali ini saya akan menshare input output di java menggunakan Scanner.

Scanner itu apa sih ?

Scanner itu adalah sebuah kelas untuk menscan sebuah argumen dan menyimpan di suatu variabel, dan jangan lupa , Scanner perlu dibuatkan sebuah objek berdasarkan kelas Scanner contoh: 
Scanner sc = new Scanner(System.in);

bisa dilihat dalam kode di atas. "sc" adalah sebuah objek dari kelas Scanner, dan itu tidak harus "sc"
anda dapat mengubahnya seperti halnya variabel. letakan di dalam main() seperti halnya mendeklarasikan variabel.
setelah pemasukan data tidak di perlukan lagi , anda dapat menutup Scanner dengan sintaks:
sc.close();

apabila anda Menggunakan Scanner , jangan lupa untuk menulis kode berikut sebelum public class:
import java.util.Scanner;

kode di atas adalah file header untuk menambahkan library Scanner pada program yg anda buat
sama halnya jika anda pada C++ , C++ juga memiliki file header apabila ingin memasukan suatu fungsi tertentu ke dalam main();.  Scanner ini memiliki fungsi yg sama dengan sintaks cin.
dari pada bingung silahkan lihat program di bawah ini:
import java.util.Scanner;
public class Latihan_java {


    public static void main(String[] args) 
    {
        int panjang, lebar, hasil;
        String karakter;
        
        hasil = 0;
        Scanner sc = new Scanner(System.in);
        System.out.println("Program Penghitung Luas dan Keliling Persegi panjang");
        System.out.print("Masukan Panjang Persegi: ");
        panjang = sc.nextInt();
        
        System.out.print("Masukan Luas Persegi: ");
        lebar = sc.nextInt();
        
        System.out.println("Tekan (L) untuk melihat Luas");
        System.out.print("Tekan (K) untuk melihat keliling: ");
        karakter = sc.next();
        switch(karakter)
        {
            case "L":
                hasil = panjang * lebar;
                break;
                
            case "K":
                hasil = 2 * (panjang + lebar);
                break;
                
            default:
                System.out.print("Anda salah memasukan inputan");
                break;
        }
        sc.close();
        System.out.print("Hasilnya adalah: " + hasil);
        System.out.println();
    }
    
}

bisa dilihat dari program di atas adalah prosedur untuk menginputkan suatu nilai ke dalam variabel
NamaVariabel = NamaObjectScanner.PropertiScanner;
Untuk Menscan int Gunakan next.Int();
Untuk Menscan String Gunakan next(); atau nextLine();
setelah sekiranya sudah tidak membutuhkan objek Scanner, Anda dapat menutupnya dengan sintaks:
NamaObjekScanner.close();
kalian bisa melihat semua properti Scanner pada link Berikut.  Anda dapat mengembangkan program di atas sesuai kreatifitas anda.
Nahh kalian sudah tau kan cara menginputkan nilai ke dalam variabel, apabila ada yg masih bingung dan tidak mengerti silahkan komentar di bawah , insyaallah apabila saya tau akan saya jawab.
Sekian untuk Tutorial Input Menggunakan Scanner di java , TS sangat menghargai sekali semua komentar yg anda berikan baik atau buruk karna memang post TS ini masih jauh sekali dari kata sempurna.
Read More

[BELAJAR] JAVA Hello World

STEP 1 Menyiapkan Compiler/Ide/JDK


Sebelum kita masuk ke "HELLO WORLD" pastikan dulu compiler dan JDK nya sudah ada
disini TS memakai NETBEANS dan bisa di download di sini (sesuaikan dengan versi windows anda) bisa juga memakai compiler seperti ECLIPSE, JCREATOR, dll , dan jangan lupa download JDK nya juga ya , karna NETBEANS tidak akan bisa di jalankan tanpa adanya JDK , JDK sendiri bisa di download disini download saja yg versi terahirnya karna versi terahir pastinya lebih bagus di bandingkan versi lama nya


STEP 2 Membuat Projek

oke vroh apabila sudah di download dan di install langsung saja buka netbeansnya
  • klik File
  • klik new project
  • pilih Category: Java  dan pada kolom Project: Java Application dan klik next
  • lalu isikin Project Name dengan nama Projek yg anda inginkan (saya sarankan jangan pakai spasi melainkan pakai underscore(_) setelah itu apabila anda ingin mengatur directory file projek anda klik Browse dan jika sudah klik Finish



STEP 3 Menuangkan Kode

Setelah selesai akan muncul tampilan awal Netbeans
Disini kita akan mulai mengetikan kode yg akan di eksekusi
ketikan kode berikut :

System.out.println("Hello World");

di dalam kode:

public static void main(String[] args) {
        // TODO code application logic here
    }

jika sudah silahkan di running atau tekan F6 output dapat dilihat di gambar di bawah ini



Bisa Di jelaskan Mengenai Kode di atas?

baiklah TS akan menjelaskannya satu persatu
kode sumber di atas (Latihan.java) adalah contoh sebuah program java. Program java ditulis dalam bentuk kelas. Bentuk kelas adalah seperti berikut:


Public class NamaKelas{
   ...
}
     kata public menyatakan bahwa kelas tersebut bersifat publik (artinya bisa di panggil di mana saja). NamaKelas biasa ditulis di awal setiap kata dikapitalkan dan tidak boleh ada spasi atau simbol-simbol tertentu di nama kelas(dalam kasus ini nama kelas adalah Latihan_java).
Dalam Kelas Latihan_java terdapat metode main(). Metode adalah rutin atau sekumpulan kode yg diberi nama yg melekat dalam suatu kelas. Metode Main() merupakan metode yg akan dijalankan pertama kali ketika program dieksekusi (dirun/dijalankan) , Di dalam tanda () sesudah kata main, terdapat String[] args. Bagian yg berada di dalam tanda () tersebut dinamakan Parameter atau Argumen.
     Kata public menyatakan bahwa main() adalah metode yg bersifat public (bisa dipainggil dimana saja). Kata void Menyatakan bahwa main() tidak memiliki nilai balik. nilai balik adalah nilai yg diberikan ketika metode di panggil atau biasa di kenal sebagai return.
     String menyatakan suatu kelas yg tersedia pada java yg berhubungan dengan penanganan sederet karakter(atau biasa dinamakan string). Tanda [] menyatakan bahwa args adalah argumen bertipe array berkelas String. Artinya, args mengandung sejumlah elemen berkelas String. hal ini berguna kalau ada argumen yg akan dilewatkan ketika program di panggil untuk memudahkan silahkan lihat gambar berikut

Di dalam main(), System.out.println("Hello World");
Berkedudukan sebagai sebuah pernyataan. dalam hal ini, pernyataan tersebut digunakan untuk menampilkan String "Hello World". Pernyataan adalah suatu instruksi yang dapat bberdiri sendiri dalam program java. ciri ciri sebuah pernyataan sederhana dalam java umumnya diakhiri tanda Semicolon(;).
pasangan tanda /* dan */ digunakan untuk membuat komentar yang terdiri atas beberapa baris. komentar adalah keterangan di dalam kode sumber yang ditujukan sebagai penjelas bagi pembaca kode sumber. adapun tanda '//' juga merupakan komentar , komentar tidak akan di eksekusi oleh compiler.

nah itulah aturan main apabila anda menggunakan java
Nah Sekarang sudah tau kan bagaimana mengetikan Hello World di Netbeans Selanjutnya anda bisa mengembangkannya sendiri sesuai kreatifitas anda.

Sekian untuk Tutorial Pertama java , TS sangat menghargai sekali semua komen yg anda berikan baik atau buruk karna memang post TS ini masih jauh sekali dari kata sempurna
apabila ada yg ingin di tanyakan silahkan tinggalkan komentar anda 
Read More

Sunday, February 22, 2015

Istilah Malware Adware Dan Sebagainya


Ts Ingin Berbagi pengalaman tentang adanya malware dan kerabatnya.
sungguh tidak di pungkiri lagi , mempunyai komputer tanpa adanya makhluk makhluk ini (bukan ts lho yg dimaksud) , seringkali makhluk makhluk di bawah ini(bukan ts sekali lg) sering mengganggu pc/laptop kita , membuat lambat lah atau lag , malah yg lebih parahnya , bisa bisa komputer anda tidak bisa hidup alias MATOTT !!
nahh sobat bisa baca sedikit pengertian dari artikel TS.

Malware
Perangkat lunak yang diciptakan untuk menyusup atau merusak sistem komputer atau jejaring komputer tanpa izin pemilik. Istilah ini adalah istilah umum yang dipakai oleh pakar komputer untuk mengartikan berbagai macam perangkat lunak atau kode perangkat lunak yang mengganggu atau mengusik. Istilah 'virus computer' kadang-kadang dipakai sebagai frasa pemikat untuk mencakup semua jenis perangkat perusak, termasuk virus murni.

Adware
Adware (software iklan) adalah aplikasi perangkat lunak yang secara otomatis memutar, menampilkan, atau download materi iklan ke komputer pengguna tanpa pengguna mengetahui hal itu. Fitur khas pop-up windows atau banner, home pade, dll. Beberapa adware memasukkan program dengan izin pengguna, karena untuk menggunakan program ini, Anda harus menerima kehadiran materi iklan tersebut.
contoh: win32/adware.registrycleanfix2008, win32/adware.mycentria, win32/adware.threatnuker

Backdoor
Backdoor adalah aplikasi client-server yang memungkinkan akses remote ke komputer. Perbedaan dari aplikasi yang sah dengan fungsi yang sama adalah bahwa instalasi backdoor dilakukan tanpa sepengetahuan pengguna.

Boot sector
Boot sector virus menyerang sektor boot dari sebuah hard disk untuk memastikan bahwa mereka berjalan setiap kali komputer dijalankan. merupakan kelompok yang relatif lebih tua dari virus.

Dialer
Dialer adalah program yang dirancang untuk mengarahkan sambungan telepon pengguna ke Internet untuk beberapa nomor premium. Penipuan dialer yang sering digunakan untuk mengarahkan pengguna tanpa menyadarinya.

HLL virus
HLL (Bahasa Tingkat Tinggi) adalah virus yang dibuat dalam bahasa pemrograman tingkat tinggi seperti Pascal, C, C + +, Delphi, Basic atau Visual Basic. Virus umum yang dibuat dalam assembler, namun virus HLL yang lebih besar dan untuk menganalisis mereka sangat rumit.

HOAX
Hoax (rumor) - Banyak hoax dikirim melalui email, forum, bbm, sms. Kebohongan yang paling umum dengan mengatasnamakan perusahaan. Mereka sering menginformasikan tentang konsekuensi bencana, misalnya menghancurkan virus baru. Semua hoax memiliki kesamaan yaitu menyuruh orang lain untuk menyebarkannya segera ke pengguna lain. Ini adalah bagaimana hoax tersebar.
contoh: bahaya makan udang dan vitamin c, trik pin ATM terbalik saat dirampok, penggunaan optical mouse dapat menimbulkan kanker

Macroviruses

virus makro adalah virus yang ditulis dalam bahasa makro: artinya, bahasa yang dibangun ke dalam aplikasi perangkat lunak seperti pengolah kata. Karena beberapa aplikasi terutama Microsoft Office memungkinkan program makro untuk dimasukkan dalam dokumen, sehingga program dapat dijalankan secara otomatis ketika dokumen dibuka, ini memberikan mekanisme yang berbeda dimana virus dapat menyebar.
contoh: melissa.

Phishing
Phishing adalah suatu bentuk kegiatan kriminal dengan menggunakan teknik rekayasa sosial. Hal ini ditandai dengan upaya untuk menipu mendapatkan informasi sensitif, misalnya password, atau rincian kartu kredit, dengan menyamar sebagai orang yang dapat dipercaya atau bisnis dalam email yang tampaknya resmi. Mendapatkan jenis data pribadi sangat menarik karena memungkinkan penyerang untuk meniru korban mereka dan melakukan transaksi keuangan penipuan.
contoh: email dari bank yang menyuruh anda mengisi kembali data pribadi.

Retrovirus

Retrovirus adalah aplikasi berbahaya mencoba untuk menghapus atau menonaktifkan sistem antivirus.

Rootkit
Rootkit adalah jenis khusus dari infiltrasi mampu menyembunyikan "root" pada komputer yang terinfeksi tanpa sysadmin melihat hal tersebut dan dengan demikian menghindari deteksi. Biasanya adalah paket kode berbahaya yang memungkinkan penyerang untuk mengeksploitasi kerentanan dalam sistem dan mendapatkan kontrol penuh atas terinfeksi root komputer. Yang paling penting dengan rootkit adalah pencegahan - kemampuan untuk menghentikan infiltrasi proaktif ketika mencoba untuk menyusup ke dalam sistem, sebelum dieksekusi. Setelah dieksekusi rootkit mampu membuat dirinya "tak terlihat" dan dengan demikian komputer dapat dieksploitasi sementara pengguna tetap merasa "aman"

Social engineering

Social engineering adalah cara untuk mendapatkan informasi pribadi dengan penipuan. Metode ini biasanya menggunakan telepon atau Internet, mengeksploitasi pengguna awam yang mudah tertipu dengan menyamar sebagai lembaga bisnis yang dapat dipercaya.

Spyware

Spyware adalah program yang menggunakan internet untuk mengirim data berbagai pengguna tanpa pengetahuan pengguna. Spyware biasanya mengirimkan data statistik sebagai informasi tentang program yang diinstal, situs yang dikunjungi, dll Informasi yang diperoleh biasanya dimanfaatkan untuk keuntungan komersial.
contoh: spyaxe, surf saver, sonicmail.

Trojan
perangkat lunak mencurigakan yang memasang dirinya sendiri ke dalam sebuah sistem untuk mencuri data pengguna
contoh: zeus, beast, win32/sirefef.a

Virus
Perangkat lunak yang diciptakan untuk menyusup atau merusak sistem komputer.
contoh: win32/sality, win32/virut, win32/alman

Worm
program komputer yang dapat menggandakan dirinya secara sendiri dalam sistem komputer. Sebuah worm dapat menggandakan dirinya dengan memanfaatkan jaringan (LAN/WAN/Internet) tanpa perlu campur tangan dari user itu sendiri.
contoh: conficker, win32/netsky.q, win32/autoit
sumber: ESET  (virusradar.com) Wikipedia  (www.wikipedia.org)


Source : http://www.kaskus.co.id/show_post/000000000000000473113884/4/malware-dan-teman-temannya
Read More