Sejarah Netbeans
NetBeans mengacu pada dua hal, yakni platform untuk pengembangan aplikasi desktop java, dan sebuah Integrated Development Environment (IDE) yang dibangun menggunakan platform NetBeans.
Platform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat lunak moduler yang disebut ‘modul’. Sebuah modul adalah suatu arsip Java (Java archive) yang memuat kelas-kelas Java untuk berinetraksi dengan NetBeans Open API dan file manifestasi yang mengidentifikasinya sebagai modul. Aplikasi yang dibangun dengan modul-modul dapat dikembangkan dengan menambahkan modul-modul baru. Karena modul dapat dikembangkan secara independen, aplikasi berbasis platform NetBeans dapat dengan mudah dikembangkan oleh pihak ketiga secara mudah dan powerful.
Aplikasi dapat menginstal modul secara dinamis. Aplikasi dapat memasukkan modul Update Center untuk mengijinkan pengguna aplikasi men-download digitally-signed upgrade dan fitur-fitur baru secara langsung ke dalam aplikasi yang berjalan. Penginstalan kembali sebuah upgrade atau rilis baru tidak memaksa pengguna untuk men-download keseluruhan aplikasi lagi.
Platform NetBeans menawarkan layanan-layanan yang umum bagi aplikasi desktop, mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap aplikasi. Fitur-fitur yang disediakan oleh platform NetBeans:
Versi terbaru saat ini adalah NetBeans IDE 5.5.1 yang dirilis Mei 2007 mengembangkan fitur-fitur Java EE yang sudah ada (termasuk Java Persistence support, EJB-3 dan JAX-WS). Sementara paket tambahannya, NetBeans Enterprise Pack mendukung pengembangan aplikasi perusahaan Java EE 5, meliputi alat desain visual SOA, skema XML, web service dan pemodelan UML. NetBeans C/C++ Pack mendukung proyek C/C++.
Modularitas: Semua fungsi IDE disediakan oleh modul-modul. Tiap modul menyediakan fungsi yang didefinisikan dengan baik, seperti dukungan untuk bahasa pemrograman Java, editing, atau dukungan bagi CVS. NetBeans memuat semua modul yang diperlukan dalam pengembangan Java dalam sekali download, memungkinkan pengguna untuk mulai bekerja sesegera mungkin. Modul-modul juga mengijinkan NetBeans untuk bisa dikembangkan. Fitur-fitur baru, seperti dukungan untuk bahasa pemrograman lain, dapat ditambahkan dengan menginstal modul tambahan. Sebagai contoh, Sun Studio, Sun Java Studio Enterprise, dan Sun Java Studio Creator dari Sun Microsystem semuanya berbasis NetBeans IDE.
NetBeans Mobility Pack dapat digunakan untuk menulis, menguji, dan debugging aplikasi untuk perangkat bergerak yang menggunakan teknologi berplatform Java Micro Edition (platform Java ME). Paket ini mengintegrasikan dukungan terhadap Mobile Information Device Profile (MIDP) 2.0, Connected Limited Device Configuration (CLDC) 1.1, dan Connected Device Configuration (CDC). Emulator dari pihak ketiga dapat diintegrasikan dengan mudah untuk lingkungan pengujian yang lebih kokoh. NetBeans Mobility Pack saat ini tersedia dalam dua klaster yang berbeda, yang satu memuat CDC dan yang lainnya CLDC.
Profiler ini berdasarkan sebuah proyek riset Sun Laboratories yang dahulu bernama Jfluid. Riset tersebut mengungkap teknik tertentu yang dapat digunakan untuk menurunkan overhead proses profiling aplikasi Java. Salah satu dari teknik tersebut adalah instrumentas i kode byte dinamis, yang berguna untuk profiling aplikasi Java yang besar. Dengan menggunakan instrumentasi kode byte dinamis dan algoritma-algoritma tambahan, Netbeans Profiler mampu mendapatkan informasi runtime aplikasi yang terlalu besar atau kompleks bagi profiler lain. NetBeans IDE 6.0 akan mendukung Profiling Point yang memungkinkan kita memprofilkan titik yang tepat dari eksekusi dan mengukur waktu eksekusi.
Enterprise Pack ini mengembangkan kemampuan untuk menulis, menguji, dan debug aplikasi dengan arsitektur berorientasi layanan (Service-Oriented Architecture) menggunakan XML, BPEL, dan Java web service. Paket ini menambahkan alat desain visual untuk pemodelan UML, skema XML, dan web service orchestration, juga dukungan untuk web service dengan menggunakan identitas yang aman. Paket ini juga menginstal dan mengkonfigurasi runtime yang diperlukan, termasuk mesin BPEL dan server manajemen identitas yang terintegrasi dengan Sun Java System Application Server.
Ruby Pack memasukkan fungsionalitas editor seperti:
Platform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat lunak moduler yang disebut ‘modul’. Sebuah modul adalah suatu arsip Java (Java archive) yang memuat kelas-kelas Java untuk berinetraksi dengan NetBeans Open API dan file manifestasi yang mengidentifikasinya sebagai modul. Aplikasi yang dibangun dengan modul-modul dapat dikembangkan dengan menambahkan modul-modul baru. Karena modul dapat dikembangkan secara independen, aplikasi berbasis platform NetBeans dapat dengan mudah dikembangkan oleh pihak ketiga secara mudah dan powerful.
Sejarah
Pengembangan NetBeans diawali dari Xelfi, sebuah proyek mahasiswa tahun 1997 di bawah bimbingan Fakultas Matematika dan Fisika Universitas Charles, Praha. Sebuah perusahaan kemudian dibentuk untuk proyek tersebut dan menghasilkan versi komersial NetBeans IDE hingga kemudian dibeli oleh Sun Microsystem pada tahun 1999. Sun kemudian menjadikan NetBeans open source pada bulan Juni tahun 2000. Sejak itu komunitas NetBeans terus berkembang.Platform NetBeans
Platform NetBeans adalah framework yang dapat digunakan kembali (reusable) untuk menyederhanakan pengembangan aplikasi desktop. Ketika aplikasi berbasis platform NetBeans dijalankan, kelas Main dari platform dieksekusi. Modul-modul yang tersedia ditempatkan di sebuah registry di dalam memori, dan tugas startup modul dijalankan. Secara umum, kode modul dimuatkan ke dalam memori hanya ketika ia diperlukan.Aplikasi dapat menginstal modul secara dinamis. Aplikasi dapat memasukkan modul Update Center untuk mengijinkan pengguna aplikasi men-download digitally-signed upgrade dan fitur-fitur baru secara langsung ke dalam aplikasi yang berjalan. Penginstalan kembali sebuah upgrade atau rilis baru tidak memaksa pengguna untuk men-download keseluruhan aplikasi lagi.
Platform NetBeans menawarkan layanan-layanan yang umum bagi aplikasi desktop, mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap aplikasi. Fitur-fitur yang disediakan oleh platform NetBeans:
- Manajemen antarmuka (misal: menu & toolbar)
- Manajemen pengaturan pengguna
- Manajemen penyimpanan (menyimpan dan membuka berbagai macam data)
- Manajemen jendela
- Wizard framework (mendukung dialog langkah demi langkah)
NetBeans IDE
NetBeans IDE adalah IDE open source yang ditulis sepenuhnya dengan bahasa pemrograman Java menggunakan platform NetBeans. NetBeans IDE mendukung pengembangan semua tipe aplikasi Java (J2SE, web, EJB, dan aplikasi mobile). Fitur lainnya adalah sistem proyek berbasis Ant, kontrol versi, dan refactoring.Versi terbaru saat ini adalah NetBeans IDE 5.5.1 yang dirilis Mei 2007 mengembangkan fitur-fitur Java EE yang sudah ada (termasuk Java Persistence support, EJB-3 dan JAX-WS). Sementara paket tambahannya, NetBeans Enterprise Pack mendukung pengembangan aplikasi perusahaan Java EE 5, meliputi alat desain visual SOA, skema XML, web service dan pemodelan UML. NetBeans C/C++ Pack mendukung proyek C/C++.
Modularitas: Semua fungsi IDE disediakan oleh modul-modul. Tiap modul menyediakan fungsi yang didefinisikan dengan baik, seperti dukungan untuk bahasa pemrograman Java, editing, atau dukungan bagi CVS. NetBeans memuat semua modul yang diperlukan dalam pengembangan Java dalam sekali download, memungkinkan pengguna untuk mulai bekerja sesegera mungkin. Modul-modul juga mengijinkan NetBeans untuk bisa dikembangkan. Fitur-fitur baru, seperti dukungan untuk bahasa pemrograman lain, dapat ditambahkan dengan menginstal modul tambahan. Sebagai contoh, Sun Studio, Sun Java Studio Enterprise, dan Sun Java Studio Creator dari Sun Microsystem semuanya berbasis NetBeans IDE.
Lisensi
Sejak Juli 2006, NetBeans IDE dilisensikan di bawah Common Development and Distribution License (CDDL), yaitu lisensi yang berbasis Mozilla Public License (MPL).Paket-Paket Tambahan NetBeans IDE
NetBeans Mobility Pack
NetBeans Mobility Pack adalah alat untuk mengembangkan aplikasi yang berjalan pada perangkat bergerak (mobile), umumnya telepon seluler, tetapi juga mencakup PDA, dan lain-lain.NetBeans Mobility Pack dapat digunakan untuk menulis, menguji, dan debugging aplikasi untuk perangkat bergerak yang menggunakan teknologi berplatform Java Micro Edition (platform Java ME). Paket ini mengintegrasikan dukungan terhadap Mobile Information Device Profile (MIDP) 2.0, Connected Limited Device Configuration (CLDC) 1.1, dan Connected Device Configuration (CDC). Emulator dari pihak ketiga dapat diintegrasikan dengan mudah untuk lingkungan pengujian yang lebih kokoh. NetBeans Mobility Pack saat ini tersedia dalam dua klaster yang berbeda, yang satu memuat CDC dan yang lainnya CLDC.
NetBeans Profiler
NetBeans Profiler adalah alat untuk mengoptimalkan aplikasi Java, membantu menemukan kebocoran memori dan mengoptimalkan kecepatan.Profiler ini berdasarkan sebuah proyek riset Sun Laboratories yang dahulu bernama Jfluid. Riset tersebut mengungkap teknik tertentu yang dapat digunakan untuk menurunkan overhead proses profiling aplikasi Java. Salah satu dari teknik tersebut adalah instrumentas i kode byte dinamis, yang berguna untuk profiling aplikasi Java yang besar. Dengan menggunakan instrumentasi kode byte dinamis dan algoritma-algoritma tambahan, Netbeans Profiler mampu mendapatkan informasi runtime aplikasi yang terlalu besar atau kompleks bagi profiler lain. NetBeans IDE 6.0 akan mendukung Profiling Point yang memungkinkan kita memprofilkan titik yang tepat dari eksekusi dan mengukur waktu eksekusi.
NetBeans C/C++ Pack
NetBeans C/C++ Pack menambahkan dukungan terhadap pengembang C/C++ ke NetBeans IDE 5.5. Paket ini memperbolehkan pengembang menggunakan sekumpulan kompiler dan alat sendiri bersama dengan NetBeans IDE untuk membangun aplikasi native untuk MS Windows, Linux, dan Solaris. Paket ini membuat editor mengenali bahasa C/C++ dan menyediakan project template, browser kelas yang dinamis, dukungan pembuatan file dan fungsionalitas debugger. Para pengembang juga dapat mengembangkan paket tersebut dengan fungsionalitas tambahan mereka sendiri.NetBeans Enterprise Pack
NetBeans Enterprise Pack memperluas dukungan terhadap pengembangan aplikasi perusahaan dan web service di NetBeans IDE 5.5.Enterprise Pack ini mengembangkan kemampuan untuk menulis, menguji, dan debug aplikasi dengan arsitektur berorientasi layanan (Service-Oriented Architecture) menggunakan XML, BPEL, dan Java web service. Paket ini menambahkan alat desain visual untuk pemodelan UML, skema XML, dan web service orchestration, juga dukungan untuk web service dengan menggunakan identitas yang aman. Paket ini juga menginstal dan mengkonfigurasi runtime yang diperlukan, termasuk mesin BPEL dan server manajemen identitas yang terintegrasi dengan Sun Java System Application Server.
NetBeans Ruby Pack
Versi NetBeans 6.0 mendatang akan mengijinkan pengembangan IDE menggunakan Ruby dan Jruby, sebagaimana Rails untuk dua implementasi Ruby yang lain. Preview NetBeans Ruby Pack tersedia sejak rilis Milestone 7 NetBeans 6.Ruby Pack memasukkan fungsionalitas editor seperti:
- pengeditan dasar
- pewarnaan sintaks untuk Ruby
- pelengkapan kode
- occurence highlighting
- pop-up dokumentasi yang terintegrasi untuk pemanggilan Ruby API
- analisis semantik dengan highlighting parameter dan variabel lokal yang tidak terpakai
NetBeans JavaScript Editor
NetBeans JavaScript Editor menyediakan perluasan dukungan terhadap JavaScript dan CSS. Fitur-fiturnya antara lain:- Editor JavaScript
- syntax highlighting
- pelengkapan kode untuk objek dan fungsi native
- semua fitur dalam editor NetBeans
- pembuatan kerangka kelas JavaScript secara otomatis
- pembuatan pemanggilan AJAX dari template
- Ekstensi editor CSS
- pelengkapan kode untuk nama-nama style
- navigasi cepat melalui panel navigator
- penampilan deklarasi aturan CSS di List View
- penampilan struktur file di Tree View
- mengurutkan outline view berdasarkan nama, tipe, atau urutan deklarasi (List & Tree)
- pembuatan deklarasi aturan (hanya Tree)
- pemfaktoran kembali sebagian nama rule (hanya Tree)
Lokalisasi
Sejak Januari 2007, paket bahasa Cina yang disederhanakan, Cina tradisional, Jerman, Jepang, Portugal (Brazil) dan Spanyol telah tersedia untuk NetBeans 5.5.1. Sementara itu, paket bahasa Albania, Azerbaijan, Ceska, Belanda, Yunani, Indonesia, Italia, dan Swedia sedang dalam proses pengerjaan.Referensi
Posted in Netbeans. Leave a Comment »
Netbeans
November 25, 2007 — ka2qApa itu NetBeans?
NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra (dan terus bertambah!). Sun Microsystems mendirikan proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama. Saat ini terdapat dua produk : NetBeans IDE dan NetBeans Platform.
The NetBeans IDE adalah sebuah lingkungan pengembangan – sebuah kakas untuk pemrogram menulis, mengompilasi, mencari kesalahan dan menyebarkan program. Netbeans IDE ditulis dalam Java – namun dapat mendukung bahasa pemrograman lain. Terdapat banyak modul untuk memperluas Netbeans IDE. Netbeans IDE adalah sebuah produk bebas dengan tanpa batasan bagaimana digunakan.Tersedia juga NetBeans Platform; sebuah fondasi yang modular dan dapat diperluas yang dapat digunakan sebagai perangkat lunak dasar untuk membuat aplikasi desktop yang besar. Mitra ISV menyediakan plug-in bernilai tambah yang dapat dengan mudah diintegrasikan ke dalam Platform dan dapat juga digunakan untuk membuat kakas dan solusi sendiri.
Kedua produk adalah kode terbuka (open source) dan bebas (free) untuk penggunaan komersial dan non komersial. Kode sumber tersedia untuk guna ulang dengan lisensi Common Development and Distribution License (CDDL).
Posted in Netbeans. Leave a Comment »
Cerita tentang Java IDE dan Netbeans
November 25, 2007 — ka2q Berawal dari artikel Frans Thamura soal Netbeans di infolinux edisi juni 2004 yang kebetulan diposting di ilmukomputer.com. Sudah lama sekali umur artikel ini, nyaris tiga tahun namun tetap tidak kehilangan relevansinya. Yang menarik dari artikel ini adalah cerita frans yang panjang lebar tentang berbagai macam IDE java.Frans banyak membahas tentang perkembangan desktop application technology dimana terjadi “perang” antara IBM dan Sun. IBM menelorkan sendiri teknologi java desktop yang disebut SWT (Standard Widget Toolkit) gara-gara sun tidak merespon ajakan IBM untuk mengembangkan AWT lebih lanjut. SWT ini disebut-sebut lebih native dari teknologi windowing yang ada dalam Sun JDK, yaitu AWT, yang dibangun oleh Sun. SWT ini kemudian dijadikan teknologi dasar untuk menghasilkan library window toolkit IBM yang disebut JFace. Sun sendiri mengembangkan windowing library berdasarkan AWT menghasilkan Swing.
Aplikasi yang dibangun diatas teknologi SWT/JFace memerlukan resource lebih sedikit dibanding aplikasi yang dikembangkan dengan teknologi AWT/Swing. Namun SWT ini bukan teknologi standard, sehingga industri belum banyak mengadopsi SWT/JFace, frans menyebut hal ini sebagai keunggulan AWT/Swing di sisi “crecidential”-nya sebagai teknologi standard.
“Perang” antara AWT/Swing vs SWT/JFace berlanjut ke sisi yang lebih aplikatif, yaitu IDE Java yang dikembangkan berdasarkan masing-masing teknologi tersebut oleh IBM dan Sun. IBM mengembangkan Eclipse dan Sun mengembangkan Netbeans. Pada awalnya IBM mengembangkan project IDE dengan nama VisualAge sekitar tahun 1984, lama kelamaan dari project ini munculah project Eclipse untuk menggantikan VisualAge pada tahun 2001. Setelah Eclipse mendapatkan sambutan yang begitu besar di komunitas java, Sun mulai kebakaran jenggot dan berancang-ancang untuk mengembangkan produk IDE mereka. Untuk memotong waktu development agar tidak terlalu ketinggalan dibanding IBM, sun mengakuisisi Forte, editor java yang banyak digunakan komunitas dan mengembangkannya berdasarkan kebutuhan mereka sendiri.
Pada tahun 2003-2004 akhirnya IBM mengambil langkah yang sangat strategis untuk mempertahankan keberadaan Eclipse agar lebih bisa bertahan, yaitu dengan melepaskan kekuasaanya terhadap Eclipse kepada yayasan Eclipse Foundation. Dengan begitu Eclipse mempunyai posisi yang sangat bagus dari sudut pandang komunitas. Dengan adanya Eclipse Foundation maka perkembangan Eclipse tidak lagi didikte oleh IBM, tetapi oleh Eclipse Foundation yang terdiri dari ratusan anggota. Struktur Eclipse Foundation yang demokratis membuat perusahaan-perusahaan lain tidak ragu-ragu untuk berinvestasi di lingkungan Eclipse, seperti Exadel dan MyEclipse, dua buah plugin eclipse yang sangat terkenal. Peristiwa penyerahan kekuasaan IBM atas Eclipse kepada Eclipse Foundation menyebabkan Eclipse mengadopsi Opensource Licence, menjadikan Eclipse IDE Java yang paling banyak digunakan oleh komunitas java developer.
Frans juga membahas beberapa IDE java lain yang ada pada tahun 2004, yaitu Borland JBuilder dan Oracle JDeveloper. Borland JBuilder adalah IDE java dari divisi software Developement IDE borland (sekarang dipisah menjadi perusahaan bernama CodeGear) yang bersifat komersial. Sedangkan JDeveloper dikembangkan oleh Oracle dengan membeli lisensi JBuilder dari borland pada tahun 1998 yang kemudian ditulis ulang dari awal pada tahun 2001 untuk mengikuti kebutuhan oracle versi 9i. Jadi JBuilder dan JDeveloper adalah sepupu dekat, bedanya adalah JDeveloper ini gratis tetapi tidak open, dan benar-benar dikhususkan untuk mengembangkan aplikasi berbasis framework dari Oracle, seperti Oracle Form dan ADF (Application Development Framework).
Sejarah Netbeans berawal dari sebuah kota klasik yang sangat indah yaitu Prague di Cekoslovakia. Disana ada sebuah perusahaan kecil yang sangat inovatif mengembangkan Java IDE berbasis AWT/Swing yang disebut Forte. Sun mengakuisisi Forte pada tahun 1999. Akuisisi ini menandakan Sun mulai serius menggarap pasar IDE komersial. Untuk melakukan counter attack terhadap langkah IBM meng-opensourcekan Eclipse, Sun melepaskan versi opensource dari Forte yaitu Netbeans
Pada jaman Sun dipimpin oleh Scott McNealy, divisi IDE ini cukup serius mengembangkan produk-produknya. Forte yang masih tetap berstatus komersial dikembangkan menjadi SunONE Studio dengan menambahkan kemampuan untuk mengembangkan aplikasi Java Enterprise (EJB), kemudian pada tahun 2003 dirubah lagi namanya menjadi Sun Java System.
Beberapa tahun kemudian munculah sebuah framework pengembangan aplikasi java enterprise yang disebut JSF. Pengembangan teknologi JSF dipimpin oleh Ed Burns. JSF menjadi teknologi standard Java untuk mengembangkan aplikasi web berbasis komponen, secara langsung ingin menyaingi teknologi ASP.NET-nya Microsoft. Sayangnya pada awal-awal perkembangannya, JSF tergantung sekali dengan IDE sebagai basis pengembangan aplikasi. Tanpa IDE, mengembangkan aplikasi berbasis JSF adalah “Sulit to ya!!”. Sun mengantisipasi ini dengan memecah Sun Java Studio menjadi dua produk, Sun Java Studio Creator dan Sun Java Studio Enterprise. Sun Java Studio Enterprise difokuskan untuk mengembangkan aplikasi berbasis EJB dan Sun Java Studio Creator difokuskan untuk mengembangkan aplikasi berbasis EJB dan JSF. Dengan teknologi JSF, kita bisa mengembangkan aplikasi Java berbasis Visual IDE seperti halnya Visual Studio for ASP.NET.
Netbeans sendiri mulai ada dari versi 3.51, versi ini tidak cukup intuitif dan masih banyak kelemahannya. Namun pada kenyataannya Netbeans masih jauh lebih banyak diadopsi oleh industri dan komunitas dibanding sepupunya SunONE Studio (pada waktu itu) yang komersial. Tetapi tetap saja tidak dapat menyaingi popularitas Eclipse yang semakin menjulang. Versi berikutnya dari Netbeans yaitu 4.1 juga masih belum bisa mendekati fungsionalitas dari Eclipse. Baru pada versi 5.0, sepertinya tim pengembang Netbeans membawa perubahan yang sangat signifikan terhadap Netbeans. Tampilanya sangat intuitif, wizardnya sangat lengkap dan tidak lagi merepotkan dengan konsep “mount-unmount” jaman dulu.
Pada tahun 2006 lalu, di Sun telah terjadi perpindahan kepemimpinan dari Scott McNealy kepada Jonathan Schwartz. Pergantian kepemimpinan ini membawa dampak besar terhadap divisi IDE dari Sun dan Java secara keseluruhan. Jonathan memutuskan untuk meng-opensourcekan seluruh jajaran IDEnya. Kebijakan ini dimulai dengan memindahkan feature Sun Java Creator dan Sun Java Enterprise sebagai Netbeans pack. Netbeans versi 5.5 merupakan langkah awal proses pemindahan ini, dimana terdapat Netbeans Enterprise Pack sebagai wujud baru dari Sun Java Studio Enterprise dan Netbeans Visual Web Pack sebagai reinkarnasi dari Sun Java Studio Creator.
Proses perpindahan semua divisi IDE Sun ke dalam Netbeans berlangsung bertahap, dalam Netbeans versi 5.5 ini feature yang dipindahkan masih berkisar di angka 70%-80%, nantinya semua feature Sun Java Studio Creator dan Sun Java Studio Enterprise akan 100% dipindahkan ke Netbeans pada versi Netbeans 6.0. Tapi perkembangan Netbeans tidak terbatas pada perpindahan feature dari kedua sepupunya ini saja, Netbeans sendiri mempunyai tiga buah pack lainnya, yaitu C/C++ Development pack, Mobility pack dan Netbeans Profiler.
Waktu terus berjalan, IDE bertumbangan, Netbeans mulai mendapatkan momentumnya. Pada saat ini, survivor dari perang IDE menyisakan tiga buah IDE saja : Netbeans, Eclipse dan IntelijIDEA. Ketiganya mengusung keunggulan masing-masing sehingga industri dan komunitas tetap menggunakan mereka sebagai IDE pengembangan aplikasi java. Jacek Furmankiewicz membahas secara lengkap perbandingan ketiga IDE ini dalam artikel “The Survivor of Java IDE War”, Roman Strobl membahas mengenai artikel tersebut di sini.
Eclipse masih memimpin market share Java IDE, sebagai pemimpin dalam jangka waktu yang begitu panjang, rasanya susah membayangkan Eclipse akan berkurang pemakainya, apalagi menghilang. Project-project dan plugin eclipse sangat baanyak sekali, nyaris semua framework dari komunitas mempunyai plugin eclipse, seperti SpringIDE, JBossIDE dan Hibernate Plugin. Bisa dibilang kalau anda bekerja dengan frameowrk non standard dari komunitas pakailah eclipse. Eclipse juga terkenal karena kecepatannya dan efisiensi pemakaian memory, hal ini tentu saja karena Eclipse menggunakan SWT/JFace.
Sayangnya module Eclipse terpisah-pisah dalam beberapa top project, ada WTP, DTP, BIRT, TPTP, VE. Untuk menginstall module-module tersebut kita memerlukan beberapa library lain seperti GEF dan GMF . Ini merupakan kendala yang tidak gampang diatasi untuk java newbie yang ingin cepat-cepat belajar java. Semisal kita ingin belajar aplikasi desktop java dan web java, maka kita harus menginstall JDK kemudian Eclipse plus WTP dan VE. Kemudian WTP dan VE masih memerlukan library EMF-SDO-XSD, GEF, dan DTP, lumayan ribet.
Paket Eclipse + WTP + VE mempunyai fasilitas yang setara dengan Netbeans 5.5 sendiri tanpa adanya tambahan dari Netbeans Pack sama sekali. Sedangkan Netbeans + Netbeans Pack akan setara dengan Eclipse + MyEclipse, dimana MyEclipse ini harganya $30!. Eclipse menyadari kendala ini dan mengeluarkan distro Eclipse, Eclipse yang sudah dibundle dengan beberapa solusi dari vendor, semisal EasyEclipse yang membundle eclipse callisto untuk tujuan spesifik, ada distribusi untuk development Java, python, apache-mysql-PHP dan C/C++. Callisto yang membundle eclipse + 10 buah project lain dalam satu package distribusi, sehingga user tidak perlu lagi repot-repot mendownload eclipse dan project lain sendiri-sendiri.
IntelijIDEA menjadi satu-satunya java IDE komersial yang masih bertahan sampai sekarang, faktor utama keberhasilan dari IntelijIDEA adalah ketelitian hingga ke sedetail-detailnya. Saya pernah mencoba IntelijIDEA versi 5.0.2, tampilanya oke banged, dan menurut pemakai setianya, IntelijIDEA mempunyai fitur yang sangat lengkap sampai ke detail-detailnya. Dukungan IntelijIDEA terhadap framework java standard keluran sun dan JCP maupun framework non standard dari kominitas sangat memuaskan.
Module default dalam Netbeans 5.5 sudah sangat cukup untuk memulai belajar java. Dalam beberapa kesempatan di milis JUG-Indonesia pernah dibahas kemudahan belajar java menggunakan Netbeans. Berikut ini komentar anggota milis JUG tentang Netbeans sebagai IDE terintegrasi untuk memulai belajar java :Samuel Franklyn mengatakan : “Kalau untuk pemula aku lebih menganjurkan pakai NetBeans. Soal rakus memory dan lambat secara keseluruhan aku rasa itu tidak benar. Yang aku anggap benar adalah editor Java di NetBeans masih kalah canggih dan kalah cepat dibandingkan Eclipse. Tapi ini diimbangi dengan kemudahan melakukan debugging dan integrasi yang lebih erat dengan Tomcat. Kalau pakai NetBeans nggak perlu download plugins kesana kemari. Cukup download dan pasang pack yang sesuai”
Hendro Steven, dosen sebuah universitas swasta di solo mengatakan : “Di kampus gw juga udah kurikulum java sejak tahun 2003, nah dari tahun 2003 itu gw ngajar udah gonta ganti IDE mulai dari Kawa pro kemudian ganti SyncJedit terus JBuilder lalu Eclipse dan akhirnya gw pilih Netbeans itu juga sejak netbeans 4.1 karena sebelumnya Netbeans kurang bagus. Kenapa gw milih netbeans sebenarnya karena semua udah all in one alias gak perlu repot2 cari2 plugin lagi. memang sih masih kalah cepat dari eclipse tapi bagi pemula (mahasiswa yg baru mulai belajar) eclipse ngerepotin katanya. selain itu masalah kecepatan gak lagi jadi masalah dilab gw karena semua pc udah 1GB ramnya hehehe terus dari sisi pengajar alias dosen alias gw,.. gw jadi lebih kosentrasi ngajar javanya dan bukan cara menggunakan IDE. Dengan Netbeans, khususnya v5.5 semua jadi mudah, gw tinggal ngajarin konsepnya terus demo dengan netbeans wus..wus!! semua yang ngerepotin beres oleh netbeans, nah baru setelah itu dijelaskan deh apa yang terjadi dibelakangnya alias kalo buat manual. so dalam 1 semester gw bisa selesaiin ngajar semua materi dan tidak buang2 waktu ngajarin penggunaan IDE Tapi tentunya ini berdasarkan pengalaman dikampus gw dan pasti akan berbeda-beda dikampus lain (tergantung dosen n mahasiswanya kali!)”
Keunggulan lain tentu saja adanya lima buah Netbeans pack yang sangat memudahkan development java atau C/C++. Di Netbeans 6.0 milestone 8 sekarang ini malah sudah ada Ruby IDE di dalam Netbeans. Bersama dengan project shcliemann Netbeans mempunyai ambisi yang sangat besar yaitu menjadi IDE untuk semua bahasa pemrograman yang bersifat terbuka, seperti python, php, perl, javascript, ruby dan sebagainya. Yang lebih heboh lagi adalah semuanya berlisensi Opensource yang tidak perlu membayar.
Karena Netbeans dikembangkan oleh team dari Sun, dukungan Netbeans terhadap framework standard keluaran Sun dan JCP termasuk “first class”. Netbeans adalah salah satu IDE pertama yang mendukung Java EE 5. Bersama GlassFish (versi opensource dari Sun Java Application Server) Netbeans menjadi IDE yang sangat lengkap untuk mengembangkan aplikasi berbasis EJB3. Rafael Vanoni membuat list “lima alasanya menggunakan netbeans”, list ini dibuat sekitar bulan maret 2007, sehingga masih sangat relevan dengan feature netbeans sekarang ini.
Matisse GUI builder memungkinkan pengembangan aplikasi java desktop menggunakan vusial GUI designer. Matisse memanfaatkan Group layout yang dikembangkan oleh swing engineer untuk menjadi fondasi layouting bagi aplikasi Swing. Dengan adanya Matisse kita bisa mengucapkan selamat tinggal cara lama membuat aplikasi swing, yaitu dengan mengetik satu-satu proses layouting dan pembuatan komponen GUI. Matisse memotong nyaris 90% waktu yang digunakan untuk membuat layout aplikasi swing di masa lalu. Sangat mudah dan menyenangkan .
Gambar 1. Matisse GUI Builder
Netbeans Mobility Pack bersama Matisse GUI builder adalah mahkota netbeans, dua module ini menjadi feature yang banyak dicari user dan tidak ada IDE lainya yang mempunyai feature sebagus ini. Development Java ME menggunakan Mobility Pack sangat mudah dan menyenangkan, Netbeans menyediakan komponen yang dapat ditambahkan dengan mudah. Flow Editor memudahkan user untuk merancang “aliran” aplikasi Java ME secara visual, hanya perlu operasi drag-n-drop sederhana untuk merancang “aliran” aplikasi Java ME. Dalam beberapa kesempatan, terutama dari form pendaftaran Nectar, sebagian besar peserta menjawab pertanyaan “Netbeans dugunakan untuk?” dengan jawaban “Develop Aplikasi Java ME” atau “Develop aplikasi Java Desktop”.
Gambar 2. Netbeans Mobility Pack — pengembangan aplikasi Java EE menjadi mudah
Beberapa waktu lalu diluncurkan Netbeans Mobility Pack untuk CDC (Connected Device Configuration) yang memungkinkan aplikasi berbasis Swing berjalan diatas gadget. Feature inovative lain yang ada dalam Netbeans Mobility Pack adalah SVG (Scallable Vector Graphic), SVG memungkinkan grafik diresize tanpa kehilangan akurasi gambar, seperti blur atau pecah-pecah. Kemampuan resize SVG yang hebat ini disebabkan karena sebenarnya SVG adalah file XML biasa, yang berisi tentang definisi dari gambar tersebut, seperti kurva atau warna. Kemudian gambar SVG akan dirender dalam runtime oleh SVG generator, seperti framwork Apache Batik. Jika anda tertarik dengan SVG, anda akan tertarik untuk mengevaluasi Sketsa, SVG editor yang dikembangkan oleh Kiyut pimpinan Tonny Kohar.
Netbeans Enterprise Pack digunakan untuk mengembangkan aplikasi Java EE dan aplikasi berbasis SOA. Kita bisa membuat bussiness process menggunakan BPEL secara visual. Selain itu kita juga dapat membuat WSDL dan XML Schema secara visual. Semua kebutuhan untuk mengembangkan aplikasi berbasis SOA telah terbundle secara lengkap di dalam Netbeans Enterprise Pack. Sun Java Application Server(SJAS) juga secara otomatis terinstal bersama Netbeans Enterprise Pack ini.
Gambar 3. BPEL Visual Editor
UML Designer juga merupakan bagian dari Netbeans Enterprise Pack untuk memudahkan desain aplikasi berbasis OOP. Cukup dengan membuat design UMLnya kita bisa mengenerate class java secara otomatis. Proses ini mengurangi waktu yang diperlukan untuk mendesign API dari aplikasi yang akan kita kembangkan. Proses ini sangat diperlukan jika nantinya aplikasi akan dikembangkan dalam tim yang berukuran cukup besar, anggota tim tidak perlu repot-repot harus membaca coding temenya untuk mengetahui API atau arsitektur dari aplikasi. Cukup dengan melihat UML maka anggota tim dengan mudah dapat memahami arsitektur aplikasi. UML designer juga memungkinkan adanya proses reverse engineering dari kode yang sudah dibuat untuk menghasilkan UML Class Diagram.
Gambar 4. UML Visual Designer
Netbeans Visual Web Pack memungkinkan pengembangan aplikasi berbasis Java EE 5 dengan ditambah fungsionalitas dari JSF-AJAX. Pack ini memungkinkan kita mendevelop aplikasi web secara visual menggunakan operasi drag-n-drop. Banyak sekali komponen JSF yang sudah dilengkapi dengan kemampuan AJAX siap digunakan hanya dengan melakukan drag-n-drop, sederhana.
Roman Strobl membuat sebuah artikel lengkap tentang Apakah Netbeans visual web pack untuk kita? dalam blognya, artikel ini akan memberikan gambaran lumayan lengkap apa yang Netbeans bisa dan apa yang Netbeans tidak bisa.
Gambar 5. Netbeans Visual Web Pack — Membuat aplikasi web secara visual
Feature databinding memungkinkan kita mengambil komponen table dari database dan meletakkan kedalam komponen JSF, secara otomatis table tersebut dibind dengan komponen JSF tersebut. Tidak hanya table, kita juga bisa mendefinisikan query yang melakukan join untuk kemudian di-bind dengan komponen JSF secara otomatis. Query yang dibuat pun dapat digenerate dari feature visual query editor. Visual Web Pack juga mempunyai editor CSS yang canggih yang memungkinkan kita membuat CSS file untuk mendekorasi komponen JSF. AJAX komponen juga tersedia dalam pack ini, kita bisa menggunakan AJAX komponen untuk membuat aplikasi menjadi jauh lebih interaktif mengikuti paradigma Web
2.0.
Gambar 6. Visual Query Editor
Netbeans Profiler sudah tersedia semenjak versi 4.1, kita dapat memonitor penggunaan CPU maupun penggunaan memory menggunakan netbeans profiler. Dalam versi 5.5, netbeans profiler dilengkapi dengan kemampuan melakukan profiling terhadap aplikasi Java EE, tidak hanya Java SE. Tidak seperti profiler lain, kita bisa mendefinisikan bagian mana saja yang akan diperiksa, sehingga Netbeans profiler dapat melakukan pekerjaanya secara efisien dan tepat sasaran. Dengan Netbeans Profiler kita dapat : Memonitor aplikasi, menganalisis performance, menganalisis sebagian kode program, penggunaan memori dan custom profiling. Jika anda pekerjaan anda berfokus pada optimisasi aplikasi, pack ini bisa menjadi “aji pamungkas” untuk menyelesaikan tugas anda.
Gambar 7. Netbeans Profiler — profiling dan optimisasi aplikasi
Netbeans C/C++ Pack, dengan pack ini anda dapat mendownload source code JDK dan mencoba untuk mengcompilenya, Roman Strobl menyediakan tutorial jika anda berminat untuk membongkar-bongkar kode sumber JDK dan mencoba mengcompilenya. Pack ini menggunakan makefile untuk mengelola siklus pengembangan aplikasi C/C++. Di linux pack ini berjalan sempurna dengan adanya GCC dan Makefile, sedangkan di windows sedikit problematik, namun anda bisa mengikuti artikel dari komunitas netbeans diatas untuk menginstall C/C++ pack di lingkungan windows.
Gambar 8. Netbeans C/C++ Pack
Sun Web Development Pack digunakan untuk mengembangkan aplikasi berbasis AJAX, web service dan beberapa feature lain yang mendukung paradigma Web 2.0. Pack ini masih dalam pengembangan dan dalam masa uji coba (beta) dan memerlukan banyak feedback dari user. Walau belum masuk dalam jajaran Netbeans Pack, tetapi fasilitasnya sudah cukup banyak dan dapat berjalan sempurna di netbeans 5.5. Didalamnya terdapat beberapa sub module antara lain : jMaki, RESTfull Webservice dan Rome project. jMaki membundle banyak sekali komponen AJAX yang keren abis, seperti FishEye, yahoo map, google map dan lain sebagainya. RESTful web service merupakan arsitektur web service yang bersifat statless, sifat ini memungkinkan dihematnya bandwith selama proses komunikasi antara client dan server. Rome project ditujukan untuk membuat library pengolahan RSS feed seperti atom, rss dan lain sebagainya.
Jarvis adalah project yang dikembangkan oleh Toni Epple, Jarvis adalah Jasper report designer. Jarvis sedianya akan digunakan sebagai netbeans 6.0 module, namun sang pengembang menyatakan bahwa Jarvis bisa berjalan di netbeans 5.5, walaupun percobaan gw menginstall jarvis di netbeans 5.5 gagal
Gambar 9. Jarvis — Jasper report designer
Dengan adanya jarvis maka netbeans menjadi IDE yang terintegrasi menyediakan tools software development dari awal hingga akhir. Mulai dari mendesain aplikasi dengan menggunakan UML Designer, develop aplikasi desktop menggunakan Matisse, develop aplikasi enterprise menggunakan Enterprise pack, debug dan profiling aplikasi menggunakan profiler dan membuat report menggunakan Jarvis.
No comments:
Post a Comment