Membuat Program dengan C++ dan QT - Bebas
Membuat Program dengan C++ dan QT - Bebas
Membuat Program dengan C++ dan QT - Bebas
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
BISNIS<br />
Dreamware<br />
<strong>Membuat</strong> <strong>Program</strong><br />
<strong>dengan</strong> <strong>C++</strong> <strong>dan</strong> <strong>QT</strong><br />
Para pembuat program komputer di<br />
dunia MS Windows, tentu sudah<br />
mengenal pemrogaman visual atau<br />
GUI (Graphical User Interface), contohnya<br />
Visual Basic (VB), Visual <strong>C++</strong> <strong>dan</strong> Delphi.<br />
Ketiga contoh paket pemrograman itu tidak<br />
tersedia di Linux, meskipun ada beberapa<br />
pengganti atau alternatifnya. Visual Basic<br />
memiliki pengganti antara lain Phoenix <strong>dan</strong><br />
Gambas. Borland sebagai pembuat Delphi<br />
telah merilis Delphi di Linux <strong>dengan</strong> nama<br />
Kylix. Juga ada projek Mono di Linux untuk<br />
menggantikan Microsoft dotNet. Ada lagi<br />
beberapa alat pemrograman di Linux yang<br />
juga tersedia di Windows, misalnya Java, C,<br />
<strong>C++</strong>, Perl, PHP, <strong>dan</strong> lain-lain.<br />
Dreamware, salah satu dari segelintir<br />
perusahaan pengembang software berbasis<br />
Linux di Indonesia, memilih <strong>C++</strong> <strong>dan</strong><br />
<strong>QT</strong> sebagai alat pengembangan program.<br />
Untuk mengetahui lebih jauh apa latar belakang<br />
<strong>dan</strong> alasannya memilih bisnis berbasis<br />
Linux, <strong>C++</strong> <strong>dan</strong> <strong>QT</strong>, mengapa tidak memilih<br />
yang seperti VB, Delphi, <strong>dan</strong> dotNet,<br />
kami telah mewawancarai CEO Dreamware,<br />
Stefanus Wardoyo, <strong>dan</strong> Head of Research<br />
and Development Departement, Danny<br />
Kurniawan. Berikut rangkumannya.<br />
Alasan menerjuni dunia Linux<br />
“Dicanangkannya UU HaKI oleh peme rintah<br />
pada Juli 2003 membuat kami berpikiran<br />
jauh ke depan, bahwa dalam waktu dekat,<br />
trend IT akan berubah. Kalau dulu orang<br />
masih mennggunakan sistem operasi <strong>dan</strong><br />
program-program bajakan de ngan mudah,<br />
<strong>dengan</strong> diberlakukannya UU HAKI, sekarang<br />
sudah ada yang mengatur. Karena itu, kami<br />
mengangkat visi legalitas untuk software<br />
yang kami bangun,” jelas Stefanus Wardoyo.<br />
42<br />
INFOLINUX 02/2005<br />
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial<br />
Belum banyak perusahaan IT di Indonesia yang menekuni pemrograman visual di Linux.<br />
Dreamware, perusahaan yang bermarkas di Surabaya ini adalah salah satunya. Pilihannya<br />
jatuh ke <strong>C++</strong> <strong>dan</strong> librari <strong>QT</strong> yang juga merupakan dasar pengembangan KDE.<br />
Lebih jauh Stefanus menjelaskan, “Solusi<br />
legal ada banyak, bahkan menggunakan<br />
sistem operasi bukan Linux pun bisa legal.<br />
“Namun dilihat dari segi permodalan kami,<br />
kami menyadari bahwa kami tidak mampu<br />
membeli software-software untuk development<br />
yang mahal. Oleh karena itu, kami<br />
memutuskan untuk menggunakan Linux<br />
<strong>dan</strong> tool pemrograman yang open source.”<br />
“Karena visi tersebut, selama satu tahun<br />
kami melakukan riset mengenai tools apa<br />
<strong>dan</strong> bagaimana kami dapat membangun<br />
software <strong>dengan</strong> cara yang legal. Akhirnya,<br />
keluarlah beberapa solusi, <strong>dan</strong> <strong>dengan</strong> berbagai<br />
pertimbangan untuk saat ini kami<br />
menggunakan <strong>C++</strong> <strong>dan</strong> <strong>QT</strong> library untuk<br />
aplikasi GUI, <strong>dan</strong> ncurses untuk aplikasi<br />
CUI atau TUI (Command / Text User Interface),”<br />
ungkapnnya.<br />
Pilihan aplikasi <strong>dan</strong> hasil karyanya<br />
<strong>Program</strong> yang dikembangkan Dreamware<br />
saat ini hanya berjalan di atas sistem operasi<br />
Linux. Dreamware tidak hanya menggunakan<br />
<strong>C++</strong> <strong>dengan</strong> bantuan <strong>QT</strong> library<br />
untuk UI seperti apa a<strong>dan</strong>ya. Dreamware<br />
mengembangkan beberapa komponen tambahan<br />
untuk memudahkan bekerja. “Untuk<br />
konektivitas ke database, kami membuat<br />
komponen sendiri yang cara penggunaannya<br />
mirip <strong>dengan</strong> Delphi. Hanya saja belum<br />
ada fasilitas RAD (Rapid Application Development),<br />
semuanya masih mengetik secara<br />
manual. Komponen ini kami beri nama<br />
DreamLib (Delphi’s TConnection like), <strong>dan</strong><br />
DreamWidget (Delphi’s db Components<br />
like),” ungkap Stefanus.<br />
DreamWidget diturunkan dari objectobject<br />
<strong>QT</strong>, namun dikustomisasi agar dapat<br />
digunakan hampir sama seperti penggu-<br />
www.infolinux.web.id<br />
naan komponen db pada Delphi. Saat ini,<br />
komponen ini masih dalam versi 1, masih<br />
belum sempurna, <strong>dan</strong> belum mudah seperti<br />
yang diharapkan tim pengembang Dreamware.<br />
“DreamLib versi 1 ini kami berikan<br />
kepada komunitas open source, agar dapat<br />
digunakan <strong>dan</strong> dikembangkan oleh rekanrekan<br />
yang lain,” katanya.<br />
Source DreamLib ini dapat didownload<br />
dari http://www.dreamware.web.id/download.<br />
Daftar lengkap aplikasi yang digunakan<br />
Dreamware untuk membangun software<br />
adalah:<br />
KDevelop (sebagai IDE)<br />
<strong>QT</strong> Designer (sebagai UI Designer)<br />
PostgreSQL & pgAdmin3 (database)<br />
ReportMan (Report Builder)<br />
CVS & Cervisia (sebagai Version Controller)<br />
Alasan memilih <strong>C++</strong> <strong>dan</strong> <strong>QT</strong><br />
Danny Kurniawan menjelaskan bahwa selain<br />
alasan biaya <strong>dan</strong> legalitas, tim pengembang<br />
Dreamware memilih <strong>C++</strong> <strong>dan</strong> <strong>QT</strong> juga<br />
karena merasa kurang ‘sreg’ <strong>dengan</strong> aplikasi<br />
yang dikembangkan menggunakan VB atau<br />
yang sejenis. Sebab banyak keterbatasan<br />
Stefanus Wardoyo - CEO Dreamware.
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial<br />
Tim manajemen Dreamware.<br />
yang dimiliki oleh bahasa VB itu sendiri,<br />
terutama keterbatasan komponen.<br />
“Sehingga, kalau kami tetap menggunakan<br />
VB atau Gambas <strong>dan</strong> Phoenix di Linux,<br />
terpaksa kami harus mendevelop lebih banyak<br />
komponen dibandingkan apabila kami<br />
menggunakan <strong>QT</strong> seperti saat ini,” tutur<br />
Danny.<br />
Ketika ditanya mengapa tidak memilih<br />
Kylix sebagai pengganti Delphi, Danny<br />
mengungkapkan kekecewaannya terhadap<br />
Borland, perusahaan pembuat Delphi <strong>dan</strong><br />
Kylix. “Nampaknya Borland sendiri menghentikan<br />
pengembangan Kylix/Open Kylix,<br />
sehingga kami kok rasanya kurang melihat<br />
masa depan Kylix. Selain itu Kylix sendiri<br />
harganya juga tidak murah untuk sebuah<br />
RAD yang kurang mendapat perhatian utama<br />
dari Borland,” katanya.<br />
Bagaimana <strong>dengan</strong> Python dibandingkan<br />
<strong>C++</strong>? “Untuk pengembangan <strong>dengan</strong><br />
menggunakan bahasa Python, sementara<br />
ini kami belum melirik bahasa tersebut.<br />
Sebab selain Python lebih bersifat scripting<br />
la nguage, walaupun ada compiler Python<br />
yang bisa menjadikannya native binary,<br />
pengembangan komponen <strong>dengan</strong> menggunakan<br />
Python belum kami pelajari. Se<strong>dan</strong>gkan<br />
kami sebagian besar lebih familiar<br />
<strong>dengan</strong> bahasa pemrograman Delphi/Pascal<br />
<strong>dan</strong> C/<strong>C++</strong> ketimbang Python,” ungkap<br />
Danny.<br />
Menurut Danny, Dreamware juga pernah<br />
mencoba pengembangan <strong>dengan</strong> toolkit<br />
wxWindows-C/<strong>C++</strong>, namun nampaknya<br />
desain API (Application <strong>Program</strong>ming<br />
Interface) untuk wxWindows tidak murni<br />
<strong>C++</strong>, <strong>dan</strong> lebih mirip <strong>dengan</strong> WinAPI milik<br />
Windows. Dengan mempertimbangkan desain<br />
OOP (Object Oriented <strong>Program</strong>ming)<br />
milik <strong>QT</strong>, Dreamware cenderung memilih<br />
<strong>QT</strong> yang telah memiliki desain OOP <strong>dan</strong><br />
API yang jauh lebih baik.<br />
Hambatan bisnis <strong>dan</strong> tanggapan<br />
pelanggan<br />
Ada tiga jenis pelanggan yang dibidik<br />
Dreamware, yaitu perorangan, perusahaan<br />
<strong>dan</strong> semi perusahaan. Pelanggan perorangan<br />
<strong>dan</strong> semi perusahaan tidak mempermasalahkan<br />
penggunaan Linux <strong>dan</strong> open<br />
source, yang penting mereka dibantu instalasi<br />
<strong>dan</strong> konfi gurasinya.<br />
“Semi perusahaan yaitu perusahaan<br />
yang belum memiliki program sama sekali.<br />
Pelanggan model ini biasanya pasrah <strong>dengan</strong><br />
solusi yang kami tawarkan. Mereka tidak<br />
peduli, apakah under Linux atau Windows,<br />
yang penting mereka dapat menggunakannya.<br />
Masalah yang timbul hanyalah dalam<br />
melakukan migrasi dari MS Offi ce ke Open-<br />
Offi ce,” ungkap Stefanus.<br />
“Kami belum dapat masuk ke skala perusahaan<br />
besar, karena belum banyak yang<br />
percaya sepenuhnya <strong>dengan</strong> Linux, <strong>dan</strong> juga<br />
kami belum dapat membuktikan bahwa<br />
software under Linux yang kami buat dapat<br />
digunakan sebagai solusi yang ampuh untuk<br />
perusahaan,” katanya.<br />
Pelanggan perusahaan biasanya sudah<br />
memiliki beberapa program yang berjalan<br />
di Windows, <strong>dan</strong> tidak mau berubah (EDP<br />
tidak mau repot). Pelanggan model ini, ketika<br />
diceritakan bahwa Dreamware meng-<br />
Sekilas tentang Dreamware<br />
www.infolinux.web.id<br />
BISNIS<br />
Dreamware<br />
gunakan solusi Linux, mereka langsung memiliki<br />
tanggapan yang negatif. Perta nyaan<br />
yang umum adalah, “Kamu bisa buat di<br />
Windows pakai Delphi atau VB, nggak?”<br />
Dan ketika diberi penjelasan masalah lisensi<br />
<strong>dan</strong> sebagainya, mereka merespon, “Ah.....<br />
itu kan bisa diatur sama aparat....tidak masalah.”<br />
Harapan kepada pengembang <strong>dan</strong><br />
pengguna Linux<br />
Stefanus Wardoyo berharap para pengembang<br />
open source semakin mengembangkan<br />
Development Tools di Linux, terutama<br />
untuk IDE (Integrated Development Environment)<br />
yang memiliki fi tur RAD seperti<br />
Delphi atau VB di Windows. “Saat ini penggunaan<br />
yang terpisah antara <strong>QT</strong> Designer<br />
<strong>dan</strong> KDevelop sering memakan waktu<br />
dalam troubleshooting error,” katanya.<br />
Se<strong>dan</strong>gkan terhadap para pengguna<br />
Linux, tim pengembang Dreamware mengharapkan<br />
agar pengguna terus mengampanyekan<br />
penggunaan Linux untuk komputer<br />
desktop, <strong>dan</strong> memberikan edukasi kepada<br />
masyarakat sekitarnya mengenai masalah<br />
pembajakan software.<br />
“Juga untuk para pengguna Linux,<br />
marilah kita sama-sama masuk ke dunia industri<br />
software di Indonesia, karena, semakin<br />
banyak industri software yang menggunakan<br />
Linux sebagai solusi, maka semakin<br />
Linux ini dapat dipercaya di kalangan perusahaan,”<br />
pesan Stefanus Wardoyo mewakili<br />
tim pengembang Dreamware.<br />
Rusmanto (rus@infolinux.co.id)<br />
Dreamware Total Solusi adalah sebuah perusahaan penyedia<br />
teknologi informasi yang memfokuskan diri pada<br />
Quality, Total Solution, Partnership <strong>dan</strong> Legality dalam<br />
menawarkan setiap produk <strong>dan</strong> layanan. Selain menguasai<br />
pemrograman berbasis Linux <strong>dan</strong> open source, tim pengembang Dreamware juga menguasai<br />
teknologi SMS based service.<br />
Dreamware telah dipersiapkan sejak akan diberlakukannya UU HaKI di Indonesia, sebelum<br />
Juli 2003. Kegiatan awalnya meliputi riset <strong>dan</strong> pengembangan. Secara resmi sebagai<br />
perusahaan, Dreamware baru berdiri di bulan Agustus 2004. Tim manajemen berjumlah<br />
empat orang, semuanya masih tenaga Fresh Graduate, namun memiliki pengalaman kerja<br />
yang cukup banyak selama kuliah sambil bekerja, <strong>dan</strong> memiliki semangat kerja yang sangat<br />
tinggi. Mereka adalah Stefanus Wardoyo, S.Kom (CEO merangkap Marketing & <strong>Program</strong>mer),<br />
Stefanus Wayanartha, S.Kom (Design and UI), Danny Kurniawan (Database Core <strong>Program</strong>mer),<br />
<strong>dan</strong> Eddy Setyawan, S.Kom (Database Widget <strong>Program</strong>mer). Info lebih lengkap tersedia<br />
di http://www.dreamware.web.id.<br />
INFOLINUX 02/2005 43