by Abu Zubayr

Tipe Data pada Pemrograman Java

Tipe Data pada Pemrograman Java
Pada saat mempelajari sebuah bahasa pemrograman, pelajaran pertama yang harus kita pahami adalah mengenai tipe data. Tipe data adalah jenis data yang mempunyai batasan tempat dan karakteristik sesuai dengan interpretasi data dan dapat diolah oleh komputer untuk memenuhi kebutuhan dalam pemrograman komputer.

Untuk lebih mudah memahaminya saya berikan contoh. Untuk data yang memuat nama seseorang misalnya, maka jenis atau tipe data-nya adalah berupa huruf, atau untuk perhitungan tertentu maka tipe data-nya adalah berupa bilangan bulat atau bilangan desimal.

Dalam bahasa pemrograman java, tipe data dikelompokkan menjadi tipe data primitive dan tipe data Referensi.
  1. Tipe Data Primitive
    Tipe data primitive adalah tipe data yang hanya mampu menyimpan satu buah nilai bagi tiap variabel. Sedangkan pengertian variabel sendiri adalah tempat untuk menampung data atau konstanta di memori yang mempunyai nilai atau data yang dapat berubah-ubah selama proses pemrograman.

    Tipe data primitive ini sangat sering digunakan pada saat membuat program. Kemudian tipe data ini terbagi lagi kedalam tipe data bilangan bulat, bilangan desimal, karakter dan boolean.
    • Tipe data bilangan bulat
      Tipe data bilangan bulat ini secara khusus digunakan untuk mengisi nilai sebuah variabel bertipe bilangan bulat. Pada bahasa pemrograman java, tipe data bilangan bulat diantaranya adalah :
      • byte – tipe data ini berukuran 8 bit yang memiliki range antara -128 s.d 127.
      • short – tipe data short berukuran 16 bit yang memiliki range antara -32768 s.d 32767.
      • int – tipe data int sangat sering digunakan pada pemrograman nantinya khusus untuk memasukkan bilangan bulat. Tipe data ini berukuran 32 bit dengan range -2147483648 s.d 2147483647.
      • long – tipe data long merupakan tipe data yang paling besar range-nya dibanding tipe data bilangan bulat lainnya. Tipe data long memiliki ukuran penyimpanan 64 bit dengan range -9223372036854775808 s.d 9223372036854775807.

    • Tipe data bilangan desimal
      Tipe data bilangan desimal pada bahasa pemrograman java terbagi menjadi 2 yaitu :
      • float – Tipe data ini berukuran 32 bit dengan range antara 1.401298464324817E-45f s.d 3.4028234663852886E38f. Tipe data ini digunakan untuk nilai-nilai yang mengandung presisi tunggal (single precision). Single precision umumnya lebih cepat untuk processor-processor tertentu dan memakan ruang penyimpanan setengah kali lebih sedikit dibandingkan double precision.
      • double – Tipe data “double” berukuran 64 bit dengan range antara 4.9E-324 s.d 1.7976931348623157E308. Tipe data ini mengandung tingkat ketelitian ganda atau double precision. Tipe data ini juga sangat cocok digunakan pada perhitungan matematis seperti trigonometri, akar dan lainnya daripada tipe data float.

    • Tipe data karakter
      Pada tipe data karakter hanya terdapat satu jenis yakni char. Tipe data char menggunakan karakter unicode untuk merepresentasikan semua karakter yang ada. Unicode adalah suatu standar industri yang dirancang untuk mengizinkan teks dan simbol dari semua sistem tulisan di dunia untuk ditampilkan dan dimanipulasi secara konsisten oleh komputer. Karakter unicode itu sendiri membutuhkan ruang penyimpanan 16 bit.

    • Tipe data logika
      Tipe data logika yang ada pada java adalah boolean. Tipe data ini hanya memiliki dua buah nilai yakni true dan false saja.

  2. Tipe Data Referensi
    Tipe data referensi merupakan tipe data yang digunakan untuk merepresentasikan sebuah Objek pada sebuah Class, Array ataupun Interface. Kemudian sejak java 5.0 ditambahkan dua buah tipe data referensi baru yakni enumerasi dan anotasi.
    • Class
      Class merupakan prototype/kerangka yang digunakan untuk mendefinisikan variabel dan method pada sebuah objek. Jika diibaratkan pembuatan kue misalnya, Class adalah wadah yang digunakan untuk menampung semua bahan-bahan yang dimasukkan. Tipe data String dalam hal ini juga merupakan tipe data dalam bentuk Class.
    • Array
      Tipe data array adalah tipe data yang mampu menampung nilai data lebih dari satu dengan satu buah variabel saja. Hal ini berbeda dengan tipe data primitive yang hanya bisa menampung satu buah data untuk satu variabel.
    • Interface
      Tipe data interface digunakan untuk mendeklarasikan method yang wajib dimiliki oleh sebuah kelas. Di interface ini hanya berisi nama method saja, sedangkan untuk implementasi dari method tersebut berada pada kelas yang menggunakannya.
    • Enum
      Tipe data enum atau enumerasi adalah tipe data yang berisi kumpulan nilai-nilai yang terbatas pada yang didefinisikan saja. Misalnya untuk jenis kelamin yang nilainya hanya terbatas pada Laki-laki dan Perempuan saja. Pengguna hanya diizinkan untuk menggunakan salah satu dari nilai tersebut.
    • Anotasi
      Tipe data anotasi merupakan tipe data yang menyimpan informasi data tentang kode program tetapi tidak akan berdampak secara langsung pada kode. Selain itu anotasi juga dikenal dengan meta tag.

Setelah mengetahui apa saja tipe data yang terdapat pada bahasa pemrograman java, selanjutnya saya akan memberikan contoh satu persatu tentang bagamana cara menggunakan tipe data tersebut diatas.

Contoh penggunaan tipe data byte.
package az.dasar;

public class TByte {
    public static void main(String[]args){
        byte bytes = 1;//tipe data primitive
        Byte ref_byte = 12; // tipe data referensi class
        byte min_byte = Byte.MIN_VALUE;
        byte max_byte = Byte.MAX_VALUE;
        
        System.out.println("Nilai byte = "+bytes);
        System.out.println("Nilai Minimum byte = "+min_byte);
        System.out.println("Nilai Maximum byte = "+max_byte);
        System.out.println("Nilai Ref byte = "+ref_byte);
    }
}

Contoh penggunaan tipe data short.
package az.dasar;

public class TShort {
    public static void main(String[]args){
        short shorts = 10000;//tipe data primitive
        Short ref_short = 12000; // tipe data referensi class
        short min_short = Short.MIN_VALUE;
        short max_short = Short.MAX_VALUE;
        
        System.out.println("Nilai short = "+shorts);
        System.out.println("Nilai Minimum short = "+min_short);
        System.out.println("Nilai Maximum short = "+max_short);
        System.out.println("Nilai Referensi short = "+ref_short);
    }
}

Contoh penggunaan tipe data int.
package az.dasar;

public class TInt {
    public static void main(String[]args){
        int ints = 1000000000;//tipe data primitive
        Integer ref_int = 1200000000; // tipe data referensi class
        int min_int = Integer.MIN_VALUE;
        int max_int = Integer.MAX_VALUE;
        
        System.out.println("Nilai int = "+ints);
        System.out.println("Nilai Minimum int = "+min_int);
        System.out.println("Nilai Maximum int = "+max_int);
        System.out.println("Nilai Referensi int = "+ref_int);
    }
}

Contoh penggunaan tipe data long.
package az.dasar;

public class TLong {
    public static void main(String[]args){
        long longs = 1000000000000000000L;//tipe data primitive
        Long ref_long = 1200000000000000000L; // tipe data referensi class
        long min_long = Long.MIN_VALUE;
        long max_long = Long.MAX_VALUE;
        
        System.out.println("Nilai long = "+longs);
        System.out.println("Nilai Minimum long = "+min_long);
        System.out.println("Nilai Maximum long = "+max_long);
        System.out.println("Nilai Referensi long = "+ref_long);
    }
}

Contoh penggunaan tipe data double.
package az.dasar;

public class TFloat {
    public static void main(String[]args){
        float floats = 100000000000000000000000000000000000000.01f;//tipe data primitive
        Float ref_float = 120000000000000000000000000000000000000.01f; // tipe data referensi class
        float min_float = Float.MIN_VALUE;
        float max_float = Float.MAX_VALUE;
        
        System.out.println("Nilai float = "+floats);
        System.out.println("Nilai Minimum float = "+min_float);
        System.out.println("Nilai Maximum float = "+max_float);
        System.out.println("Nilai Referensi float = "+ref_float);
    }
}

Contoh penggunaan tipe data double.
package az.dasar;

public class TDouble {
    public static void main(String[]args){
        double doubles = 10.0E100;//tipe data primitive
        Double ref_double = 12.0E100; // tipe data referensi class
        double min_double = Double.MIN_VALUE;
        double max_double = Double.MAX_VALUE;
        
        System.out.println("Nilai double = "+doubles);
        System.out.println("Nilai Minimum double = "+min_double);
        System.out.println("Nilai Maximum double = "+max_double);
        System.out.println("Nilai Referensi double = "+ref_double);
    }
}

Contoh penggunaan tipe data char.
package az.dasar;

public class TChar {
    public static void main(String[]args){
        char chars = 'A';//tipe data primitive
        Character ref_char = 'B'; // tipe data referensi class
       
        System.out.println("char primitive = "+chars);
        System.out.println("char referensi = "+ref_char);
    }
}

Contoh penggunaan tipe data boolean.
package az.dasar;

public class TBoolean {
    public static void main(String[]args){
        boolean booleans = true;//tipe data primitive
        Boolean ref_boolean = false; // tipe data referensi class
       
        System.out.println("boolean primitive = "+booleans);
        System.out.println("boolean referensi = "+ref_boolean);
    }
}

Contoh penggunaan tipe data referensi kelas String.
package az.dasar;

public class TString {
    public static void main(String[]args){
        String nama = "Abu Zubayr";//tipe data referensi
        
        System.out.println("Nama saya adalah "+nama);
    }
}

Untuk tipe data lainnya akan dibahas lebih detail pada tutorial selanjutnya.

Demikianlah tutorial mengenai Tipe Data pada Pemrograman Java ini saya buat. Semoga ada manfaatnya bagi anda dan saya. Jika ada pertanyaan mengenai tutorial diatas, silahkan bertanya melalui form komentar dibawah.

Kemudian jika ingin meng-update secara rutin artikel yang kami posting dari web ini, silahkan isi email anda pada isian Follow by Email dibawah.

Terima kasih... wassalam
Share:

Cara Menjalankan MySQL Server Serta Membuat Database Sederhana

Cara Menjalankan MySQL Server Serta Membuat Database Sederhana

Bismillah…

Setelah sebelumnya kita sudah mengetahui apa itu database dan juga mengetahui Sejarah dan Perkembangan Database MySQL itu sendiri. Selanjutnya kita akan mencoba menjalankan MySQL Server dan kemudian dilanjutkan dengan membuat sebuah database sederhana.

Disini saya berasumsi bahwa anda sudah menginstal Xampp yang didalamnya sudah terdapat MySQL dan program-program pendukung lainnya. Jika belum, silahkan buka artikel yang sudah saya tulis sebelumnya yakni mengenai Tutorial Penginstalan Xampp di Windows.

Pada tutorial ini saya tidak membuka MySQL melalui halaman phpMyadmin, tetapi melalui Command Prompt (CMD). Hal ini karena jika melalui halaman tersebut dikhawatirkan anda tidak mengetahui dasar-dasar pembuatan database dan sintaks-sintaks yang digunakan.

Menjalankan MySQL Server
Untuk menjalankan MySQL Server, pastikan terlebih dahulu bahwa service MySQL dalam keadaan Start. Kemudian buka MySQL Server melalui CMD.

Untuk membuka MySQL melalui CMD lakukan langkah-langkah seperti berikut ini :
  1. Buka Command Prompt (CMD) anda, kemudian arahkan ke direktori tempat anda menginstal Xampp. Misalnya anda menginstal Xampp di drive C, maka masukkan perintah berikut di CMD anda, dan tekan Enter.
    direktori mysql server

  2. Kemudian ketikkan perintah “mysql -u root -p” untuk masuk ke MySQL Server dan Enter.
    masuk ke mysql server

  3. Jika user root anda menggunakan password, maka masukkan password-nya. Jika tidak kosongkan saja, kemudian tekan Enter.
    memasukkan password root mysql server

    setelah berhasil login ke mysql server


Membuat Database
Untuk pembuatan database, sintaks query yang digunakan adalah seperti berikut:
CREATE DATABASE nama_database;
atau
CREATE DATABASE IF NOT EXISTS nama_database;

Sebagai contoh kita ingin membuat database “akademik” misalnya, maka sintaksnya adalah seperti berikut ini :
CREATE DATABASE akademik;
atau
CREATE DATABASE IF NOT EXISTS akademik;

Jika menggunakan sintaks yang pertama dan database tersebut telah dibuat sebelumnya, maka akan memunculkan pesan kesalahan. Namun jika menggunakan sintaks yang kedua dan database tersebut telah dibuat sebelumnya, maka tidak akan muncul pesan kesalahan karena sudah melalui proses pengecekan sebelum membuat database baru.
sintaks membuat database baru


Melihat Database yang telah dibuat
Untuk melihat seluruh database yang sudah dibuat kita gunakan sintaks query seperti berikut :
SHOW DATABASES;

Pada saat sintaks query tersebut di eksekusi, maka seluruh database yang telah dibuat sebelumnya akan terlihat.
sintaks show database


Memilih Database
Setelah membuat database, untuk proses selanjutnya seperti pembuatan table atau menjalankan query-query yang berhubungan dengan database bersangkutan maka database tersebut harus dipilih terlebih dahulu.

Sintaks untuk memilih sebuah database adalah seperti berikut :
USE nama_database;

Misalnya kita akan memilih database “akademik”, maka sintaks yang dimasukkan adalah seperti ini :
USE akademik;
sintaks use database


Menghapus Database
Kemudian terakhir adalah untuk menghapus sebuah database kita gunakan sintaks seperti ini :
DROP DATABASE nama_database;
atau
DROP DATABASE IF EXISTS nama_database;

Misalnya kita akan menghapus database “akademik” yang tadi dibuat, maka sintaks query yang dimasukkan adalah seperti berikut:
DROP DATABASE IF EXISTS akademik;

Sama seperti pada saat pembuatan database, pada penghapusan database jika tanpa menggunakan sintaks “IF EXISTS” dan database tersebut tidak ada, maka akan muncul pesan kesalahan. Sebaliknya jika menggunakan sintaks “IF EXISTS” maka tidak akan muncul pesan kesalahan jika database tersebut tidak terdapat pada MySQL Server anda.
sintaks drop database


Demikianlah tutorial Cara Menjalankan MySQL Server Serta Membuat Database Sederhana. Semoga ada manfaatnya bagi anda dan saya. Untuk tutorial selanjutnya kita akan belajar cara pembuatan table pada database yang sudah dibuat sebelumnya.

Jika ada pertanyaan mengenai tutorial diatas, silahkan bertanya melalui form komentar dibawah. Kemudian untuk meng-update secara rutin artikel yang kami posting dari web ini, silahkan isi email anda pada isian Follow by Email dibawah.

Terima kasih... wassalam
Share:

Tombol Power Smartphone Android Anda Rusak ? Ini Solusinya

Tombol Power Smartphone Android Anda Rusak ? Ini Solusinya
 
Tombol power pada smartphone seringkali mengalami kerusakan. Hal ini dikarenakan tombol power lebih sering digunakan dibanding tombol-tombol lainnya. Pada saat tombol tersebut mengalami kerusakan, tentu akan membuat kita kesulitan untuk menghidupkan dan mematikan layar smartphone. Dan hal ini juga yang saya alami pada smartphone Asus Zenfone 5.

Smartphone Asus Zenfone 5 milik saya sebelumnya retak pada casing bagian sebelah kanan, tepatnya dibagian tombol power. Sehingga tombol karet untuk menekan power itu tidak dapat ditempelkan lagi. Hal ini menyebabkan smartphone tersebut sulit untuk dihidupkan dan dimatikan layarnya. Setelah mengalami hal ini, saya kemudian mencari aplikasi yang bisa menghidupkan dan mematikan layar smartphone android tanpa menekan tombol power.

Pada saat mencari aplikasi ini di Play Store, kita akan menjumpai banyak sekali developer yang mengembangkan aplikasi tersebut. Masing-masing ada kelebihan dan kekurangannya. Ada yang bisa menghidupkan dan mematikan layar dengan tapping (dua ketukan/lebih), dan ada juga melalui tombol volume untuk menghidupkan layar.

Khusus aplikasi yang menggunakan tapping, mereka memanfaatkan Proxity Sensor. Sensor ini berfungsi untuk mendeteksi keberadaan sebuah objek tanpa adanya kontak fisik dalam jarak tertentu. Proxity Sensor digunakan pada saat kita melakukan pemanggilan, dimana pada saat smartphone ditempelkan atau mendekati wajah atau anggota tubuh lainnya maka layar akan mati secara otomatis.

Aplikasi yang menggunakan sensor ini untuk mengganti fungsi tombol power akan banyak menguras baterai. Karena selama layar smartphone hidup maupun mati maka sensor tersebut akan terus menerus dalam keadaan hidup. Oleh sebab itu, aplikasi yang menggunakan cara ini untuk mengganti fungsi tombol power kurang bagus menurut saya.

Saya juga sempat menggunakan aplikasi tersebut yang memanfaatkan Proxity Sensor. Tetapi mengingat Asus Zenfone 5 sangat boros baterai, akhirnya saya memilih untuk mencabut (uninstall) aplikasi tersebut dan kemudian menggantikannya dengan yang menggunakan tombol volume sebagai pengganti tombol power.

Nama aplikasi yang saya gunakan tersebut adalah “Volume Unlock” yang bisa anda download di Play Store.
aplikasi volume unlock di play store

Setelah menemukan aplikasi tersebut, install hingga selesai.
instalasi aplikasi volume unlock


Jika sudah di download, lakukan langkah-langkah berikut untuk pengaturan aplikasi.
  1. Buka aplikasi baru anda download tadi.
    aplikasi volume unlock

    tampilan pengaturan aplikasi volume unlock

  2. Lakukan pengaturan seperti berikut ini.
    pengaturan aplikasi volume unlock
  3. Untuk mematikan layar tekan widget Screen Off.
    widget screen off volume unlock

  4. Untuk pertama kali akan muncul form seperti gambar dibawah ini, kemudian tekan tombol aktif.
    pengaktifan volume unlock

  5. Selesai, dan kini anda sudah bisa mematikan layar dengan menekan widget Screen Off dan menghidupkannya dengan menggunakan tombol volume.
Share:

Sejarah dan Perkembangan Database MySQL

Sejarah dan Perkembangan Database MySQL

Mungkin sebagian dari kita sudah tidak asing lagi mendengar database yang satu ini. Untuk saya sendiri baru mengenal database ini pada saat duduk dibangku perkuliahan tepatnya di semester 4. Sekalipun bukan database ini yang dijadikan sebagai pengantar perkuliahan dikampus saya pada waktu itu, tetapi karena ketenarannya dan banyak sekali yang merekomendasikan menggunakan database MySQL ini, sehingga membuat saya berminat untuk mempelajarinya sendiri. Dan alhamdulillah sampai saat ini saya masih setia menggunakan MySQL sebagai database pada setiap aplikasi yang saya buat.

Pada artikel ini saya tertarik untuk mengulas sejarah database kebanggaan saya ini hingga sampai pada saat artikel ini saya tulis, database MySQL sudah memasuki versi ke 5.7.17.

MySQL merupakan software (perangkat lunak) DBMS yang multithread, multiuser yang banyak digunakan oleh developer dunia. Database MySQL ini sendiri diciptakan oleh seorang programmer asal Swedia bernama Michael “Monthy” Widenius, pada tahun 1979. Pada saat menciptakan database ini Monthy bekerja pada sebuah perusahaan bernama TcX di Swedia. Awalnya Monthy mengebangkan sebuah sistem database sederhana yang ia namakan dengan UNIREG dimana menggunakan koneksi low-level ISAM database engine dengan indexing.

Pada tahun 1994, perusahaan tempat Monthy bekerja mulai mengembangkan aplikasi berbasis web. Kemudian berencana untuk menyandingkan aplikasi tersebut dengan database UNIREG cipataan Monthy. Sayangnya, setelah dilihat bahwa database UNIREG tersebut tidak cocok untuk sebuah aplikasi berbasis web yang dinamis.

Selang beberapa waktu kemudian TcX mencari alternatif lain yakni dengan menggunakan database mSQL (miniSQL). Namun ditemukan kekurangan pada database tersebut yakni tidak mendukung adanya indexing, sehingga performa database tersebut menjadi kurang bagus. Oleh sebab itu, untuk meningkatkan performa mSQL akhirnya Monthy menghubungi David Hughes seorang programmer yang mengembangkan mSQL. Monthy mengajukan penawaran kepada David Hughes apakah tertarik untuk mengembangkan sebuah konektor di mSQL yang dapat dihubungkan dengan UNIREG ISAM dengan maksud agar mSQL bisa atau mendukung indexing. Akan tetapi tawaran Monthy tersebut ditolak oleh Hughes karena ia pada saat itu juga sedang mengembangkan teknologi indexing untuk mSQL versi 2.

Setelah penolakan tersebut, TcX dan David Hughes memutuskan untuk merancang dan mengembangkan sendiri konsep database baru. Sistem database yang dikembangkan tersebut merupakan gabungan antaran UNIREG dan mSQL yang souce code-nya bebas digunakan. Sehingga pada tahun 1995, TcX merilis sebuah database baru yang mereka beri nama MySQL. Pada tahun bersamaan TcX juga mengubah nama perusahaannya menjadi MySQL AB dimana pendirinya sendiri terdiri dari Michael “Monthy” Wildenius, David Axmark dan Allan Larsson. AB dibelakang MySQL tersebut merupakan singkatan dari “Aktiebolag”, yang merupakan istilah PT pada perusahaan Swedia.

Pada bulan Oktober selanjutnya MySQL kembali merilis versi 3.11.0 yang dilepas ke publik. Namun pada awal mulanya kode ini tidak diberikan dibawah lisensi GPU (General Public License), melainkan lisensi khusus yang intinya kurang lebih bahwa source code MySQL dapat dilihat dan gratis, serta server MySQL dapat dipakai tanpa biaya tapi hanya untuk kebutuhan nonkomersial. Untuk kebutuhan komersial, maka diwajibkan untuk membayar lisensinya.

Sepanjang tahun 1998-1999 pada versi-versi akhir seri 3.22 MySQL menjadi semakin populer dan banyak diminati orang mengingat stabilitasnya yang semakin baik dan diikuti dengan peningkatan kecepatan. Pada versi ini juga sudah lintas platform, termasuk windows sendiri.

Kemudian pada tahun 2000 MySQL AB mengumumkan bahwa sejak versi 3.23.19 MySQL adalah software bebas berlisensi GPL yang artinya bahwa source code MySQL dapat dilihat dan gratis, serta server MySQL dapat dipakai tanpa biaya untuk kebutuhan apapun (komersial ataupun nonkomersial).

Pada Agustus 2002, muncullah MySQL dengan versi terbarunya yakni MySQL 4.0 beta yang dirilis pada bulan Maret 2003, kemudian versi 4.0 beta kembali dikembangkan menjadi versi 4.1 beta yang dirilis pada bulan Juli 2004. Untuk tahun selanjutnya MySQL AB kembali merilis MySQL versi 5.0 pada bulan Maret 2005 dan kemudian versi 5.1 pada bulan November 2005 untuk selanjutnya terus mengalami perbaikan dan peningkatan versi.

MySQL AB sendiri pada 16 Januari 2008 sempat diakusisi oleh Sun Microsystems, Inc. Dengan akusisi tersebut menjadikan Sun sebagai salah satu perusahaan dengan produk platform open source terbesar seperti Java, OpenSolaris dan terakhir adalah MySQL. Namun berselang setahun kemudian, pada 20 April 2009 perusahaan Oracle melakukan akusisi terhadap Sun Microsystems. Semenjak akusisi itu, beredar isu bahwa Oracle yang memiliki produk database yang berkompetisi dengan MySQL akan mematikan MySQL. Namun sampai saat ini hal tersebut belum juga dilakukan.

Diantara keistimewaan yang dimiliki oleh MySQL adalah :
  1. Portabilitas – MySQL dapat berjalan stabil diberbagai sistem operasi seperti Windows, Linux, Mac OS, Solaris dan sistem operasi lainnya.
  2. Perangkat Lunak Sumber Terbuka – MySQL didistribusikan sebagai perangkat lunak dengan sumber terbuka (open source), dibawah lisensi GPL sehingga dapat dipergunakan secara gratis.
  3. Multi-User - MySQL dapat dipergunakan banyak pengguna dalam waktu bersamaan tanpa terjadinya konflik.
  4. Performance Tuning - MySQL memiliki kecepatan yang sangat bagus dalam menangani query sederhana, dimana dapat memproses lebih banyak SQL per satuan waktu.
  5. Beragam Tipe Data – Diantara database lain, MySQL merupakan database yang kaya akan tipe data. Seperti signed/unsigned integer, float, double, decimal, char, varchar, text dan masih banyak lagi.
  6. Perintah dan Fungsi – MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam query.
  7. Keamanan – MySQL memiliki lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta dengan kata sandi yang sudah dienkripsi.
  8. Skalabilitas dan Pembatasan – MySQL mampu menangani database dalam skala besar, dengan jumlah records lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Kemudian batas index yang dapat ditampung pada sebuah tabel mencapat 32 index.
  9. Konektivitas – MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix Socket (UNIX), atau Named Pipes (NT).
  10. Lokalisasi – MySQL mampu mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa, tetapi sayangnya untuk bahasa indonesia masih belum.
  11. Antar Muka – MySQL memiliki antar muka terhadap berbagai aplikasi dan bahasa pemrograman menggunakan fungsi API (Application Programming Interface).
  12. Klien dan Peralatan – MySQL dilengkapi dengan berbagai tools yang dapat digunakan untuk administrasi database, dan pada setiap peralatan yang ada disertakan petunjuk online.
  13. Struktur Tabel – MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE dibandingkan database lainnya.

Perkembangan MySQL di Indonesia juga sangat bagus. Hal ini terlihat dari banyak sekali komunitas-komunitas terutama dikalangan web developer yang membahas dan menyarankan MySQL sebagai database dari website yang dibuat. Ini juga didukung dengan banyaknya web hosting Indonesia yang menyediakan MySQL sebagai database untuk website klien mereka.

Sumber : id.wikipedia.org
Share:

Sorting pada Kelas Collections

Sorting pada Kelas Collections
Bismillah...

Pada saat menambahkan data kedalam Array List terkadang kita ingin mengurutkan data tersebut untuk beberapa keperluan seperti agar data mudah untuk dibaca atau untuk keperluan lainnya. Untuk pengurutan data pada Array List ini kita bisa memanfaatkan sebuah method static dengan nama sort() dari kelas Collections.

Method sort() pada kelas Collections memiliki dua buah model. Model pertama dengan satu buah parameter dan yang kedua dengan dua buah parameter. Untuk lebih jelasnya lihat penjelasan dari masing-masing method tersebut berikut ini :
Collections.sort(List list);
Collections.sort(List list, Comparator c);
Perjelasan Parameter :
  • list - the list to be sorted
    Adalah list yang akan dilakukan pengurutan (sorting)
  • c - the comparator to determine the order of the list. A null value indicates that the elements' natural ordering should be used.
    Variabel yang digunakan sebagai komparator untuk pengurutan list. Jika berisi nilai null, maka elemen tersebut akan di urutkan secara natural.
Berikut adalah contoh dari penggunaan masing-masing method diatas dimulai dari method sort() dengan satu buah parameter.

  1. Sorting List dengan 1 buah parameter
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
    
    public class Sorting1 {
        private List nama = new ArrayList<>();
        
        public void inisial(){// method ini digunakan untuk melakukan inisialisasi/pemberian nilai pada variabel nama
            nama.add("Fauzan Alfaris");
            nama.add("Andi Sujadi");
            nama.add("Farihana");        
            nama.add("Ferdi Ali");
            nama.add("Ahmad Sumardi");        
            nama.add("Rina Mariana");
            nama.add("Zulfikar");
        }
        
        public void print(){// method print digunakan untuk menampilkan hasil dari program yang dibuat
            System.out.println("Nama Sebelum dilakukan Sorting :");
            for(String name:nama)
                System.out.println(name);
            
            System.out.println("=========================");
            System.out.println("Nama Setelah dilakukan Sorting :");
            Collections.sort(nama);// method sort dengan 1 buah parameter yang digunakan untuk pengurutan data
            for(String name:nama)
                System.out.println(name);
        }
        
        public static void main(String[]args){
            Sorting1 sort1 = new Sorting1();
            sort1.inisial();
            sort1.print();
        }
    }
    

    Pada saat dijalankan, hasil dari kode program diatas adalah seperti berikut ini :
    hasil sorting dengan 1 parameter


  2. Sorting List dengan 2 buah parameter
    Dengan menggunakan method sort() dengan dua parameter memungkinkan kita untuk memilih variabel mana yang akan kita jadikan sebagai komparatornya. Untuk mempermudah, pada contoh ini kita akan mencoba membuat sebuah kelas yang memuat identitas mahasiswa yang terdiri dari nim, nama, jurusan dan fakultas. Kemudian kita akan menggunakan masing-masing variabel dari kelas Mahasiswa tersebut secara bergantian untuk dilakukan proses pengurutan berdasarkan variabel nim hingga variabel fakultas. Pengurutan dengan menggunakan dua buah parameter ini juga memungkinkan kita untuk mengurutkan data secara menaik (ascending) atau menurun (descending).

    Untuk mengimplementasikan penggunaan method sort() dengan dua buah parameter ini, terlebih dahulu kita buat sebuah kelas dengan nama Mahasiswa.java. Pada kelas ini berisi informasi mengenai nim, nama, jurusan dan fakultas mahasiswa bersangkutan.
    public class Mahasiswa {
        private String nim;
        private String nama;
        private String jurusan;
        private String fakultas;
    
        public Mahasiswa(String nim, String nama, String jurusan, String fakultas){
            this.nim = nim;
            this.nama = nama;
            this.jurusan = jurusan;
            this.fakultas = fakultas;
        }
        
        public String getNim() {
            return nim;
        }
    
        public void setNim(String nim) {
            this.nim = nim;
        }
    
        public String getNama() {
            return nama;
        }
    
        public void setNama(String nama) {
            this.nama = nama;
        }
    
        public String getJurusan() {
            return jurusan;
        }
    
        public void setJurusan(String jurusan) {
            this.jurusan = jurusan;
        }
    
        public String getFakultas() {
            return fakultas;
        }
    
        public void setFakultas(String fakultas) {
            this.fakultas = fakultas;
        }
    }
    

    Setelah selesai membuat kelas diatas, selanjutnya kita akan menggunakan method sort() dengan dua parameter tersebut.
    Berikut adalah contoh programnya.
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Comparator;
    import java.util.List;
    
    public class Sorting2 {
        private final List list_mhs = new ArrayList<>();
        
        public void inisial(){// method ini digunakan untuk melakukan inisialisasi/pemberian nilai pada variabel list_mhs
            list_mhs.add(new Mahasiswa("1102","Fauzan Alfaris","Teknik Elektro\t\t", "Teknik"));// penambahan data mahasiswa dengan memanfaatkan constructur pada kelas Mahasiswa.java
            list_mhs.add(new Mahasiswa("1101","Andi Sujadi","Teknik Informatika\t", "Teknik"));        
            list_mhs.add(new Mahasiswa("1105","Farihana","Bahasa Indonesia\t", "Bahasa dan Sastra"));
            list_mhs.add(new Mahasiswa("1103","Ferdi Ali","Teknologi Hasil Perikanan", "Kelautan dan Perikanan"));
            list_mhs.add(new Mahasiswa("1107","Ahmad Sumardi","Administrasi Negara\t", "Sosial dan Ilmu Politik"));        
            list_mhs.add(new Mahasiswa("1104","Rina Mariana","Bahasa Inggris\t\t", "Bahasa dan Sastra"));
            list_mhs.add(new Mahasiswa("1106","Zulfikar","Sosiologi\t\t", "Sosial dan Ilmu Politik"));
        }
        
        public void print(){// method print digunakan untuk menampilkan hasil dari program yang dibuat
            System.out.println("Daftar Mahasiswa Sebelum di Sorting :");
            for(Mahasiswa mhs:list_mhs)
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
                    
            System.out.println("===============================================================================");
            System.out.println("Daftar Mahasiswa di Sorting Berdasarkan Nim: \nAscending:");
            sort(list_mhs, 0, true);// pemanggilan method sort berdasarkan nim dengan index 0 dan diurut secara ascending
            for(Mahasiswa mhs:list_mhs)
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
            
            System.out.println("-------------------------------------------------------------------------------");
            System.out.println("Descending:");
            sort(list_mhs, 0, false);;// pemanggilan method sort berdasarkan nim dengan index 0 dan diurut secara descending
            for(Mahasiswa mhs:list_mhs){
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
            }
            
            System.out.println("===============================================================================");
            System.out.println("Daftar Mahasiswa di Sorting Berdasarkan Nama:\nAscending:");
            sort(list_mhs, 1, true);;// pemanggilan method sort berdasarkan nama dengan index 1 dan diurut secara ascending
            for(Mahasiswa mhs:list_mhs)
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
            
            System.out.println("-------------------------------------------------------------------------------");
            System.out.println("Descending:");
            sort(list_mhs, 1, true);// pemanggilan method sort berdasarkan nama dengan index 1 dan diurut secara descending
            for(Mahasiswa mhs:list_mhs)
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
                            
            System.out.println("===============================================================================");
            System.out.println("Daftar Mahasiswa di Sorting Berdasarkan Jurusan:\nAscending:");
            sort(list_mhs, 2, true);// pemanggilan method sort berdasarkan jurusan dengan index 2 dan diurut secara ascending
            for(Mahasiswa mhs:list_mhs)
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
            
            System.out.println("-------------------------------------------------------------------------------");
            System.out.println("Descending:");
            sort(list_mhs, 2, false);// pemanggilan method sort berdasarkan jurusan dengan index 2 dan diurut secara descending
            for(Mahasiswa mhs:list_mhs)
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
                    
            System.out.println("===============================================================================");
            System.out.println("Daftar Mahasiswa di Sorting Berdasarkan Fakultas:\nAscending:");
            sort(list_mhs, 3, true);// pemanggilan method sort berdasarkan fakultas dengan index 3 dan diurut secara ascending
            for(Mahasiswa mhs:list_mhs){
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
            }
            System.out.println("-------------------------------------------------------------------------------");
            System.out.println("Descending:");
            sort(list_mhs, 3, false);// pemanggilan method sort berdasarkan fakultas dengan index 3 dan diurut secara descending
            for(Mahasiswa mhs:list_mhs)
                System.out.println(mhs.getNim()+"\t"+mhs.getNama()+"\t"+mhs.getJurusan()+"\t"+mhs.getFakultas());
            
        }
        
        public void sort(List list, int idx, boolean asc){
            Collections.sort(list, new Comparator() {// method yang digunakan untuk sorting kelas Collections dengan menggunakan comparator Mahasiswa
                @Override
                public int compare(Mahasiswa mhs1, Mahasiswa mhs2){
                    switch(idx){
                        case 0:
                            if(asc)// jika pengurutan secara ascending
                                return  mhs1.getNim().compareTo(mhs2.getNim());
                            else // jika pengurutan secara descending
                                return  mhs2.getNim().compareTo(mhs1.getNim());
                        case 1:
                            if(asc)
                                return mhs1.getNama().compareTo(mhs2.getNama());
                            else
                                return mhs2.getNama().compareTo(mhs1.getNama());
                        case 2:
                            if(asc)
                                return mhs1.getJurusan().compareTo(mhs2.getJurusan());
                            else
                                return mhs2.getJurusan().compareTo(mhs1.getJurusan());
                        case 3:
                            if(asc)
                                return mhs1.getFakultas().compareTo(mhs2.getFakultas());
                            else
                                return mhs2.getFakultas().compareTo(mhs1.getFakultas());
                        default:
                            return -1;
                    }
                }
            });
        }
        
        public static void main(String[]args){
            Sorting2 sort2 = new Sorting2();
            sort2.inisial();
            sort2.print();
        }
    }
    

    Hasil dari kode program diatas pada saat dijalankan adalah sebagai berikut ini :
    hasil sorting dengan 2 buah parameter

Anda juga bisa mengganti kelas Mahasiswa tersebut dengan kelas-kelas lainnya sesuai dengan yang dibutuhkan pada aplikasi yang anda buat.

Demikianlah tutorial mengenai Sorting pada Kelas Collections ini saya buat. Semoga ada manfaatnya bagi anda dan saya. Jika ada pertanyaan mengenai tutorial diatas, silahkan bertanya melalui form komentar dibawah. Kemudian jika ingin meng-update secara rutin artikel yang kami posting dari web ini, silahkan isi email anda pada isian Follow by Email dibawah.

Terima kasih... wassalam
Share:
DigitalOcean Referral Badge
www.domainesia.com
Powered by Blogger.