Contekan, sebuah alat bantu Programmer
Setelah kemarin ada yang memberikan komen di sini, saya jadi inget kalo sudah saatnya menulis lagi. mungkin tulisan yang ini sangat berbau teknis (atau nggak ya?). mudah-mudahan bisa jadi informasi yang berguna buat saya sendiri, dan kalo ada yang baca
. Bismillah
Contekan ?
judulnya sengaja dibuat provokatif (atau malah norak ya?) . adalah sebuah catatan kecil berisi referensi singkat yang membantu kita untuk menyelesaikan tugas tertentu (kalo jaman sekolah buat bantuin ulangan). alat bantu untuk kita supaya kita bisa ingat pola-pola tertentu atau informasi yang dibutuhkan untuk menyelesaikan tugas kita. berhubung tugas saya sehari-hari di kantor (bisa juga disebut kost-an, atau tempat tinggal) adalah programmer PHP (A.K.A orang yang sering koding) maka saya hanya membahas contekan yang berhubungan dengan pekerjaan saya. mungkin di lain waktu saya bisa menyempatkan diri untuk memberikan daftar contekan yang lain
buat saya contekan ini sangat membantu, apa lagi karena saya dikaruniai otak yang cepat lupa dan sangat membutuhkan pemicu untuk mengingat sesuatu. memang cheatsheet tidak didesain untuk memberikan jawaban lengkap dan mendetail tentang masalah atau problem yang sering kita hadapi, hanya sebagai pemicu bagi kita untuk menemukan jawaban atas persoalan tugas sehari-hari. Kalau mau jawaban lengkap ya sebaiknya menyediakan manual.
Dan inilah daftar contekan saya:
- Dimulai dari yang paling familiar yaitu PEHAPE. contekan ini didapet dari addedbytes . isinya cukup lengkap, mencakup hal2 berikut. daftar fungsi-fungsi yang paling sering digunakan, fungsi-fungsi untuk membuka/membaca file, regular expression, dan fungsi-fungsi tanggal. contekan ini cukup baik dan terstruktur. bisa di unduh di sini
- Mod_rewrite pada apache. beluim lama ini saya dapet tugas untuk membuat URL yang SEO friendly, yang biasa dilakukan dengan memodifikasi file .htaccess pada direktori web di apache. saya sering “melirik” ke contekan ini lantaran saya juga termasuk baru coba-coba melakukan modifikasi pad URL, sampai saat ini baru 2 situs yang saya gunakan mod_rewrite nya. pertama situs semtube.com , dan yang ke 2 adalah gantibaju.com . contekan ini bisa didapat di sini
- MySQL . sebenarnya saya jarang melihat contekan ini, karena saya anggap kurang membantu (karena keterbatasan saya dalam pengetahuan query, saya lebih sering melihat mysql cookbook , O’reilly. karena memberikan contoh yang sangat banyak). contekan ini berisi fungsi-fungsi di MySQL, tipe data, fungsi-fungsi mysql di PHP, dan contoh query. masih dari addedbytes.com dan bisa di ambil di sini
- jQuery . contekan ini termasuk yang paling sering saya lirik karena saya sendiri masih sering lupa fungsi-fungsi di JQuery, maklum masih awam saya
. isinya berupa selectors, manipulasi, efek, ajax, dan lain-lain. banyak deh, sayangnya nggak ada contohnya. setidaknya fungsi-fungsi jquery cenderung simple dan bisa rekursif. contekan ini bisa di sikat di sini - CodeIgniter. ini yang lagi seneng di oprek. framework yang menarik, dengan contekan yang kurang memuaskan, bisa di unduh di sini, masih versi 1.23 padahal sekarang CI sendiri sudah versi 1.7.1 . setelah baca2 di sini, ternyata ada yang buat untuk versi terbaru nya, yang pada saat menulis ini masih belum saya unduh, (rapidshare nya nolak IP)
Itu daftar contekan yang sering saya lirik, kecuali yang terakhir, karena blum saya lihat.
Tips dan Trik:
- Kalau memungkinkan sebaiknya dicetak, sebab saya sering alt-tab untuk melihat contekan agak nggak nyaman. Kalau mau lebih hemat nyetaknya di kertas bekas, yang penting kelihatan dan nggak perlu boros kertas
- dipasang ditempat yang mudah terlihat, dan tidak perlu terlalu banyak “nengok” (misalnya di sebelah monitor) atau yang masih dalam jarak pandang pekerjaan. intinya kalau bisa dilirik aja, ya nggak usah nengok
- cetak dalam proporsi yang masih bisa kamu lihat, jadi jangan cetak terlalu keci nanti nggak kliatan dan jangan terlalu besar, nanti makan ruang untuk kebutuhan yang lain
- Pasang dengan media yang mudah dilepas /pasang. seperti di tempel dengan magnet penjepit atau yang lain, jadi bisa dengan mudah di modifikasi layout nya (contekan-contekan saya masih terpasang di dinding rumah di Jln. Saninten, karena nggak bisa dilepas
) - Sesuaikan layout pemasangan contekan dengan kebutuhan anda. yang penting nyaman
- contekan BUKAN manual, jadi jangan disamain yah, klo butuh info lengkap dan atau contoh, siapkan buku di bawah meja
note: kebanyakan dari tips dan trik blum saya coba, baru ide saja. mudah-mudahan klo ada yang nyoba mau membagi tipsnya yang lain
Akhirnya selesai juga menulis. Next flickr API deh, atau Codeigniter ya?
Mengenal nuSOAP part 1 : pengenalan
Assalamu’alaikum
SOAP (Simple Object Access Protocol) adalah standar untuk bertukar pesan-pesan berbasis XML melalui jaringan komputer atau sebuah jalan untuk program yang berjalan pada suatu sistem operasi (OS) untuk berkomunikasi dengan program pada OS yang sama maupun berbeda dengan menggunakan HTTP dan XML sebagai mekanisme untuk pertukaran data.
SOAP menspesifikan secara jelas bagaimana cara untuk meng-encode header HTTP dan file XML sehingga program pada suatu komputer dapat memanggil program pada pada komputer lain dan mengirimkan informasi, dan bagaimana program yang dipanggil memberikan tanggapan.
SOAP adalah protokol ringan yang ditujukan untuk pertukaran informasi struktur pada lingkup desentralisasi, dan terdistribusi. SOAP menggunakan teknologi XML utuk mendefinisikan rangka kerja pemesanan terekstrensi di mana menyediakan konstruksi pesan yang dapat dipertukarkan pada protokol berbeda. Rangka kerja dirancang bebas dari model pemrograman dan spesifikasi implementasi semantik.
Info diatas diambil dari wikipedia (thanx a lot)
Gampangnya SOAP itu protokol (tata cara bicara /bahasa) untuk program-program yang terpisah baik secara lokasi, maupun jenis platform. Jadi secara konsep SOAP itu dibuat untuk menyatukan berbagai macam bahasa pemrograman biar program2 itu bisa berbicara satu sama lain, dengan XML.
Jadi para programmer Bea Cukai itu nggak perlu belajar PHP untuk nerima data dari kita yang diwajibkan lapor data tersebut . Dan yang lebih penting, KITA nggak perlu belajar bahasa .NET yang seperti (no comment…). Untuk saling bertukar informasi (saat ini efektifnya baru kita yang kirim data, kita blom bisa pake data dari mereka, btw tolong konfirmasi lagi yah)
Beruntung buat kita (ya , saya , anda dan semua orang) udah ada library PHP yang cukup mudah untuk bermain-main dengan SOAP , kalau anda masih bilang menggunakan nuSOAP itu rumit, silahkan coba pake cara native, atau hard code sendiri , maka anda akan mengerti kenapa saya memilih NuSOAP (selain tekanan untuk cepat selesai tentunya J )
- Persiapan
Sebelum menggunakan nusoap ada beberapa persiapan yang perlu dilakukan,
Aktifkan modul cURL dan non aktifkan modul php_soap pada instalasi PHP anda bila belum, karena pada beberapa installasi PHP curl tidak diaktifkan secara default (mis. XAMPP)
Caranya:
Cari dan buka file PHP.INI (untuk tiap2 instalasi bisa berbeda)
Lalu search and destroy, eh cari modul php_curl di daftar extension nya
seperti gini :
;extension=php_curl.dll
Dan hilangkan tanda titik-koma di depannya menjadi seperti ini:
extension=php_curl.dll
cari lagi modul php_soap
extension-=php_soap.dll
kali ini tambahkan tanda titik koma di depannya kalau belum ada
;extension=php_soap.dll
Kenapa mesti di otak-atik nih? Ngerepotin aja. hehehe kalau anda nanya kayak gitu, saya coba kasih jawaban:
· Karena Tpsonline menggunakan secure http (https) kita butuh curl untuk mengakomodasi nya, ini disimpulkan dari pengalaman saya ketika mencoba membuat web service di localhost, dan client di komputer yang sama. Semua berjalan lancar sampai saya develop klien tuk tpsonline. Dia error deh, setelah dirunut ternyata butuh curl
· Php_soap di non-aktifkan dengan alasan terjadinya ambiguitas nama fungsi dari nusoap, dengan php_soap. Sebenarnya hal ini dapat dihindari dengan menggunakan alias pada nama fungsi di nusoap.
Persiapan selesai, tinggal 1 lagi yang belum, download dulu paket nusoap disini http://sourceforge.net/projects/nusoap/, atau langsung ke http://downloads.sourceforge.net/nusoap/nusoap-0.7.3.zip?modtime=1194348059&big_mirror=0
- contoh skrip
langsung masuk contoh skrip, gak biasa bahas-bahas teori gitu, hehehe. Kita coba buat coding basic menggunakan nuSOAP, kita akan buat server dan klien nya
pertama-tama kita akan buat server nya dulu, buat apa ada klien kalo nggak ada server J. Btw saya kurang imajinasi jadi bikinnya standar abiss
Server ini membuka sebuah metode SOAP tunggal yang akan mengambil nilai masukan berupa string, dan mengeluarkan hasil berup string pula. Mudah-mudahan komentar dalam kode akan mempermudah anda.
helloworld.php
<?php
// Ambil kode nusoap
require_once(‘nusoap.php’);
// buat instance server
$server = new soap_server;
// daftar kan metode yang bisa diakses
$server->register(‘hello’);
// buat fungsi dari yang berusan didaftarin
function hello($name) {
return ‘Hello, ‘ . $name;
}
// gunakan request untuk mencoba memanggil service yang dibuka
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : ”;
$server->service($HTTP_RAW_POST_DATA);
?>
Sekarang untuk klien nya, pertama-tama yang perlu di perhatikan pada saat instansiasi soapclient harus ditulis URL lengkapnya (jangan ampe miss). Kedua-dua ketika memanggil service, parameter pertama adalah nama service. Dan nama service ini CASE-SENSITIVE. Yang terakhir (ketiga-tiga) parameter ke dua dari pemanggilan service adalah array dari parameter yang akan dilanjutkan ke metode dari web service.
<?php
// ambil kode nusoap
require_once('nusoap.php');
// buat instansiasi klien, perhatikan urlnya
$client = new soapclient('http://localhost/nusoap/helloworld.php');
// Panggil metode SOAP dengan parameter nama
$result = $client->call('hello', array('name' => 'Ibnu'));
// Tampilkan hasilnya
print_r($result);
?>
Client di atas hanya berfungsi untuk menampilkan respon dari server,
tapi cukup tuk membantu kita kenal dengan SOAP, yayyyy!!
FYI tulisan ini dibuat berdasarkan manual yang saya buat tuk perusahaan
tercinta, dan mencomot dari sana sini. Thx for your support.
Wassalamu'alaikum
Daftar Pustaka
Waw ada codeigniter, Pembakar Kode??
Kemaren ada yang nanya sama saya tentang Zend framework, kebetulan dia itu masih-masih baru kenal PHP (lah bukannya saya juga?), dia nanya “pak bisa ngajarin saya zend framework nggak?” , ternyata yang ditanya nggak lebih tau dari yang bertanya, akhirnya saya googling sebentar, tanya-tanya temen siapa tau ada yang tau tentang Zend Framework (selanjutnya disebut ZF) ini. Kebetulan ada, sayang nya sedang pulang kampung tuk nikah en nggak bisa kembali tuk waktu yang lumayan
Walhasil, yang bertanya pun agak kecewa lantaran yang ditanya nggak memenuhi standar (wew cupu banget sih gw), dan tutorial yang dikirimkan pun (saya dapet dari temen) ternyata dia dah punya, huhuhu , jadi merasa tumpul nih.
Tapi ada pelajaran yang bisa diambil dari situ. Selama ini saya cuma make Smarty template engine + ADODB database abstraction layer, yang notabene dah lebih dari satu tahun saya geluti. Kenapa nggak mencoba hal baru, at least buat ngilangin bosen selama ini, dengan koding yang itu-itu aja, jadi kyk kurang berkembang. Akhirnya setelah googling untuk membantu beliau, saya coba-coba tuk mencari tau framework PHP (bukan coba-coba melempar manggis yah), dan pilihan jatuuuhhhh keepaaadaaaa
Kenapa?, karena:
- cepet (tes dengan apache benchmark)
- simple alias sederhana bin gampang
- membuat kodingan saya menjadi rapih (kyknya semua framework gini deh)
- kode-kodenya well documented
- gak perlu pake console tuk installnya
- adaptive, nggak terlalu ngekang
- et cetera, et cetera, et cetera
mungkin di atas hanya sebagai opini saya, seorang koder yang merasakan kejenuhan dengan kodingan sendiri yang kurang berkembang. Hmm jadi ky punya mainan baru nih
hohoho