Yudhicrasx’s Blog

May 1, 2008

Java Hari ke-2

Filed under: Komputer — yudhicrasx @ 10:53 pm

Seperti post sebelumnya kalau ak mengambil kelas JAVA preparation untuk test dapatin sertifikat java internasionalnya. Setiap pertemuan ak usahakan untuk me-review diblog ini.. Pagi ini habis nyicil tugas KP [Kerja Praktek] sambiil dengerin radio di 0limitsradio.com dari windows media player pake headphone yg udah lama dianggurin.. blom lagi sarapan, males ahh keluar blom mandi lagi, semalem temen2 kos pada bakar2an ikan dari kolam Mas Andy [Bapak Kosan, ex Reman sini dulu "katanya", tapi asik banget orangnya].. Jadi inget kalo masih ada utang [pada diri sendiri] nulis review kelas java kemarin..

Kemarin yg dibahas masih dasar banget [tapi penting] mengenai JAVA dan OOP [Object Oriented Programming] oleh Pak Arwan. Java yang dulunya bernama OAK (pohon OAK) adalah sebuah militer project yg tujuannya membuat sebuah bahasa pemrograman yg mampu berjalan di semua platform [sistem operasi]. Memang jebanyakan teknollogi yg berkembang dimotori dari pencarian teknologi baru oleh pihak militer misalnya internet, telpon dll. Setelah dikembangkan ternyata banyak perusahaan yg melirik project ini dan kemudian namanya diubah menjadi JAVA karena “bapak java” James Gosling suka minum kopi yg kata dosen ku dari JAWA – Indonesia, katanya tu kopi dari lampung, ga tau dia tau dari mana, mungkin waktu itu Om James Gosling lagi minum bareng ma dia [Pak Arwan hehehee] trus dia liat tulisan dikemasan kopinya “made in INDONESIA:D .. wah kalau beneran gitu, ak jadi lebih bangga lagi sebagai orang Indonesia.. Tapi tau ga kalau lagi dikembangkan bahasa pemrograman pake bahasa batakoleh orang indonesia, oleh orang medan. Tapi pengembangannya masih blom sempurna.. bahasa pemrograman batak

Kembali ke java, kita buat program hello world. Begini sintak-nya (btw, sintak tu bahasa inggrisnya apa sihh?) :

class helloworld {

public static void main (Strings [ ] args) {

System.out.println(“Hallo Dunia”);

}

}

Setiap program yg kita jalankan, paling tidak memiliki satu class yaitu “main” dan sebagai induknya objek class-nya java.lang.* pembahasan mengenai ini akan lebih detail pada pertemuan berikutnya, insya Allah. Software yg kita gunakan adalah netbeans 6, ternyata di netbeans 6 sudah ada cara yg cepat untuk menyusun sintak2 yg berantakan secara cepat dengan menekan hmm ak lupa (kalau ga salah alt + F6) atau ada di tab source..saya baru pernah gunakan netbeans 5.5 yg belum ada fasilitas begitu. Fasilitas lainnya yaitu netbeans keyboard shortcut and code templates. Fungsinya untuk mempercepat penulisan sintak, misal ketika ingin menulis System.out.println (“”);, cukup mengetikkan sout kemudian space atau tab tergantung settingan di Tools > Options > Editor > [tab] Code Templates. Selain fungsi diatas, fungsi lain yaitu refactoring yaitu fungsi untuk merubah sintak2 yg telah dituliskan di program ketika sebuah class misalnya dipindahkan dari package-nya.

Selanjutnya, mengenai sifat2 OOP :

  1. inheritance (pewarisan) maksudnya sebuah objek memiliki state(kondisi) dan behaviour(sifat). pewarisan dilakukan untuk mempermudah dalam pengembangan program karena OOP menganggap semuanya adalah objek tetapi sebetulnya JAVA belum pure 100% OOP, seperti type data String dan Integer yg bukan merupakan objek. contoh objek orang class2 dibawahnya heni – mustafa – dani. Sifat2 yg didefinisikan yaitu jumlah kepala, jumlah kaki, jenis kelamin dan tinggi badan. class2 diatas memiliki sifat2 yg sama (sifat umum) yaitu memiliki jumlah kepala = 1, jumlah kaki = 2 yang akan dideklarasikan pada program di objek orang (class induk) dan sifat2 yg tidak sama (sifat khusus) dideklarasikan pada masing2 class anak seperti jenis kelamin (ada yg perempuan ada yg laki2), tinggi badan (bervariasi, misalnya ada yg 170, ada yg 167). Cara ini akan mempercepat pembanguan program karena programmer tidak perlu memasukkan sifat2 (behaviour) yg ke setiap class2 anak, cukup deklarasikan ke class induknya saja. Selain itu perubahan sifat2 yg dilakukan di class induk, akan diikuti di class anak2nya juga.
  2. Ak pikir untuk lebih lengkapnya lihat di Java Tutorial. URL ini dijadikan sebagai pegangan kami, peserta kelas JAVA dalam belajar java.

Udah dulu ahh ak mau lanjutin tugas KP lagi..

LTSP [Linux Terminal Server Project]

Filed under: Komputer — yudhicrasx @ 10:52 pm

Kemarin keliling2 jogja cari buku tentang Linux, maunya sih cari buku Ubuntu, atau Mikrotik ehh yg dibeli malah buku LTSP punyanya “Pak” (sok kenal panggil Pak hehee) Onno W Purbo judulnya “PC Cloning Windows pakai Linux LTSP”. Dari situ ak cari software2 untuk kebutuhannya, rencananya ak mau buat pake distro Ubuntu 8.04 yg sudah ak download pagi ini. Ak juga sudah download paket LTSP-nya untuk ubuntu disitus resmi ltsp cuma masih ada satu foftware lagi yg ak butuhin, bootrom yg digunakan untuk booting dari client.

LTSP adalah sebuah jaringan diskless (tanpa hardisk). Client tidak menggunakan hardisk uttuk penyimpanan data tetapi semua proses penyimpanan dilakukan di server oelh karena itu jaringan ini dapat menekan biaya yg cukup signifikan soalnya selain penghematan untuk membeli hardisk pada client, kebutuhan sistem LTSP ini dapat menggunakan komputer yg spesifikasinya rendah cukup dengan komputer Pentium I dengan RAM 16 MB dan LAN Card ditambah lagi tidak tidak perlu membeli licency software. Walaupun spesifikasi komputer client yg rendah, tetapi client dapat menggunakan sistem operasi yg terbaru sekalipun karena hampir seluruhnya proses dilakukan di server.

Saat ini ak belum tau dan belum ada teman buat ngoprek bareng juga. Komputer client2nya pun ak belum punya. Mungkin komputer salah satu anak kos disini yg bakal jadi sasaran (hihiiii)..

Lesson : Language Basics

Filed under: Komputer — yudhicrasx @ 10:43 pm

Kali ini ak akan mengulang kelas JAVA hari kamis kemarin,,

Pada pertemuan ini kami baru dapat buku yg dijadikan panduan belajar kelas JAVA kami. Buku ini terlambat diberikan karena ada masalah dengan cetakannya. Buku ini menggunakan bahasa Inggris dan isinya sama dengan tutorial JAVA yg sudah ak berikan kemarin di website resmi dari java sun-nya yaitu di tutorial .

Ok. langsung saja pada lesson ini. We gonna talking about “variables, operators, expressions-statements-blocks, and control flow statements. Lesson ini sangat fundamental ketika seseorang mempelajari bahasa pemrograman APAPUN, karena penggunaannya yg tidak dapat dipisahkan ketika membangun sebuah bahasa pemrograman, baik itu bahasa pemrograman deklaratif, fungsional, procedural ataupun OOP (Bahasa Pemrograman Berorientasi Objek).

JAVA Programming membedakan menjadi 4 tipe variable : alamat pembahasan

  1. Instance Variables (non-static Fields) atau disebut instance variables.
  2. Class Variables (Static Fields).
  3. Local Variables. Artinya nilai dari variable hanya dapat diakses oleh kelas tempat dideklarasikan variable tersebut, tidak oleh kelas lain.
  4. Parameters.

Aturan Naming (penamaan)

  1. Case sensitive. Artinya “java” berbeda dengan “Java” yang menggunakan huruf besar diawal.
  2. Dapat berupa huruf, karakter dollar “$” dan underscore “_” karakter. Sebagai sebuah kesepakan bersama, biasanya variable dimulai dengan huruf dan sebuah class ditulis dengan huruf besar diawal dan bila terdiri dari 2 kata, maka disambung dengan kata pertama dengan huruf pertama pada kata ke-2 menggunakan huruf besar seperti KelasJava, sedangkan variable menggunakan huruf kecil diawal huruf dan menggunakan huruf besar diawal bila terdiri dari 2 kata, misalnya daftarUniversitasYogyakarta.

Primitive Data Type.

Seperti yg telah ak singgung sebelumnya bahwa JAVA belum sepenuhnya bahasa pemrograman yg berorientasi objek karena masih memiliki tipe data primitive seperti :

  • Bilangan bulat.

1. byte. Batasanya : -128 sampai 127 atau sebanyak 8-bit.

2. short. Batasnya : -32.768 sampai 32.767 atau sebanyak 16-bit.

3. int. Batasnya : -2.147.483.648 sampai 2.147.483.647 atau sebanyak 32-bit. Type data ini yg biasanya sering digunakan.

4. long. Batasnya : -9.223.372.036.854.775.808 sampai 9.223.372.036.854.775.807 atau sebanyak 64-bit.

  • Bilangan Desimal

5. float. Presisi : 32-bit. Selengkapnya

6. double. Presisi : 64-bit. Type yg umum digunakan.

  • boolean. Nilainya hanya true atau false. Dapat berupa fungsi matematis atau statement lainnya.
  • char. Nilainya berupa karakter Unicode sebesar 65.535 atau 16-bit.

String ternyata tidak dikategorikan sebagai variable dalam JAVA, ak tidak tau pastinya tetapi kata dosenku “mungkin karena String nilainya berupa kumpulan karakter”. String merupakan sebuah class di JAVA tepatnya java.lang.String. Itulah mengapa deklarasi String ditulis menggunakan huruf besar diawal huruf, seperti convention penulisan penamaan class yg telah dibahas diatas.

“busett.. ni kamar panas amat yakk” :-p

Ok kids, lets come to our topic, hahhaa dah kayakdosen aja ak.

Pen-deklarasi-an tipe data (Literal of Data Types)

Contoh : [tanda "//" artinya sebuah komentar]
int desimal = 1000; //dari 0 sampai 9
int octal = 032; //dari 0 sampai 7
int hexa = 0×1a //yaitu 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
String nama = “yudhi”;
char nilai = ‘A’
double d1 = 123.4;
double d2 = 13e-2 //sama dengan 13.0 x 10(-2) [10 pangkat -2]
float f = 123.4f; //menggunakan huruf f yg menandakan type data float.

:: karena besok ak ada kelas JAVA lagi jam 8.00 jadi review-nya di pending dulu [takut kesiangan bangun :D ] ::

Java Variables & Statements [part 2]

Filed under: Komputer — yudhicrasx @ 12:59 pm

Melengkapi postingan Java Variables & Statements [part 1], kali ini ak akan membahas mereview mengenai :
OPERATOR

Operator Deklarasi

1. postfix expr++ expr--

=> expr++ digunakan untuk menaikkan nilai dari expr(sebuah ekspresi) sebanyak 1, dan sebaliknya untuk expr– untuk menurunkan 1.

2. unary ++expr --expr +expr -expr ~ !

=> Hampir sama dengan expr++ dan expr–, ++expr dan –expr digunakan untuk menambahkan atau mengurangi nilai sebanyak 1, tetapi ++expr dan –expr tidak langsung menampilkan hasil dari pengurangan atau penambahan expression tersebut, tetapi menyimpan nilai awalnya dulu kemudian ditampilkan dipemanggilan berikutnya. +expr untuk memberikan nilai posifit atau -expr untuk memberikan nilai negatif dari sebuah expession.Operator ” ! ” artinya tidak sama atau negasi atau NOT.

3. Multiplicative * / %

=> ” * ” digunakan untuk perkalian bilangan. ” / ” digunakan untuk pembagian. ” % ” digunakan untuk hasil bagi atau dikenal dengan ” MOD “. Dalam bahasa pemrograman lain seperti PASCAL, ada operator aritmatika lainnya yaitu ” DIV “, digunakan untuk pembulatan hasil pembagian, tetapi dalam JAVA hanya menggunakan operator ” / “,hal ini dapat dilakukan dengan deklarasi variable dengan tipe double. Contoh :

double angka1 = 10.0; //nilai 0 dibelakang koma diberikan sebagai inisialisasi bahwa tipe data nilai tersebut

adalah double.

double angka2 = 3.0;

int hasil; //Dalam hal ini hasil = angka1 / angka2. sehingga hasilnya adalah 3.3333333.

4. additive + -

=> ” + ” digunakan untuk operasi penambahan bilangan dan ” – ” untuk pengurangan.

5. shift << >> >>>

=> Shift atau penggeseran digunakan untuk mengeser nilai. Tetapi untuk ” >>> “, ak ga tau perhitungannya bagaimana apalagi bila nilai yg diberikan adalah negatif. Mungkin ada pembaca yg tau ?

contoh :

public static void main(String[] args) {
int nilai= 10;
System.out.println(nilai<< 2);
}

output : 40

Perhitungannya yaitu nilai x 22

6. relational < > <= >=

=> Seperti bahasa pemrograman lain, operator ini untuk membandingkan nilai dari ekspresi 1 dengan ekspresi lainnya. ” < ” untuk menyatakan “lebih kecil dari”, ” > ” untuk “lebih besar dari”, ” <= ” untuk “kecil sama dengan”, dan ” => ” untuk “besar sama dengan”.

7. equality == !=

=> ” == ” untuk membandingkan nilai ekspresi 1 dengan ekspresi lainnya yaitu “sama dengan” tetapi berbeda dengan ” = ” yg digunakan untuk hasil dari sebuah fungsi atau perhitungan. ” != ” untuk “tidak sama dengan”.

8. bitwise AND &

=> Operator ini digunakan untuk menyatakan ” AND “. Ak belum mengetahui perbedaannya dengan ” && ” tapi setelah ak coba di netbeans, hasilnya sama. contoh :

public static void main(String[] args) {
int angka1 = 10;
int angka2 = 2;
if ((angka1 > 0) & (angka2 > 5)) {
System.out.println(“Sama”);
}
else System.out.println(“ga sama”);
}

output : ga sama

9. bitwise exclusive OR ^

=> Operator ini digunakan untuk menyatakan logika ” OR “. contohnya :

public static void main(String[] args) {
int angka1 = 10;
int angka2 = 2;
if ((angka1 > 0) ^ (angka2 > 5)){
System.out.println(“Sama”);
}
else System.out.println(“ga sama”);
}

output : Sama

=> Operator ini membuat ak bingung, pasalnya bila penempatannya di lakukan seperti

public static void main(String[] args) {
int angka1 = 10;
int angka2 = 2;
System.out.println(angka1 ^ angka2);
}

output : 8

10. bitsiwe inclusive OR |

=> Saya juga belum tahu perbedaannya dengan ” ^ ” tetapi ketika saya mencobanya hasilnya sama dengan menggunakan operator ” ^ “. Ak kira mungkin penggunaan operator exclusive lebih luas dair operator inclusive. Ak harap ada JAVAers (sebutan sendiri : untuk orang yg suka JAVA :-p) bisa memberitahu ak bila mengetahui perbedaan2 dari operator2 yg belum ak ketahui.

11. logical AND &&

=> Operator untuk menyatakan logika ” AND “.

12. logical OR ||

=> Operator untuk menyatakan logika ” OR “.

13. ternary ? :

=> Operator yg digunakan untuk memberikan pilihan boolean (true atau false). Operator ini digunakan untuk mempersingkat statement dengan menggunakan if..else agar pemrograman lebih mudah dan singkat.

contoh :

public static void main(String[] args){
          int value1 = 1;
          int value2 = 2;
          int result;
          boolean someCondition = true;
          result = someCondition ? value1 : value2;
          System.out.println(result);
     }

14. assignment = += -= *= /= %= &= ^= |= <<= >>= >>>=

=> Secara umum operator2 assignment ini hampir sama dengan operator yg sudah ak jelaskan sedikit diatas. Untuk lebih mudahnya, langsung ak contohkan beberapa saja :

public static void main(String[] args) {
int angka = 10;
System.out.println(angka -= 2);
}

output : 8 //sama dengan menggunakan operator ” ^= “

public static void main(String[] args) {
int angka = 10;
System.out.println(angka = 2);
}

Java Variables & Statements [part 1]

Filed under: Komputer — yudhicrasx @ 11:04 am

Pada pertemuan ini kami baru dapat buku yg dijadikan panduan belajar kelas JAVA kami. Buku ini terlambat diberikan karena ada masalah dengan cetakannya. Buku ini menggunakan bahasa Inggris dan isinya sama dengan tutorial JAVA yg sudah ak berikan kemarin di website resmi dari java sun-nya yaitu di tutorial .

Ok. langsung saja pada lesson ini. We gonna talking about “variables, operators, expressions-statements-blocks, and control flow statements. Lesson ini sangat fundamental ketika seseorang mempelajari bahasa pemrograman APAPUN, karena penggunaannya yg tidak dapat dipisahkan ketika membangun sebuah bahasa pemrograman, baik itu bahasa pemrograman deklaratif, fungsional, procedural ataupun OOP (Bahasa Pemrograman Berorientasi Objek).

JAVA Programming membedakan menjadi 4 tipe variable : alamat pembahasan

  1. Instance Variables (non-static Fields) atau disebut instance variables.
  2. Class Variables (Static Fields).
  3. Local Variables. Artinya nilai dari variable hanya dapat diakses oleh kelas tempat dideklarasikan variable tersebut, tidak oleh kelas lain.
  4. Parameters.

Aturan Naming (penamaan)

  1. Case sensitive. Artinya “java” berbeda dengan “Java” yang menggunakan huruf besar diawal.
  2. Dapat berupa huruf, karakter dollar “$” dan underscore “_” karakter. Sebagai sebuah kesepakan bersama, biasanya variable dimulai dengan huruf dan sebuah class ditulis dengan huruf besar diawal dan bila terdiri dari 2 kata, maka disambung dengan kata pertama dengan huruf pertama pada kata ke-2 menggunakan huruf besar seperti KelasJava, sedangkan variable menggunakan huruf kecil diawal huruf dan menggunakan huruf besar diawal bila terdiri dari 2 kata, misalnya daftarUniversitasYogyakarta.

Primitive Data Type.

Seperti yg telah ak singgung sebelumnya bahwa JAVA belum sepenuhnya bahasa pemrograman yg berorientasi objek karena masih memiliki tipe data primitive seperti :

  • Bilangan bulat.

1. byte. Batasanya : -128 sampai 127 atau sebanyak 8-bit.

2. short. Batasnya : -32.768 sampai 32.767 atau sebanyak 16-bit.

3. int. Batasnya : -2.147.483.648 sampai 2.147.483.647 atau sebanyak 32-bit. Type data ini yg biasanya sering digunakan.

4. long. Batasnya : -9.223.372.036.854.775.808 sampai 9.223.372.036.854.775.807 atau sebanyak 64-bit.

  • Bilangan Desimal

5. float. Presisi : 32-bit. Selengkapnya

6. double. Presisi : 64-bit. Type yg umum digunakan.

  • boolean. Nilainya hanya true atau false. Dapat berupa fungsi matematis atau statement lainnya.
  • char. Nilainya berupa karakter Unicode sebesar 65.535 atau 16-bit.

String ternyata tidak dikategorikan sebagai variable dalam JAVA, ak tidak tau pastinya tetapi kata dosenku “mungkin karena String nilainya berupa kumpulan karakter”. String merupakan sebuah class di JAVA tepatnya java.lang.String. Itulah mengapa deklarasi String ditulis menggunakan huruf besar diawal huruf, seperti convention penulisan penamaan class yg telah dibahas diatas.

“busett.. ni kamar panas amat yakk” :-p

Ok kids, lets come to our topic, hahhaa dah kayakdosen aja ak.

Pen-deklarasi-an tipe data (Literal of Data Types)

Contoh : [tanda "//" artinya sebuah komentar]

int desimal = 1000; //dari 0 sampai 9

int octal = 032; //dari 0 sampai 7

int hexa = 0×1a //yaitu 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

String nama = “yudhi”;

char nilai = ‘A’

double d1 = 123.4;

ARRAY

Sama seperti bahasa pemrograman lain, array menampung beberapa nilai / himpunan nilai yg sama, baik itu String atau integer. Dibawah ini adalah cara lain untuk memberikan nilai array selain yg telah diberikan di tutorial resmi java di sini. Contoh :

class NamaSaya{

public static void main (Strings[ ] args) {

String nama[ ] = {“yudhi”, “lazuardi”, “hamzah”};

System.out.println (nama[0]); //array selalu di mulai dari 0 bukan 1.

System.out.println (nama[1]);

System.out.println (nama[2]);

}

}

To be continue.. :-p

Blog at WordPress.com.