Saturday, October 15, 2011

Tugas PBO 2

1. Jelaskan tetntang istilah-istilah berikut : enkapsulasi, pewarisan dan polymorphism.
Jawab :
a. Enkaspsulasi : Pembungkusan variabel dan method dalam sebuah obyek yang terlinduni serta menyediakan interface untuk mengakses variabel tersebut.
b. Pewarisan : merupakan pewarisan atribut dan method dari sebuah class ke class lainnya.
c. Polymorphism  Kemampuan suatu obyek untuk mempunyai lebih dari satu bentuk.

2. Jelaskan mengenai Top-level Container, intermediate Container, Atomic Component, Layout Manager ?
Jawab :
a. Top-level Container : merupakan container dasar dimana komponen lainnya diletakkan.
b. Intermediate Container : merupakan komponen perantara di mana komponen lainnya akan di letakan.
c. Atomic Component : merupakan komponen yang memiliki fungsi spesifik dan biasanya user berinteraksi langsung dengan kompnen jenis ini.
d. Layout Manager : berfungsi untuk mengatur bagaimana posisi dari komponen-komponen yang diletakkan pada container.

3. Berikan contoh untuk soal no.2 !
Jawab :
a. Top-level Container : Frame, Dialog Applet yang diimplementasi dalam class JFrame, dan JApplet.
b. Intermediate Container : clas JPanel.
c. Atomic Component :  JButton, JLabel, JTextField, dan JTextArea.
d. Layout Manager :  class BorderLayout, BoxLayout, FlowLayout, GridBagLayout, dan GridLayout.

4.  Jelaskan tentang AWT dan SWING komponen dan cara menggunakannya !
Jawab :
AWT (Abstract Window Toolkit) merupakan sekumpulan library yang tidak tergantung pada platfrom serta digunakan untuk menyederhanakan implementasi user-interface.
SWING merupakan salah satu cara untuk mengimplementasikan pemograman window pada java.
Perbedaan pada AWT dan SWING adalah bentuk komponen dari kelas swing sama bentuknya pada semua sistem operasi.

5. Apa perbedaan antara variabel dan obyek ?
Jawab :
Variabel merupakan satuan yang dipakai oleh program sebagai basis penyimpanan, sedangkan oyjek merupakan semua benda yang ada didunia nyata dapat dianggao sebagai obyek.

6. Ada berapa macam tipe data primitf dalam java ? Sebutkan dan jelaskan !
Jawab :

Tipe Data Primitif
Jangkauan
Ukuran (bit)
Byte
-128 s/d 127
8
Short
-32767 s/d 32767
16
Int
-2147483648 s/d 2147483647
32
Long
-9223372036854775808 s/d
9223372036854775807
64
Char
sebuah Unicode
16
Float
3.4e-038 s/d 3.4e+038
32
Double
1.7e-308 s/d 1.7e+308
54
Boolean
false = 0 atau true = 1
8

7. Sebutkan tipe data reference dalan java !
Jawab :
Reference tipe data merupakan sebuah tipe data berjenis class, yang dapat memiliki fungsi atau metode.

Contoh
Tipe Data
178
Int
8864L
long
37.266
double
37.266D
double
87.363F
float
26.77e3
double
' c '
char
True
boolean
False
boolean


8. Berikan contoh deklarasi konstanta dalam java !
Jawab :
Contoh penamaan konstantan :
final double PI = 3.14;
final double CM_PER_INCH;
Konstanta dengan mengacu nama konstanta dengan nama kelas :
<Nama Kelas>,<Nama Konstanta>
Contoh : maskalsaintek, pHI.

9.  Sebutkan keyword dalam java !
Jawab :
abstract, double, int, super, boolean, else, interface, switch, break, extends, long, synchronized, byte, false, native, this, byvallue, final, new, threadsafe, case, finally, null, throw, catch, for, private, float, package, transient, char, for, true, class, go to, protected, try, const, if, public, void, continue, implements, return, while, default, import, short, do, instanceof, static.

Friday, October 14, 2011

Tugas RPL 1 - Pendahuluan

1. Apakah Perangkat Lunak (PL) ?
Jawab :
Perangkat lunak adalah istilah umum untuk data yang diformat dan disimpan secara digital,  termasuk program komputer, dokumentasinya , dan berbagai informasi yang bisa dibaca dan ditulis oleh komputer.

2. Apakan Rekayasa Perangkat Lunak (RPL) ?
Jawab :
Rekayasa perangkat lunak adalah suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak; mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan.

3. Apa perbedaan antara RPL dengan ilmu komputer (computer science) ?
Jawab : Beda RPL dengan ilmu komputer adalah RPL berhubungan dengan praktek dalam memproduksi perangkat lunak, sedangkan ilmu komputer berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak.

4. Apa perbedaan RPL dengan rekayasa sistem ?
Jawab :
Beda RPL dengan rekayasa sistem adalah RPL merupakan bagian dari rekayasa sistem yang meliputi pembangunan PL, infrastruktur, kontrol, aplikasi dan database pada sistem, sedangkan rekayasa sistem berkaitan dengan semua aspek daam pembangunan sistem berbasis komputer termasuk hardware, rekayasa PL, dan proses.

5. Apa yang dimaksud dengan proses Perangkat Lunak ?
Jawab :
proses Perangkat Lunak merupakan serangkaian kegiatan dan hasil-hasil relevannya yang menghasilkan perangkat lunak --> sebagian besar dilakukan oleh perekayasa perangkat lunak.

6. Apakah model Perangkat Lunak ?
Jawab :
merupakan deskripsi yang disederhanakan dari proses perangkat lunak dipresentasikan dengan sudut pandang tertentu. Bisa mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran orang yang terlibat pada rekayasa perangkat lunak.

7. Berapa biaya Rekayasa Perangkat Lunak ?
Jawab :
Umumnya sekitar 60% untuk biaya pengembangan (developmnet) dan 40% biaya pengujian (testing). Distribusi biaya yang tepat selama proses perangkat lunak bergantung pada proses yang digunakan dan jenis perangkat lunak yang dikembagnkan.

8. Apa saja metode-metode Rekayasa Perangkat Lunak ?
Jawab:
a. Deskripsi model sistem --> Deskripsi model yang harus dikembangkan dan notasi yang digunakan untuk mendefinisikan model-model ini. Ex : model aliran data.
b. Aturan --> Batasan yang berlaku bagi model sistem. Ex : Setiap entitas pada model sistem harus memiliki nama yang unik.
c.Rekomendasi --> Saran dalam membentuk perancangan yang baik. Ex : Tidak ada objek yang memiliki lebih dari tujuh sub-objek yang berhubungan dengannya.
d. Panduan Proses --> Aktifitas yang bisa diikuti untuk mengembangkan model sistem. Ex : Atribut objek harus didokumentasi sebelum mendefinisikan operasi yang berhubungan dengan objek.

9. Apa yang dimaksud dengan CASE (Computer-Aided Software Engineering) ?
Jawab :
CASE (Computer-Aided Software Engineering) mencakup berbagai macam program yang digunakan untuk mendukung kegiatan PL seperti analisis pertanyaan, pemodelan sistem, debugging, dan pengujian.

10. Apakah atribut-atribut PL yang baik ?
Jawab:  
1.Dapat dipelihara (Maintanability) --> PL harus dapat memenuhi perubahan kebutuhan user. 
2.Dapat diandalkan (Dependability) --> PL harus dapat dipercaya dan tidak menyebabkan kerusakan fisik atau ekonomi jika terjadi kegagalan sistem. 
3.Efisien --> PL harus efisien dalam penggunaan sumber daya sistem.
4.Kemampupakaian (Usability) --> PL harus dapat digunakan sesuai dengan yang direncanakan.

11. Apa tantangan kunci yang dihadapi RPL ?
Jawab :
a. Tantangan Warisan (Legacy) --> Tantangan memelihara dan meng-update PL sedemikian sehingga biaya yang berlebihan dapat dihindari dan layanan bisnis yang penting tetap dilakukan.
b. Tantangan Heterogenitas --> Tantagan teknik pengembangan untuk membangun perangkat lunak yang dapat diandalkan dan cukup flexibel untuk menghadapi heterogenitas yang ada.
c. Tantangan Pengiriman --> Tantangan mempersingkat waktu kirim sistem besar dan kompleks, tanpa mengurangi kualitas sistem.

Tugas PBO 1

      a.  Jelaskan perbedaan antara J2SE ( Standart Edition), J2EE (Enterprise Edition) juga J2ME (MicroEdition)?
Jawab :
·         Java Platform Micro Edition atau Java ME, adalah salah satu platform java yang dirancang untuk aplikasi mobile dan sistem tertanam ( lebih enak nyebutnya embedded system). Level Java ME digunakan untuk merancang perangkat lunak handphone dan PDA. Java ME ini lebih dikenal juga dengan nama Java 2 Platform, Micro Edition atau J2ME. Java ME dirancang oleh Sun Microsystem dan sekarang dimiliki oleh perusahaan Oracle Corporation.
·         Java Platform, Enterprise Edition atau Java EE merupakan standar untuk mengembangkan aplikasi skala besar / enterprise. J2EE banyak digunakan sebagai platform untuk pemrograman di sisi server.
·         Java Platform Standard Edition atau J2SE banyak digunakan sebagai platform untuk pemrograman dalam bahasa Java. Platform ini digunakan untuk mendeploy sebuah aplikasi. Java SE terdiri dari virtual machine yang digunakan untuk menjalankan program java bersama-sama dengan library atau paket.
Perbedaan dengan J2EE adalah bahwa J2SE menambahkan library yang berfungsi untuk mendeploy program java agar berjalan pada aplikasi server.

b. Jelaskan Perbedaan pembuatan project dengan menggunakan Java Application dan  Java Class Library ?
Jawab :
- Java Class Library : dimana kita akan membuat sebuah utility class. 
Java Application Project : dengan main class yang akan mengimplementasikan sebuah method dari utility class.

c.       Apa yang dimaksud dengan Package dalam netbeans ?
Jawab :
Package merupakan sarana/cara pengelompokkan dan pengorganisasian kelas-kelas dan interface yang sekelompok menjadi suatu unit tunggal dalam library.

d.      Jelaskan perbedaan antara Compile file dan Build juga Run file ?
Jawab :
-          Compile file = menyusun file
-          Build fiel = membuat file
-          Run file = menjalankan file

e.      Jelaskan pengertian istilah-istilah berikut :
1      - Class : merupakan template untuk membuat obyek dan berperan sebagai tipe data dari sebuah obyek.
2         - Objek / instans : Semua benda yang ada di dunia nyata dapat dianggap sebagai obyek.
3        -  State : keadaan dari sebuah objek. 
          - Behaviour : Behavior / tingkah laku adalah hal – hal yang bisa dilakukan oleh obyek dari suatu class.
5      - Method : tingkah laku dari suatu objek atau kelas, jika bersifat static berarti tingkah laku semua objek dalam kelas tersebut.
6      -  Konstruktor : method yang tidak memiliki return value (secara implisit adalah instant dari kelasnya), hanya saja namanya sama dengan nama kelas, dan dapat diberi modifier akses (public, protected, default, private).