Sabtu, 28 Juli 2012

ASP VS PHP



Platform


ASP adalah bahasa pemprograman Microsoft yang membutuhkan server IIS dan Windows untuk menjalankannya. Memang dimungkinkan untuk menjalankan ASP di server Apache meskipun tidak akan semaksimal jika menggunakan php di Apache tentunya. Tapi sekarang sudah ada pihak ketiga yang mengembangkan pada platform lain misalnya, Linux, Solaris dll. Salah satu Vendor pengembangnya adalah ChiliSoft Inc. Satu hal yang perlu diingat adalah kebutuhan akan instalasi .NET framework jika ingin menjalankan ASP di atas Server Apache yang berbasis Linux.

Satu lagi sehubungan dengan .NET, siap-siap saja dengan space hardisk yang dibutuhkan sebab .Net terkenal rakus dan memakan banyak space hardisk buat menjalankan aplikasi-aplikasinya.

PHP bisa dijalankan di hampir semua web server dan hampur semua platform. 25 database, termasuk Adabas D, dBase, Empress, FilePro, FrontBase, Hyperwave, IBM DB2, Informix, Ingres, Interbase, mSQL, direct MS-SQL, MySQL, SQLite, Oracle, Ovrimos, PostgreSQL, Solid, Sybase, Unix dbm, dan Velocis. Jadi tidak ada masalah di mana PHP harus dijalankan. Bahkan PHP bisa dijalankan dengan cukup sukses di IIS yang berbasis Windows, tidak ada masalah yang berarti.


Syntax dan Semantics

ASP menggunakan bahasa standar yang dikembangkan oleh Microsoft yaitu, Microsoft VBScript dan Jscript. Developer ASP paling banyak menggunakan VBScript. Jadi bisa dikatakan ASP sebenarnya merupakan paket dari beberapa bahasa pemprograman yang berjalan melalui .NET framework. Ketika Anda menggunakan ASP itu berarti Anda juga sedang menggunakan JavaScript atau VBScript atau C#.

Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaanya. Ketika Anda menggunakan PHP itu berarti anda sedang menggunakan PHP itu sendiri, dimana PHP merupakan bahasa program yang sedang anda gunakan. PHP dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah system.

Untuk mengetahui perbedaan cara penanganan sebuah code dari kedua program tersebut, kita bisa lihat dari contoh berikut:

Ambil contoh untuk kasus pembacaan kontent dari sebuah file. Di PHP ini adalah masalah sederhana untuk membuat pointer ke sebuah file, memasukan kontent file tersebut ke variabel dan kemudian menutup pointer. Bahkan jika proses tersebut melibatkan proses pengecekan untuk memastikan apakah file tersebut ada, kita hanya membutuhkan empat baris script yang bisa dijalankan di situasi apapun, tidak masalah dimana lokasi maupun apa format dari file tersebut.

Beda ceritanya jika menggunakan ASP. Pertama-tama Anda harus mengambil dari 5 classes berbeda tergantung format file apa yang ingin anda baca. Setelah anda menemukan class yang sesuai anda tinggal menuliskan 3 baris code untuk mendapatkan kontent tersebut. Masalahnya jika situasinya berbeda, misalkan format file yang hendak dibaca berbeda, anda harus kembali menulis ulang code yang anda buat tadi menggunakan class baru yang sesuai dengan situasi tersebut. Jadi untuk urusan ini PHP lebih maintainable dibandingkan ASP.

PHP memiliki lebih dari 85 function untuk memanipulasi string. Pada PHP 5 selain ada peningkatan terhadap kemampuan pemrograman berorientasi objek (OOP), juga ada peningkatan dukungan terhadap XML dan Web Service, yang menggunakan libxml2. Tapi sedikit susah menerapkan mvc (model view controler). Tapi itu bisa dibantu dengan memakai smarty. Beberapa orang mengkhawatirkan dengan source PHP yang kelihatan. Saat ini tidak ada produk gratis untuk mengkompilasi kode PHP. Bandingkan dengan Python atau Java misalnya, yang sejak awal sudah memiliki kemampuan menyimpan hasil kompilasi bytecode ke dalam file. Artinya, sebagian vendor aplikasi mungkin mempertimbangkan untuk tidak menggunakan PHP karena takut kodenya dapat dilihat oleh klien/pembeli program. Ada produk bernama Zend Encoder untuk mengatasi masalah ini, namun produk ini harganya mahal. Pertama diluncurkan dibandrol $6000 per mesin, meskipun kini diprotes habis-habisan oleh komunitas PHP, “hanya” berharga sekitar $2000 dan juga ada opsi pembayaran berlangganan (meskipun ini artinya pengembang aplikasi harus membayar terus-menerus pada Zend $50/bulan jika ingin masih bisa mengkompilasi kode PHP-nya).

ASP memiliki Model Obyek yang bagus. Lewat model objek ini, kita dapat mengakses dan memodifikasi header HTTP dan komponen dokumen melalui serangkaian method dan property. Namun kemudahan-kemudahan ini bukan sesuatu yang tidak dapat dilakukan oleh mod_perl dan PHP. HTML::Embperl, misalnya, mendukung variabel session. Baik PHP dan mod_perl dapat memodifikasi header HTTP dan mendukung koneksi database persisten.


Kecepatan

PHP ditulis dalam bahasa C murni, jadi meskipun mungkin tidak secepat perl, tapi mengingat PHP memang diciptakan dengan tujuan khusus untuk pemprograman server site, maka bisa dipastikan PHP merupakan yang tercepat dibanding dengan rivalnya. Dan kecepatan ini akan semakin dikembangkan dari versi ke versi. Modul PHP berjalan di dalam ruang memorinya sendiri sehingga tidak ada waktu yang hilang untuk berhubungan dengan object atau system lain yang berjalan di dalam proses yang berbeda. Selain itu, page yang dibangun dengan PHP rata-rata memiliki kapasitas yang sangat kecil sehingga sangat cepat untuk diakses.

ASP bisa di tulis dalam beberapa bahasa yang berbeda dengan level kompleksitas yang cukup tinggi. Beberapa bahasa yang dipakai kemudian akan diterjemahkan kedalam apa yang disebut Common Language Infrastructure (CLI) yang kemudian fed ke mesin virtual dan diesekusi. Proses yang cukup berat dan terkenal lambat.


Konektivitas

ASP biasa melakukan koneksi ke Microsoft SQL server dan mungkin Access. Memang dimungkinkan untuk melakukan koneksi ke yang lain, tapi sangat direkomendasikan untuk hanya melakukan koneksi ke SQL server. Juga untuk connect ke hal lain menggunakan ASP kita butuh membuat connection string. String berupa teks-teks bit yang rumit. Mungkin akan lebih mudah jika seandainya ASP membuat sebuah function lalu menambahkan parameter yang benar kedalamnya.

PHP bisa melakukan koneksi ke hampir semua server. Bahkan kita bisa membuat semacam flat text file dan menggunakannya sebagai database. Kecepatan server juga tidak selalu menjadi masalah. Saya biasa menggunakan class ADODB untuk melakukan connection ke berbagai server.


Biaya

Untuk menjalankan ASP Anda membutuhkan hardware dengan spesifikasi yang cukup berat dan software berlisensi Microsoft yang tentu saja tidak murah (MS SQL dan IIS).

PHP biasanya berjalan di server Apache berbasis Linux. Baik PHP maupun Linux adalah produk open source, jadi kita bisa memotong anggaran untuk keperluan software di sini. Spesifikasi hardware yang dibutuhkan pun tidak terlalu tinggi. kita sudah bisa menjalankan sistem PHP menggunakan Pentium 3 dengan 128MB RAM.


Filosofi

- ASP adalah produk dari Microsoft. Sedangkan PHP adalah produk dengan semangat opensource.

- ASP banyak dipake di bisnis, khususnya small, middle dan sedikit enterprise.

- PHP almost gak pernah dipakai di dunia bisnis strategis apalagi yang krucial macam perbankan, dll

- Untuk tujuan bisnis (small, medium enterprise) mending pelajari ASP karena banyak digunakan.

Bukan berarti PHP juga nggak memiliki sisi komersial karena banyak juga yang jualan aplikasi PHP di internet

- Jadi ke depan .NET dengan ASP.NET nya lah yang berkemungkinan besar bermain di dunia enterprise sedang PHP meskipun bisa masuk ke dalam enterprise tapi rada susah. Tapi jangan minder dulu buat para PHP programer sebab PHP tidak selalu identik dengan small scale.

- Memang cukup seru jika kita memperdebatkan ASP dan PHP. Sebenarnya pertanyaanya bukanlah mana yang terbaik, tapi mana yang sesuai degan kebutuhan kita. Baik ASP maupun PHP memiliki karakter yang unik dan keunggulannya sendiri.

- Jika kita seorang programer, dan sudah biasa dengan Java atau C++, mungkin anda akan merasa lebih familier dengan kode program PHP. Sedangkan apabila kita telah mendalami Visual Basic, dengan mudah akan memahami ASP.

0 komentar:

Posting Komentar

Open Panel

Label