Kamis, 19 April 2012


  1. POLIMORFISME
Dalam pemrograman berorientasi object kita mengenal suatu istilah yaitu “Polimorfisme ”, yaitu suatu teknik dalam programming yang lebih mengarahkan kita untuk memprogram secara general dari pada secara spesifik. Sebagai contoh seumpama kita memiliki 3 class berbeda yaitu: “Motor”, “Mobil” dan “Pesawat”. Dimana ketiga class tersebut adalah turunan dari class “Kendaraan”. Dalam kelas kedaraan terdapat suatu method yaitu “Move()”, akan tetapi apakah method “Move()” akan memberikan hasil yang sama pada tiga class tersebut. Dimana jika method “Move()” dipanggil pada class “Motor” akan menghasilkan perpindahan 30Km, jika pada class “Mobil” akan menghasilkan perpindahan 70Km dan jika dipanggil pada class “Pesawat” akan menghasilkan perpindahan 300Km. Hal inilah yang kita sebut sebagaiPolimorfisme , yaitu penggunaan method yang sama, yang akan menghasilkan suatu hasil yang berbeda tergantung class yang menggunakan method tersebut. 
Berikut ini adalah contoh program java yang menggunakan polimorfisme :

Kemampuan dari referensi untuk mengubah sifat menurut object apa yang dijadikan acuan dinamakan polimorfisme. Polimorfisme menyediakan multiobject dari subclasses yang berbeda untuk diperlakukan sebagai object dari superclass tunggal, secara otomatis menunjuk method yang tepat untuk menggunakannya ke particular object berdasar subclass yang termasuk di dalamnya.
Contoh lain yang menunjukkan properti polimorfisme adalah ketika kita mencoba melalui referensi ke method.
contoh program :
class kendaraan {
public void bahanbakar (){
System.out.println("kendaraan berbahanbakar :");
}
}
// Membuat kelas turunan mobil yang merupakan turunan dari class kendaraan :
class mobil extends kendaraan {
public void bahanbakar(){
System.out.println(" MOBIL bahan bakar bensin");
}
}
//Membuat kelas turunan kereta api yang merupakan turunan dari class kendaraan :
class keretaapi extends kendaraan {
public void bahanbakar (){
System.out.println("KERETA API bahan bakar batu bara");
}
}
//Membuat kelas turunan pesawat yang merupakan turunan dari class kendaraan :
class pesawat extends kendaraan {
public void bahanbakar(){
System.out.println("PESAWAT berbahan bakar Bensol");
}
}
// Membuat class bahanbakarkendaraan untuk mengetes class-class yang telah dibuat :
public class bahanbakarkendaraan {
public static void main(String[] args){
kendaraan kendaraan = new kendaraan();
mobil MOBIL = new mobil();
keretaapi KERETAAPI = new keretaapi();
pesawat PESAWAT = new pesawat();


kendaraan.bahanbakar();


kendaraan = MOBIL;
kendaraan.bahanbakar();


kendaraan = KERETAAPI;
kendaraan.bahanbakar();


kendaraan = PESAWAT;
kendaraan.bahanbakar();
}
}
output :

     2. INHERITANCE
Inheritance adalah salah satu teknik pemrograman berorientasi object yang digunakan agar suatu codingan dapat digunakan kembali oleh programmer lain / reuseable. Hal tersebut dilakukan dengan cara membuat turunan dari suatu class yang sudah ada, yaitu dengan membuat child class. Contohnya adalah jika ada programmer yang membuat suatu class yaitu shape yang memiliki atribut atribut luas, dan position kita tidak perlu membuat class baru ketika kita ingin membuat suatu class rectangle yang notabennya juga termasuk shape, jadi kita cuma perlu untuk menurunkan class shape tadi ke class rectangle yang akan kita buat.  Dari gambar diatas dapat kita ketahui hierarki dari penurunan class shape menjadi class class lainya yang notabennya masih termasuk dalam class shape. Selain itu dalam iheritance ini kita juga mulai mengenal yang dinamakan access modifier, yaitu keyword untuk merubah atribut dari suatu field dalam suatu class, dimana dalam java access modifier tersebut ada 4, yaitu: (none) -> Akses ke field tersebut hanya terbatas pada suatu package Public -> Field tersebut dapat diakses dari semua tempat, asal masih dalam satu scope Private -> Akses ke field tersebut hanya terbatas pada class dimana field tersebut ada Protected -> Akses ke filed tersebut hanya terbatas pada class dimana field tersebut ada, beserta class turunan dari class field tersebut. Untuk contoh program dapat dilihat dibawah ini, yang merupakan inheritance class person menjadi class student.
 contoh program :
//class Person.java
public class Person {

protected String name;
protected int age;

public Person(String name, int age) {
    this.name = name;
    this.age = age;
}

public String getName() {
    return this.name;
}

public int getAge() {
    return this.age;
}
}

//class Student.java

public class Student extends Person {

 private String schoolName;

 public Student(String name, int age, String schoolName) {
     super(name, age);
     this.schoolName = schoolName;
 }

 public String getSchoolName() {
     return this.schoolName;
 }
}

//class Main.java

public class Main {

  public static void main(String[] args) {
      Person person = new Person("Yohanda", 19);
      Student student = new Student("Mandala", 18, "SMAN 2");

      System.out.println("Informasi tentang object person : ");
      System.out.println("Name : " + person.getName());
      System.out.println("Age : " + person.getAge());
      System.out.println();

      System.out.println("Informasi tentang object student : ");
      System.out.println("Name : " + student.getName());
      System.out.println("Age : " + student.getAge());








      System.out.println("School Name : " + student.getSchoolName());
  }
}

output :














 Sumber : J.E.N.I pdf , yohandamandala.blogspot.com/,Buku : Semua Bisa Menjadi Programmer JAVA (Yuniar Spardi)
teman kelompok : http://granuuviq.blogspot.com/

Rabu, 11 April 2012

MEMILH WEB HOSTING

ini adalah beberapa tips tips memilih web hosting berikut ini.

 Customer Supportnya
 
Isalah satu faktor terpenting ketika Anda memilih perusahaan Web Hosting yang tepat untuk kebutuhan bisnis Anda. Siapa pun Anda, Anda akan selalu memberikan pertanyaan, komentar, bahkan mendapatkan problem.
Jenuh dengan perusahaan Web Hosting yang menawarkan Technical Support 24 jam namun telephone mereka jarang diangkat atau hanya dijawab dengan answering? Atau bahkan “Live Chat” (Human Click, PHP Live) mereka yang selalu offline? Apa hal yang paling dikhawatirkan oleh seorang Customer setelah selesai melakukan pembayaran? Tentu saja khawatir akan pelayanan support yang buruk oleh perusahaan Web Hosting tsb!
Sebelum Anda memilih perusahaan web hosting untuk website Anda, pastikan bahwa semua pertanyaan Anda baik melalui e-mail, telepon, maupun chat online selalu dijawab dalam waktu yang cukup singkat (kurang dari 1 jam). Hal ini secara langsung mengukur tingkat profesionalitas layanan.

Pastikan Perusahaan Hosting yang Anda Pilih benar – benar sebuah Perusahaan yang Profesional
 
Perusahaan tempat Anda membeli Nama Domain atau Layanan Web Hosting bisa jadi tidak lebih dari seorang anak SMA /Kuliahan yang melakukan pendaftaran domain dan experiment server di kamar tidurnya atau dengan kantor asal jadi saja? Bagaimana kelanjutan Nama Domain Anda ketika saat perpanjangan nama domain, security nama domain Anda dan lain sebagainya, jika perusahaan tersebut tidak serius atau bahkan telah tutup (tidak exist lagi)? Nama domain Anda beresiko lepas ke publik dan bisnis Anda tidak dapat beroperasi sebagaimana mestinya.

Salah satu cara pengecekan berapa lama perusahaan web hosting yang Anda pilih di antaranya dengan melakukan whois pada domain perusahaan web hosting tersebut.

Domain Anda Milik Siapa?
 
Sejauh ini kami mengamati masih banyak perusahaan web hosting yang tidak transparan dalam memberikan layanan. Sebagian perusahaan ini tidak memberikan domain yang telah dibeli kepada customer sesuai haknya. Atau mungkin domain di atasnamakan customer namun customer tidak diberikan Domain Manager untuk melakukan pengelolaan terhadap domainnya sendiri.

Hak atas domain yang tidak di berikan kepada customer akan membawa kesulitan :

·  Jika customer menghendaki pindah hosting, maka customer tidak dapat melakukan pemindahannya sendiri karena tidak memiliki akses pengaturan domain
·  Jika customer menghendaki untuk mentransfer domainnya ke Registrar lain, maka hal ini tidak dapat dilakukan sendiri, harus melalui pihak registrar lama
·  Jika suatu saat perusahaan web hosting tersebut tutup, customer tidak dapat mengelola lagi domainnya. Resiko paling parah adalah bahkan customer akan kehilangan domainnya karena sudah tidak dapat di perpanjang lagi  
 Harga Murah? Anda justru patut curiga!
 
Konsekuensi dari menghadirkan layanan prima tentu saja adalah masalah biaya. Adalah gimmick jika ada slogan harga murah tetapi layanan prima. Rumahweb berusaha untuk tetap rasional pada harga. Kami memiliki kantor yang beroperasi 24 x 7 dengan customer service dan technical support yang senantiasa siap membantu Anda kapanpun. Konsekuensinya tentu saja biaya operasional kami menjadi lebih tinggi. Berbeda sekali dengan perusahaan web hosting kebanyakan yang hanya dijalankan oleh satu atau dua orang dan bekerja secara personal bahkan hanya sebagai kerja sampingan.
Bayangkan saja jika Anda sekarang tertarik dengan harga yang murah, akan tetapi tahun depan atau bahkan bulan depan perusahaan web hosting tersebut sudah tidak eksis lagi. Apa yang akan terjadi? Anda kehilangan domain, kehilangan data – data web, dan kerugian lain yang Anda akan menyesalinya, bahkan mungkin akan membuat Anda jera.
Pastikan Anda menggunakan layanan hosting pada perusahaan yang benar – benar profesional. Hubungi via telepon, online chat, atau e-mail untuk memastikan hal tersebut.
Serba Unlimited = Impossible!
 
Banyak sekali web hosting yang menawarkan fasilitas – fasilitasnya serba unlimited. Mungkinkah itu? Jelas tidak. Segala sesuatu yang bersifat teknis selalu memperhitungkan batasan – batasan kemampuan teknis.


·  Unlimited Space : jelas tidak mungkin, apapun hardisknya selalu ada batasan quota space
·  Unlimited Traffic : semua server yang di letakkan di datacenter memiliki batasan traffic dari datacenter tersebut. Selain itu, website dengan traffic yang besar sudah pasti menggunakan resource CPU lebih tinggi. Jadi janji – janji unlimited traffic jelas tidak lagi rasional!
·   Unlimited Database : satu hal yang pasti, database yang besar atau jumlah database yang banyak akan memakan resource CPU dalam satuan yang sangat besar. Konsekuensinya server akan hang atau terganggu kinerjanya pada saat pemakaian CPU oleh customer berlebih. Akibatnya server akan down dan website Anda tentu saja akan menjadi korban
Reseller Hosting atau Bukan ya?
 
Salah satu cara paling ekonomis untuk memulai usaha web hosting adalah menjadi reseller web hosting karena tidak perlu membiayai server sendiri. Namun apa resikonya bagi pelanggan?
Yang jelas reseller tidak akan pernah dapat mengelola account – account hosting dengan mudah karena akses tertinggi hanya dimiliki oleh pemilik server. Akibatnya permintaan – permintaan teknis seperti permintaan pergantian ownership file, e-mail trouble shooting, DNS propagation, dan banyak hal lain tidak dapat terlayani dengan cepat karena harus menunggu dari pihak pemilik server untuk melakukan tindakan.
Hal lain yang menjadi pertimbangan adalah bahwa reseller tidak akan pernah tahu apa yang terjadi pada server. Apabila server down karena suatu hal, maka reseller tidak dapat menyelesaikan trouble tersebut. Sekali lagi harus menunggu dari pihak pemilik web server.

Tentu saja perusahaan hosting yang profesional tidak akan pernah mempertaruhkan pelanggannya dengan menjadi reseller dari web hosting lain.

Kualitas Hardware, Software, dan Internet Connectivity
 
Perusahaan hosting yang profesional dan menjaga nama baiknya tentu saja tidak akan mempertaruhkan kualitas layanan. Oleh karena itu hardware dan software pada server tentu saja akan menjadi salah satu concern utama dalam menghadirkan layanan yang prima. Di samping itu satu hal yang pasti, datacenter yang digunakan juga adalah datacenter yang benar – benar berkualitas dengan internet connectivity backbone yang handal sehingga website pelanggan akan cepat diakses dan stabil.


Melindungi WordPress dengan .htaccess

Beberapa cara guna melindungi blog berbasis WordPress, salah satunya adalah melalui .htaccess.
berikut ini adalah  baris – baris perintah yang perlu ditambahkan ke file .htaccess sesuai dengan kebutuhan anda.
# Membatasi akses login WP-Admin pada IP adress tertentu
AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName “Access Control”
AuthType Basic
order deny,allow
deny from all
# IP address sobat
allow from **.***.***.**
Ganti karakter **.***.***.** dengan alamat IP sobat, tambahakan koma (,) jika sobat ingin memasukan beberapa IP Address sekaligus.
# Melindungi WP-Login.php
Perintah ini hanya mengijinkan satu IP Adress untuk mengakses wp-login.php. Sangat riskan untuk pengguna yang menggunakan IP dinamis.
<Files wp-login.php>
Order deny,allow
Deny from All
Allow from **.***.***.**
</Files>
# IP Blacklist
Tambahkan baris-baris berikut untuk mencegah alamat IP tertentu mengakses blog sobat.
<Limit GET POST PUT>
order allow,deny
allow from all
deny from **.***.***.**
</LIMIT>
Ganti karakter **.***.***.** dengan IP Address yang ingin diblacklist, tambahakan koma (,) jika sobat ingin memasukan beberapa IP Address sekaligus.
# HotLinking
Bandwidth blog akan berkurang jika file – file yang diletakan pada blog tersebut dishare. Sebenarnya pengaturan Hotlinking  bisa dilakukan pada CPanel, yaitu pada menu HotLink Protection
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?fyourdomain.com$ [NC]
RewriteRule .*\.(gif|jpg|png)$ http://www.yourdomain.com/stealingisbad.gif [R,NC]
# Melindungi WP-Config.php
Melindungi file wp-config.php yang berisi informasi nama database, username database, dan password database.
# protect wpconfig.php
<files wp-config.php>
order allow,deny
deny from all
</files>
# Directory browsing
Mencegah semua isi direktori bisa terlihat melalui Browser.
# disable directory browsing
Options All -Indexes
# Melindungi WP-Comment-Post.php dari spam
Mencegah spambot mengakses wp-comment-post.php.
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
Ganti yourblog.com dengan alamat situs sobat.
# Mencegah spammer
Mencegah spammer yang menggunakan alamat IP tertentu.
<Limit GET POST>
order allow,deny
deny from **.***.***.**
allow from all
</Limit>
Ganti karakter **.***.***.** dengan alamat IP spammer, tambahakan koma (,) jika sobat ingin memasukan beberapa IP Address sekaligus.
# Melindungi RSS
RSS feed bisa dilindungi dari ulah pencuri konten (scraper) yang mencoba mencuri artikel kita dengan memanfaatkan RSS feed blog kita. IP Address yang berkarakter asterisk tersebut merupakan scraper, silahkan digoogling.
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^**.***.***.**
RewriteRule ^(.*)$ http://newfeedurl.com/feed
newfeedurl.com diganti dengan alamat yang lain. Berfungsi sebagai pengalihan Feed blog sobat.
# Melindungi file .htaccess
Ini yang paling utama, melindungi .htaccess.
# STRONG HTACCESS PROTECTION
<Files ~ “^.*\.([Hh][Tt][Aa])”>
order allow,deny
deny from all
satisfy all
</Files>

Enkapsulasi

Enkapsulasi sebagai program berbasis objek

undefinedundefined
Perangkat lunak pemrograman java merupakan bahasa pemrogramman yang berorientasi objek karna seperti bahasa pemrogramman C++, java juga termasuk bahasa pemrogramamman PBO atau OOP (Objek Oriented Programming) murni.Sebagai bukti java OOP murni,terdapat beberapa perintah,seperti polymorphisme,inheritance,encapsulation dan lain-lain.

dalam tulisan ini saya akan membahas salah satu program berbasis objek yakni pembungkusan( Encapsulation) .
  •  Pembungkusan (Encapsulation)  
         Encapsulation merupakan pemrogramman yang lebih memperhatikan aspek internal dari pada aspek eksternal atau sama pengertiannya didalam program sudah terbungkus antara data dan perilaku.
Encapsulation adalah sifat dari class yang modular artinya memisahkan antara data dan method dalam suatu kapsul dan mempunyai akses sekuritas yang dapat ditentukan oleh seorang programmer OOP.  Konsep pembuatan class yang mempunyai aturan sangat ketat menjadikan paradigma OOP bersifat aman.

contoh : 

Belajar.Java

class belajar{

public String x =”Pintar”;

private String y = “Java”;

}

Pintar.Java

public class Pintar{

public static void main(String[]args){

Coba panggil = new Belajar();

System.out.println(“Panggil X : “+panggil.x);

System.out.println(“Panggil Y : “+panggil.y);.

}}


Rezal Ahmulda