Senin, 24 Mei 2010

Kekurangan dan Kelebihan Pbo

Kelebihan

1. Sederhana dan Ampuh

Anda dapat belajar membuat program dengan Java secara cepat jika telah memahami konsep dasar pemrograman berorientasi objek.Anda hanya perlu mengerti beberapa konsep untuk dapat menulis program yang memuaskan. Java tidak memiliki hal-hal yang mengejutkan dan aneh. Tidak seperti bahasa pemrograman lain yang menawarkan puluhan cara untuk melakukan satu pekerjan, tetapi semua itu dibutuhkan ketelitian dan tingkat kerumitan yang tinggi.

Kesederhanaan adalah kelebihan utama yang ditawarkan Java. Hal ini dimungkinkan karena Java Scripting Language (bahasa naskah) menghilangkan kemampuan kita untuk berinovasi dengan menganggap bahwa semua yang kita inginkan telah disatukan dalam satu objek yang telah ada dan seringkali perlu di-script-kan. Java memberi anda kemampuan untuk menuangkan semua ide anda dalam cara berorientasi-objek yang mudah dan jelas tanpa harus melihat proses bagian dalam sistem yang seringkali berbahaya.

2. Aman

Kebanyakan masalah keamanan terutama aplikasi jaringan internet yang dihasilkan dari sistem lama terjadi karena sistem tidak dirancang dengan konsep keamanan Internet.Salah satu prinsip kunci perancangan Java adalah keselamatan dan keamanan. Java tidak pernah memiliki fasilitas dan keamanan yang tidak aman sampai perlu ditangani secara khusus untuk pengamanannya.

Oleh karena itu, program Java tidak dapat memanggil fungsi-fungsi global dan memperoleh akses ke berbagai sumber dalam sistem karena terdapat sejumlah pengawasan yang dilakukan oleh program Java yang tidak dapat dilakukan oleh sistem lain.

3. Berorientasi Objek

Java tidak diturunkan bahasa pemrograman manapun, juga sama sekali tidak kompatibel dengan semuanya. Hal ini dikarenakan adanya kebebasan dalam rancangan maka dipilih pendekatan yang jelas berguna, dan pragmatis. Modul objek Java adalah sederhanadan mudah dikembangkan namun sejalan dengan itu, bilangan dan tipe data sederhana lain dianggap sebagai non objek berkinerja tinggi.

Kebanyakan sistem berorientasi objek lain memilih hirarki objek yang kaku dan susah diatur atau memilih menggunakan model objek dinamik yang tidak memiliki kinerja tinggi dan kelengkapan . Java sekali lagi memiliki keseimbangan yang menyediakan mekanisme peng-class-an sederhana dengan model antarmuka dinamik yang intuitif hanya jika diperlukan. Memahami gaya pemrograman berorientasi objek sangat penting dan membantu mempelajari bagaimana membuat program dengan Java.


4. Kokoh

Java membatasi anda dengan memberi beberapa kunci supaya anda dapat menemukan kesalahan lebih cepat saat mengembangkan program. Dengan demikian, anda tidak perlu mencemaskan banyaknya penyebab kesalahan pemrograman yang banyak terjadi pada bahasa lain.

Java langsung memeriksa program saat anda menuliskannya dan sekali lagi program akan dijalankan. Banyaknya kesalahan yang susah dilacak dan situasi jalannya program yang tidak dapat diulangi dapat dibuat secara sederhanadengan Java. Kemampuan untuk memastikan apa yang telah kita tulis akan berjalan semestinya dalam kondisi apapun adalah salah satu kemampuan penting Java.

5. Interaktif

Java dirancang memenuhi kebutuhan dunia nyata menciptakan program jaringan yang interaktif. Kebanyakan sistem mengalami kesulitan menangani interaktivitas dan jaringan sekaligus.

Java memiliki beberapa kemampuan yang memungkinkan program melakukan beberapa hal pada saat bersamaan tanpa harus kesulitan menangani proses yang akan terjadi selanjutnya permasalahan dalam melakukan beberapa hal sekaligus pada satu waktu adalah dalam menyelaraskan bagian-bagian yang saling mempengaruhi.

Ini seringkali sangat memusingkan programmer yang mengerjakannya tanpa alat yang tepat. Jalannya program Java telah dilengkapi dengan pemecahan yang luar biasa untuk sinkronisasi beberapa proses sekaligus dan memungkinkan pembuatan sistem yang interaktif yang berjalan dengan halus. Jalinan program-program java yang mudah digunakan memungkinkan kita untuk memikirkan pembuatan perilaku khusus tanpa harus mengintegrasikan perilaku tersebut dengan model pemrograman global yang mengatur perulangan kejadian.

6. Netral Terhadap Berbagai Arsitektur

Hal yang lebih penting daripada perang antara PC dengan Mac adalah masalah pengenalan dan portabilitas program. Jika anda hari ini menulis pengenalan dan portabilitas program. Jika anda hari ini menulis sebuah program tidak ada jaminan program tersebut akan jalan besok, bahkan di mesin yang sama. Sistem operasi berubah, prosessor berubah dan perubahan dalam inti sistem semuanya dapat bersekongkol membuat program tidak dapat berjalan.

Para perancang Java telah mengambil beberapa keputusan yang sulit dalam pembuatan bahasa Java dan bagaimana program dijalankan . Jadi anda dapat sepenuhnya percaya "tulis sekali, jalan di mana saja, kapan saja dan selamanya". Anda mungkin cemas ketika menulis sebuah program tetapi java akan meyakinkan bahwa program akan berjalan di Macintosh, PC, UNIX dan apapun platform yang akan muncul di masa yang akan datang.

7. Terinterpretasi dan Berkinerja Tinggi

Java melengkapi keajaiban lintas platform yang luar biasa dengan kompilasi ke dalam representasi langsung yang disebut kode-byte Java(Java byte code) yang dapat diterjemahkan oleh sistem apapun yang memiliki program Java di dalamnya. Kebanyakan sistem tersebut menawarkan keajaiban lintas platform ini terseok pada satu hal: kinerja. Sistem lain yang netral terhadap platform juga adalah sistem terinterpretasi misalnya BASIC, Tcl dan Perl.

Bahasa-bahasa ini jelas kekurangan kinerja. Java dirancang untuk tetap berkinerja baik pada CPU yang tidak terlalu kuat. Walaupun Java merupakan bahasa terinterpretasi, kode byte Java telah dirancang dengan hati-hati sehingga mudah diterjemahkan ke dalam bahasa asli suatu mesin untuk menghasilkan kinerja yang tinggi. Sistem program Java yang melakukan optimasi tepat waktu tersebut tidak kehilangan keuntungan dari program yang netral terhadap platform.

8. Mudah Dipelajari

Semua keuntungan tersebut saling berinteraksi untuk melayani kebutuhan bahasa pemrograman. Meskipun Java lebih rumit daripada bahasa scripting tetapi lebih sederhana untuk dipelajari dan ditulis dalam bahasa lain. Pada setiap tahap proses pemrograman anda akan terdorong oleh berkurangnya cacat-cacat yang mengejutkan dan perilaku yang tidak diharapkan.

Kemampuan bahasa ini terasa seperti cara alami untuk melakukan sesuatu dan mendorong terbentuknya gaya pemrograman yang baik.Karena model objek bersifat sederhana, anda akan cepat terbiasa dengan gaya pemrograman berorientasi objek. Anda akan mendapatkan keuntungan dari objek lebih cepat daripada jika dipaksakan menggunakan cara yang tidak alami
dan membingungkan.

Kekurangan

Kelemahan pada Java :

  • J2ME

membuat aplikasi J2ME adalah sebuah proses yang sangat susah, kita harus develop aplikasi sendiri, dengan API sendiri untuk setiap handset, secara dukungan handset atas J2ME tidak ada yang sama.

  • SWING

Sangat lambat, API nya membingungkan, dan tampilanya sangat berbeda dengan environment yang ada. Coba aja, bikin aplikasi di Swing untuk membuat tray icon di windows.

  • XML

kalau anda membuat aplikasi J2EE,anda harus selalu ngedit file bla2.xml, ini menambah waktu pengerjaan.

  • Mudah didekompilasi

Dekompilasi yaitu sebuah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan direverse-engineer dengan kata lain yaitu dibajak.

  • Menggunakan memori yang cukup banyak

Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal.




0 komentar:

Posting Komentar

Template by:
Free Blog Templates