Rabu, 23 Juni 2010

Kelebihan dan Kekurangan Java Applet Bila Dibandingkan Dengan JSP (Java Server Page), JSF (Java Server Faces), dan AJAX

Temen - temen mungkin ingin tahu apa aja sih kelebihan dan kelemahan Java Applet bila dibandingkan dengan ketiga pembanding yang disebutkan di atas. Ini dia jawabannya.

Kelebihan Java Applet:

1. Cukup mudah dibuat dan dijalankan pada Linux, Mac OS dan OS lainnya karena Java Applet bersifat cross platform.
2. Satu jenis Applet mampu berjalan pada semua versi Java pada waktu yang bersamaan, namun bila membutuhkan plug in JRE yang baru maka harus menunggu download tersebut hingga selesai.
3. Applet berjalan dalam sandbox, sehingga user tidak perlu mengkonfirmasi kode Applet.
4. Applet bisa berjalan tanpa security approval.
5. Applet di support oleh sebagian besar browser.
6. Waktu loading Applet cukup singkat.
7. Semakin sering digunakan, waktu eksekusinya semakin cepat: setelah Applet pertama dijalankan, JVM telah dimulai dan berjalan, sebuah keuntungan untuk pengguna Java.
8. Applet dapat dibuat menjadi aplikasi yang real-time.
9. Applet memindahkan perkerjaan dari server menuju klien, membuat aplikasi web menjadi lebih simple dengan lebih banyak user/klien.

Setelah kita mengetahui kelebihan Java Applet, rasanya kurang dong kalo tidak mengetahui kelemahannya. Ini dia kelemahannya.

Kelemahan Java Applet:

1. Java memerlukan JVM, yang belum tentu disediakan oleh semua web browser
Applet baru bisa dijalankan ketika JVM telah berjalan, dan ini mungkin membutuhkan waktu yang cukup signifikan.
2. Lebih sulit merancang dan membangun User Interface yang bagus dengan Applet daripada menggunakan HTML.
3. Bila security approval-nya gagal – Applet tidak memiliki akses pada sistem yang dimiliki oleh klien.
4. Beberapa organisasi hanya mengijinkan software di-instalasi oleh administrator. Sehingga banyak user tidak bisa melihat Applet secara default.

Kamis, 10 Juni 2010

Penggunaan ERD (Entity Relationship Diagram) Pada Pfizer

Rekan - rekan semua, kali ini saya akan membahas mengenai penggunaan ERD pada PT. Pfizer. Jika kalian ingin mengulas lebih dalam tentang bagaimana proses penggunaan ERD tersebut, silakan kalian download link di bawah ini. Selamat Belajar!!

Download file

Minggu, 30 Mei 2010

Subquery dan Contoh Soalnya

Pengertian singkat tentang “subquery” adalah perintah SELECT yang berada di dalam perintah SQL lain. Subquery sangat berguna ketika kita ingin menampilkan data dengan kondisi yang bergantung pada data di dalam table itu sendiri.
Berikut ini adalah sebuah contoh soal dari penggunaan Subquery:
Sebelumnya kita akan membuat table terlebih dahulu:

1. Tmaster


Note: NO dijadikan sebagai primary key

2. Tanggota


Note: ID dijadikan sebagai primary key

3. Ttransaksi


Note: terdapat foreign key, yaitu pada ID_peminjam dan NOFILM.
Langsung saja kita latihan yaa..

Soal no. 1 :

Tampilkan seluruh film yang diproduksi tahun 2010.

Query:

Select judul from tmaster where tahun in (select tahun from tmaster where tahun = ‘2010’);

Output:





Soal no. 2 :

Tampilkan film – film yang BUKAN ber-genre ‘action’.

Query :

Select judul from tmaster where genre not in (select genre from tmaster where genre = ‘action’);

Output:



Soal no.3 :
Tampilkan jumlah film yang diproduksi pada tahun ‘2007’.

query:

select count(judul) from tmaster where tahun in (select tahun from tmaster where tahun = '2007');

Output:



soal no. 4:

tampilkan nomor ID peminjam yang dendanya sebanyak 1000.

query:

select id_peminjam from ttransaksi where denda in (select denda from id_peminjam where denda = '1000');

output:



soal no.5 :

tampilkan nama - nama peminjam yang tidak memiliki denda pada transaksi peminjaman

query :

select ta.nama from tanggota ta, ttransaksi tt where ta.id = tt.id_peminjam and tt.denda in (select min(denda) from ttransaksi);

output:



soal no. 6 :

tampilkan jumlah denda dari RINTUL.

query :

select sum(denda) from tanggota ta join ttransaksi tt on (ta.id = tt.id_peminjam)
where ta.nama in (select ta.nama from tanggota ta where ta.nama = 'rintul');

output:



soal no. 7 :

tampilkan data - data peminjaman anggota antara 1 januari 2005 sampai 1 januari 2007.

query :

select tt.id_peminjam, tt.nofilm, tt.tgl_pinjam, tt.tgl_kembali, tt.denda from tanggota ta join ttransaksi tt on (ta.id = tt.id_peminjam) where tt.tgl_pinjam in (select tt.tgl_pinjam from ttransaksi tt where tt.tgl_pinjam between '01-01-2005' and '04-03-2010');

output:



soal no. 8 :

tampilkan data peminjaman anggota yang bernama 'OCTOSIS'.

query:

select tt.id_peminjam, tt.nofilm, tt.tgl_pinjam, tt.tgl_kembali. tt.denda from ttransaksi tt, tanggota ta where ta.id = tt.id_peminjam and ta.nama in (select ta.nama from tanggota ta where ta.nama = 'octosis');

output:



soal no. 9 :

bimantoko ingin melihat film apa saja yang telah dia pinjam beserta data peminjaman lainnya di bawah tahun 2010 dan dendanya jika ada.

query:

select tt.id_peminjam, tt.nofilm, tt.denda, tm.judul, tt.tgl_pinjam, tt.tgl_kembali from ttransaksi tt, tmaster tm, tanggota ta where ta.id = tt.id_peminjam and tm.no = tt.nofilm and ta.nama in (select ta.nama from tanggota ta where ta.nama = 'bimantoko') and tt.tgl_pinjam in (select tt.tgl_pinjam from ttransaksi where tt.tgl_pinjam < '01-01-2010');

output:



soal no.10 :

tampilkan semua nama anggota yang meminjam film 'transformer 2'.

query:

select ta.nama from tanggota ta, tmaster tm, ttransaksi tt where ta.id = tt.id_peminjam and tm.no = tm.nofilm and tm.judul in (select tm.judul from tmaster tm where tm.judul = 'transformer 2');

output:



download link

Rabu, 28 April 2010

Object Oriented Programming (OOP)

OOP (Object Oriented Programming) atau Pemprograman berorientasi objek adalah suatu cara baru dalam berfikir serta berlogika dalam menghadapi masalah-masalah yang akan dicoba diatasi dengan bantuan komputer. OOP, tidak seperti pendahulunya (Pemprograman Terstruktur), mencoba melihat permasalahan lewat pengamatan dunia nyata dimana setiap objek adalah entitas tunggal yang memiliki kombinasi struktur data dan fungsi tertentu. Ini kontras dengan pemprograman terstruktur dimana struktur data dan fungsi didefinisikan secara terpisah dan tidak berhubungan secara erat.

Pemrograman orientasi-objek menekankan konsep berikut:

kelas — kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh ‘class of dog’ adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.


Objek – membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.


Abstraksi – Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari “pelaku” abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.


Enkapsulasi – Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.


Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut dikirim. Contohnya, bila sebuah burung menerima pesan “gerak cepat”, dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui penggunaan fungsi kelas-pertama. -digituck


Hak Akses

OOP memberikan beberapa tipe hak akses terhadap variable (atribut), methode bahkan class. Tipe tipe hak akses tersebut yaitu Public, Private, atau Protected. Ini adalah salah satu bagian terpenting dari OOP, sehingga programmer yang hendak belajar OOP wajib memahami konsep pengaksesan data ini dalam OOP. -sentra-ilmu


Package

Package adalah suatu cara untuk memanage class-class yang kita buat. Package akan sangat bermanfaat Jika class-class yang kita buat sangat banyak sehingga perlu dikelompokkan berdasarkan kategori tertentu. Package adalah koleksi dari beberapa class dan interface yang berhubungan, dan menyediakan proteksi akses dan pengelolaan namespace. -wordpress


Pewarisan (Inheritance)

Pewarisan / Inheritance adalah pemberian sifat-sifat dari sebuah class utama (super class) kepada class - class lain yang memiliki sifat-sifat yang sejenis (sub-class). Class utama biasanya bersifat umum/global, sementara sub-class bersifat spesifik/khusus.

Contohnya:
Class bicycle yang sebelumnya dibuat adalah sebuah contoh sepeda pada umumnya (super class). Class ini dapat diwariskan kepada sub-class yang lebih spesifik, contohnya adalah sepeda gunung, sepeda balap, atau sepeda BMX. Dimana ketiga sepeda tersebut adalah sama-sama sebuah sepeda, yang memiliki sifat-sifat yang sama dari sepeda pada umumnya, dan juga memiliki sebuah sifat khusus yang tidak dimiliki sub-class lainnya. -Tiyangjava


Array

Dalam pemograman java, pendeklarasian suatu array bisa ditulis dalam bentuk:
int [ ] b;
statemen diatas hanya mendeklarasikan variabel b sebagai variabel bertipe array integer, untuk membuat(construct) array kita tulis dengan menggunakan operator ‘new’ seperti contoh berikut:
int [ ] a = new int[20];
statement diatas berarti telah dibuat array dengan nama a bertipe integer dan memiliki kapasitas 100 value, ingat indeks mulai dari 0 – 99, tidak ada indeks ke-100 (a [100]).
#bila kita paksakan mengakses indeks ke [100] maka akan muncul exception “array index out of bounds”.#
dalam pengisian value sebuah array kita bisa lakukan dengan melakukan metode looping seperti:

int [ ] a = new int[100];
for (int i = 0 ; i &lt; 100 ; i++)
a [ i ] = i; // isi array a dengan value 0 – 99

untuk mengetahui ukuran / panjang dari suatu array, kita gunakan syntaks: namaaray.length
contoh : System.out.println(a.length); akan mencetak ukuran dari array a, yaitu sebanyak 100.

contoh pengisian array dengan menggunakan looping:
for (int i = 0 ; i &lt; a.length ; i++)
System.out.println(a [ i ]); -sudoblog

Selasa, 20 April 2010

Membuat Class Diagram Menggunakan Netbeans versi 6.7

Mungkin rekan rekan masih bingung atau belum mengerti bagaimana cara membuat class diagram dengan menggunakan netbeans. Pada kesempatan kali ini, saya akan membantu anda untuk mengoperasikan netbeans ini.

Sebelumnya, netbeans 6.7 harus sudah diinstal di PC atau di laptop anda. Dan pastikan pula bahwa ketika anda menjalankan netbeans, PC atau laptop anda terhubung internet. Serta, instal juga UML-nya.

Langkah pertama, klik 'file' yang ada di kiri atas lalu pilih 'new project'. Setelah itu muncul kotak dialog. Pada bagian project, pilih 'java-platform model' lalu pilih 'next'. Setelah itu anda harus memasukkan nama project anda, lalu klik 'finish'.

Selanjutnya, anda harus memilih diagram type-nya. pilih 'class diagram' lalu klik 'finish' lagi.

Langkah kedua, ketika anda telah berhasil masuk ke lembar kerja netbeans 6.7, pilih icon 'package' yang terdapat di sebelah kanan atas lalu letakkan di dalam lembar kerja netbeans. Anda dapat pula mengubah nama package tersebut.

Langkah ketiga, pilih icon 'class' lalu pindahkan ke lembar kerja. ubah nama kelas tesebut sesuai dengan nama kelas yang anda inginkan. Lalu, dari dalam kelas tersebut anda dapat membuat berbagai macam atribut pendukung kelas. Maka secara otomatis ketika anda membuat atribut, pada kolom 'operation', yang terletak di bawah kolom atribut akan terisi dengan sendirinya.
Ulangi langkah ketiga apabila anda ingin membuat kelas lain.

Langkah keempat, hubungkan antara kelas yang satu dengan kelas yang lainnya dengan menggunakan 'navigable association'. Caranya, klik kelas yang akan dihubungkan, setelah itu muncul icon - icon pendukung di samping kanan kelas tersebut. Klik icon ketiga dari atas, lalu pilih icon 'navigable association' urutan keempat dari sebelah kiri. Lalu drag icon tersebut ke dalam class lain yang saling berkaitan.

Langkah kelima, hubungkan kelas - kelas yang sudah anda buat dengan package-nya dengan menggunakan 'containment'. Caranya, klik package, muncul icon - icon, drag icon 'containment' ke semua kelas yang ada.

Langkah keenam yaitu digenerate, untuk membuktikan apakah class diagram yang anda buat mengalami error atau tidak.

Berikut ini adalah contoh dari class diagram yang menggunakan penerapan dari UML (Unified Model Language) atau Bahasa pemodelan yang terpadu.





Jumat, 16 April 2010

Pengertian dan Contoh dari Istilah - Istilah Basis Data Relasional

Relasi, merupakan sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris. Relasi menunjukkan adanya hubungan diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Entitas merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dengan yang lainnya.


Atribut, merupakan kolom pada sebuah relasi. Setiap entitas pasti memiliki aribut yang mendeskripsikan karakter dari entitas tersebut. Penentuan atau pemilihan atribut-atribut yang relevan bagi sebuah entitas merupakan hal penting dalam pembentukan model data.


Tuple, merupakan baris pada sebuah relasi atau kumpulan elemen-elemen yang saling berkaitan menginformasikan tentang suatu entitas secara lengkap. Satu record mewakili satu data atau informasi tentang seseorang, misalnya : NPM, nama mahasiswa, alamat, kota, dll.

Domain, Kumpulan nilai yang valid untuk satu atau lebih atribut


Derajat(Degree), Jumlah atribut dalam sebuah relasi


Cardinality, Jumlah tupel pada sebuah relasi



contoh:




Jumat, 09 April 2010

Apa Sih Candidate Key & Alternative Key itu?

Candidate Key adalah satu atribut atau kombinasi satu atribut atau lebih yang secara unik menjadi identifier pada suatu relasi. Candidate key ini harus memenuhi syarat sbb:
  • Unique Identifier, untuk setiap row/tuple candidate key harus secara unik dapat menjadi identifier. Artinya, setiap non candidate key atribut secara fungsional bergantung pada candidate tersebut.
  • Non Redudancy, tidak ada duplikasi candidate key untuk menjadi unique identifier, dimana tidak dapat dilakukan penghapusan pada candidate key dimana tidak merusak sifat unique identifier.

Contoh dari candidate key adalah:

Untuk entiti 'supplier' candidate key yang dapat kita pilih adalah atribut SNo, karena secara fungsional atribut SName, Status, dan City bergantung ke atribut SNo.

Alternative Key adalah candidate key yang tidak dipilih sebagai primary key.

Contoh dari alternative key adalah : selengkapnya