Saturday, July 9, 2011

Pascal, Tidak Bisa Dihindari

Sekian lama saya bergelut dan mempelajari bahasa pemrograman komputer, ada salah satu bahasa pemrograman populer yang sebenarnya sangat saya hindari. Bahasa pemrograman itu  adalah Pascal termasuk variannya.



Mungkin ada pertanyaan, kenapa saya berusaha menghindari menggunakan Pascal ? Saya memiliki alasan pribadi yang mungkin bagi sebagian orang tidak relevan atau bodoh. Dari sekian banyak bahasa dan script pemrograman komputer populer yang saya kenal seperti C/C​​++, Java, Basic/Visual Basic, Python, Ruby, PHP, ASP, JavaScript dan VBScript (tidak termasuk COBOL, Prolog dan Dbase karena saya anggap pemrograman ini tidak sepopuler bahasa pemrograman yang saya sebutkan barusan)  hanya Pascal yang saya anggap 'ANEH' dan menyebalkan. Hmmm... Aneh dan menyebalkan ?

Penggunaan Blok untuk Prosedur dan untuk Operasi Perulangan dan Logika

Saya menilai suatu bahasa pemrograman dengan melihat dan mempelajari struktur pemrogramannya lebih dahulu, menggunakan Pascal setiap blok prosedur, operasi perulangan dan logika harus selalu diawali dan diakhiri dengan keyword 'Begin' dan 'End'. Bagi saya ini suatu yang merepotkan dan terlalu memakan waktu karena saya harus selalu mengetikan 'Begin' dan  'End'.


Tidak seperti C/C++ dan 'turunannya' seperti, Java, Javascript dan PHP untuk setiap bloknya hanya dibatasi dengan tanda kurung kurawal '{ }' atau Basic/Visual Basic dan variannya ASP dan VBScript yang setiap bloknya hanya cukup diakhiri dengan keyword 'End' ditambah lagi dengan perangkat IDE dari Microsoft yang semakin mempermudah aktifitas 'coding', atau yang lebih unik lagi Python yang setiap bloknya hanya cukup dengan indentasi.

Pendeklarasian dan Pendefinisian Variabel

Pada Pascal, untuk pendeklarasian variabel harus diberikan 'embel-embel' keyword 'var'  dan disertai tanda ':' untuk menentukan type data variabel. Pada C/C++ dan Java pendeklarasian variabel hanya cukup ditulis seperti ini 'typedata [spasi] variabel' atau Python yang tidak perlu dicantumkan type datanya. Sedangkan Basic/Visual Basic meskipun bisa dibilang merepotkan karena harus mengunakan keyword 'As' dalam pendeklarasian variabel tapi programer cukup terbantu dengan fitur IDE defaultnya (Visual Studio) dalam melakukan aktifitas 'coding'.

Belum lagi dalam penggunaan karakter khusus dalam pemrogramannya, Pascal harus menggunakan karakter titik dua dan sama dengan ':=' saat mendefinisikan variabel dan Pascal 'tidak mengenal' karakter double quote (“) untuk digunakan saat mendefinisikan variabel string karena Pascal hanya memperbolehkan tanda single quote (').

Inilah sebagian alasan dan hal yang saya anggap aneh (karena tidak lazim) dan menyebalkan juga merepotkan yang membuat saya selalu menyatakan kepada siapapun saat berbincang memngenai pemrograman bahwa saya tidak akan pernah menggunakan Pascal karena alasan diatas.

Terpaksa Atau Munafik ?

Tapi tahukan Anda ? Saat ini saya 'sedang' menggunakan Pascal (lebih tepatnya Free Pascal/Lazarus) untuk membuat aplikasi. Saat kantor saya meminta untuk dibuatkan aplikasi, setelah saya melakukan 'survey' sumber daya, perangkat, sistim operasi, server dan jaringan komputer di kantor saya ternyata untuk menggunakan Visual Basic dan Visual C++ tidak memungkinkan karena biasanya hampir seluruh produk keluaran Microsoft tidak mendukung 'shared application' (excel.exe bisa gak di share di jaringan dan digunakan oleh kompi yang tidak terinstal MSOFFICE  ?) begitu juga dengan hasil aplikasi yang dikembangkan lewat Visual Studio.

Bayangkan bagaimana repotnya harus instal aplikasi kita satu persatu dengan instaler ditiap komputer user (kalaupun dipaksakan di share dijaringan, setiap kompi user harus menginstal library-library tambahan untuk menggunakan aplikasi kita karena spesifikasi dan kelengkapan library masing-masing kompi berbeda walaupun dengan sistim operasi yang sama) dan harus setting ODBC di tiap kompi user.


Begitu juga bila menggunakan Java dan Python, setiap kompi user harus terinstal JRE (untuk Java) dan python meskipun bisa saja kita set PATH JRE dan Python setiap kompi user diarahkan ke server entah manual di kompi user atau diberikan file script kecil dikompi user tapi tetap saja merepotkan.

Untuk menggunakan IDE dan compiler C/C++ lainnya selain Visual Studio juga merepotkan karena dibutuhkan waktu ekstra untuk mendevelop sebuah aplikasi windows karena tiap window dan form yang kita buat harus dibuat secara manual (coding) menggunakan windows API sedangkan dikantor dibutuhkan pengembangan aplikasi secara cepat.

Sempat terpikir membuat aplikasi web-based (intranet) entah dengan Java, PHP, ASP atau Python, setelah sempat 'tanya-tanya' ke beberapa user tampaknya mereka lebih terbiasa (familiar) menggunakan aplikasi desktop, sedangkan aplikasi web-based yang mereka kenal dan biasa gunakan hanya Facebook, Twitter, Google, Yahoo, Youtube dan lain-lain, selain itu tidak dikenal... hehehe.

Akhirnya ke Pascal

Pilihan terakhir akhirnya jatuh ke Pascal (Free Pascal dengan Lazarus) karena hasil kompilasi tidak menghasilkan file macam-macam dan hanya membutuhkan libmysql.dll untuk menghubungkan aplikasi ke MySQL database server. Free Pascal sudah didukung oleh aplikasi GUI Lazarus dari Lazarus Project yang mendukung Rapid Application Development (RAD) untuk mengembangkan sebuah aplikasi GUI secara cepat untuk flatform sistim operasi Windows, Mac dan GNU/Linux.



Aplikasi hasil kompilasi bisa dishare dijaringan, tanpa perlu memberikan setting macam-macam di kompi user. Meskipun saat ini ini Pascal sudah didukung oleh aplikasi IDE GUI seperti Delphi dan Lazarus tapi bagi saya, Pascal tetap merepotkan karena alasan diatas.

Well, saat ini saya hanya bisa bilang 'Alhamdulillah, untung ada Free Pascal dan Lazarusnya' meskipun merepotkan dan aneh tapi sangat membantu pekerjaan saya :)

4 comments:

Farid said...

Bro, kan sudah ada paketan untuk membuat python dijalankan tanpa instalasi pustaka python di windows. Coba cek ke alamat ini :

http://code.google.com/p/gui2exe/
http://www.py2exe.org/index.cgi/FAQ.
http://cx-freeze.sourceforge.net/
http://www.pyinstaller.org/
http://svn.pythonmac.org/py2app/py2app/trunk/doc/index.html

http://www.masnun.me/2011/05/17/compiling-python-apps-to-exe-on-windows.html

Semoga ada manfaatnya.

Rofa said...

Thx infonya ya, kalo py2exe saya udah pernah baca-baca tapi semua paketan ini bisa nutup kode saya gak ya, jadi close source gitu ?... soalnya selain saya programer yang beredar dikantor saya ada 'programer cabutannya' (semacam konsultan) yang juga punya akses ke server kantor, saya gak mau nanti kode saya disalahgunakan.... mending share kode di blog/internet dari pada kode saya diintipin orang hehehe.

Anonymous said...

Mas pernah coba wxruby ?

Rofa said...

Untuk aplikasi wx, sepertinya saya lebih condong ke python dan saat ini lagi coba-coba wxWidget dengan C++... :)