PHP – Enterprise – Symfony – Integration – Web Engineeering – FREE

<? start the magic

Kemana Prado?

with one comment

Yii PHP framework is the next generation high-performance PHP framework inheriting most features of PRADO. It has extremely low overhead and is suitable for developing large-scale Web applications. Since 2008, the developer team of PRADO has shifted focus to developing Yii. PRADO will continue to be maintained and some features of Yii will be back-ported to PRADO.

Advertisements

Written by Ali

December 17, 2008 at 8:22 am

Posted in Uncategorized

Tagged with , , ,

Symfony – Bab 1 :: Perkenalan

with 13 comments

Symfony

Symfony adalah salah satu PHP framework yang bersifat opensource!

Syarat menginstall Symfony apa??

Syarat umum :

  • Ada web server PHP 5, MySQL5, PEAR
  • bisa menjalankan Mysql, PEAR, & PHP CLI via console

Windows

  • Punya tools buat nge un-extract

Linux

  • Mengerti/ tahu perintah tar ๐Ÿ˜›

Kenapa console?? Pihak developernya menclaim penggunaan CLI akan mempercepat proses development suatu project, mungkin dengan asumsi semua orang pasti pernah berurusan dengan tools yang satu ini dalam men-develop suatu web. Dan ini benar, kita bisa membuat sebuah web, tanpa harus mengetikkan satupun perintah PHP!

Beberapa Istilah, teknologi dan metodologi yang digunakan oleh Symfony (untuk pengetahuan saja)

  • ORM [wiki] – Object Relational Mapping, Suatu metode dimana anda (diharapkan) tidak “menyentuh” data (database) secara langsung. Namun sebagai gantinya anda akan menggunakan objek-objek yang menjadi interface program anda dengan database. Keuntungannya, data anda lebih aman dari sentuhan langsung script anda yang kadang berakibat fatal (hayoo ngaku siapa yang pernah… ๐Ÿ˜€ ) selain itu terdapat fitur foreign key yang dapat anda gunakan sekalipun database type anda tidak mendukung penggunaan foreign key (contohnya MYISAM). ORM di Symfony akan dilakukan oleh propel.
  • CRUD [wiki] – Create, read, update and delete. Aplikasi paling bagus, canggih dan unik sekalipun, pasti memiliki dan atau mengkombinasikan empat kemampuan dasar ini. Buat, baca, sunting, hapus. Symfony dapat membuat kemampuan dasar ini jauh lebih mudah dan cepat.
  • YML [wiki] – Bagi anda yang sudah familiar dengan XML, seharusnya tidak ada masalah dengan YML. YML, seperti halnya XML, YML adalah file penyimpan data dengan format dan aturan tertentu. YML dibanding XML, lebih simple dalam hal penulisan, karena tidak mengenal tag. Tag dalam XML digantikan dengan spasi di YML.
  • DRY [wiki] – Jangan mengulangi apa yang sudaha anda tulis โ— Symfony merupakan framework kelas enterprise. Artinya, setiap modul dan template yang anda develop dalam symfony dapat reuseable/ digunakan kembali oleh modul lain atau aplikasi lain.
  • KISS [wiki] – Buat menjadi sederhana โ— Semua hal diatas menuju satu tujuan, aplikasi anda dapat dibuat lebih sederhana, mudah dibaca dan mudah dikembangkan kembali (re-develop). Semua yang ada di symfony mampu memenuhi kebutuhan anda dalam men develop suatu aplikasi, tinggal bagaimana anda meramu script dan utility yang ada dalam framework symfony ini menjadi sebuah aplikasi yang anda inginkan.

Jargon-jargon dasar yang perlu kita sepakati dalam menggunakan Symfony adalah:

Project – Project adalah root dari aplikasi-aplikasi yang akan kita bangun. Project dapat terdiri dari beberapa aplikasi. Project mengatur pondasi dari website, seperti koneksi basisdata, plugins, model, dan sebagai container dari aplikasi.

Application– Untuk memudahkan ana untuk memahami layer layer ini, misalkan anda membuat Sistem informasi penjualan. Diamana Sistem Informasi ini adalah Project anda, dan anda menginginkan aplikasi tersendiri untuk setiap user, kita asumsikan kita memiliki user administrator, supplier, pegawai, dan customer. Maka aplikasi-aplikasi ini yang akan menjadi suatu aplikasi dalam project kita. Kenapa dipisah? karena bebeda peruntukannya pun berbeda, behaviour nya berbeda, hak aksesnya berbeda (dapat disesuaikan dan di konfigurasi seesuai kebutuhan).

Module – Module adalah sekumpulan fungsionalitas dengan objek sama atau serupa atau satu tujuan. Module dalam Sistem informasi adalah modul barang, pemesanan, laporan transaksi, login, halaman depan, manajemen user, dan sebagainya.

Action – Action adalah logic dari setiap modul. Dalam suatu modul minimal memiliki satu buah action. Miisalkan di module barang terdapat action listBarang, inputBarang, hapusBarang, editBarang, dan sebgainya. Penamaan action dimungkinkan sama dengan nama modul, contoh: modul login memiliki dua actions, yaitu login dan logout.

Parameter – Pengertian parameter sama seperti pengertian parameter di fungsi. Yaitu variabel yang diperlukan untuk melakukan fungsi/ action.

Satu aplikasi minimal memiliki satu modul dan satu aksi.

camelCase – sebenarnya hanya persetujuan cara penulisan di symfony, dimana huruf awal nama fungsi adalah huruf kecil (lowercase) dan setiap penggalana kata huruf besar (uppercase), sperti unta diaman kepalanya rendah dan punuknya lebih tinggi daripada kepalanya. Contoh saya memiliki nama fungsi :

getfungsimengambilnamauseryanglogin()

dalam camel case akan ditulis

getFungsiMengambilNamaUserYangLogin()

Baiklah, selanjutnya..

Written by Ali

April 27, 2008 at 9:14 am

PHP Framework (Pengantar)

leave a comment »

Pada postingan saya sebalumnya saya singgung tentang framework dan saya mencoba menggunakan PRADO.

Setelah mencoba-coba ada beberapa hal yang saya agak kagok menggunakan prado. Mungkin karena kebiasaan saya yang sudah terlalu lama tidak menggunakan bahasa visual saya agak canggung untuk menggunakan pemrograman berbasis komponen, sperti PRADO. Beberapa kekurangan PRADO adalah masih minimnya dokumentasi dan support, ini penting untuk sebuah framework yang opensource. Selain tentunya mudah dibaca dan popularitas ๐Ÿ˜€ .

Apa itu framework?? dalam lingkup software tentunya, saya kutip dari Wikipedia

A software framework is a re-usable design for a software system (or subsystem). A software framework may include support programs, code libraries, a scripting language, or other software to help develop and glue together the different components of a software project. Various parts of the framework may be exposed through an API.

Yang saya pahami, framework adalah suatu standar dalam bekerja. Kita tahu untuk menghasilkan suatu output, bisa dilakukan dengan banyak cara. Framework membatasinya. Kenapa?? Karena terkadang pekerjaan tidak dikerjakan oleh satu orang, namun oleh sebuah tim (bukan makanan). Framework menerapkan standar bagaimana cara mengakses, mengolah dan menyajikan informasi/ data/ logika program sehingga mudah dibaca oleh selain kita! (hehehe dalem..)

Misalnya PRADO, Anda dibatasi dalam lingkuangan serba komponen, jika anda ingin mengakses data, ada komponennya, kalau tidak ada?? jangan membuat Class, tetapi buatlah komponen! Dimana penamaan, struktur, dan behaviour dari komponennya harus mengikuti standar dari framework yang anda gunakan, jika tidak, apalah artinya anda menggunakan framework jika hasilnya masih spaghetti.

Saat ini saya sedang mengeksplore Symfony sebagai salah satu PHP framework, dan sudah beberapa project di kantor kami yang mulai menggunakan symfony. Apa dan bagaimana symfony?? Anda dapat langsung ke websitenya atau menunggu tulisan berikutnya yang rencananya beberapa tulisan kedepan akan tentang symfony ๐Ÿ˜€ (hope my mood support it)

Written by Ali

April 19, 2008 at 3:40 am

Posted in Frameworks, PHP, symfony

Kursus HTML (1) :: Pengantar

with one comment

Kali ini saya akan menglihkan perhatian kita ke HTML. Kenapa? Karena HTML adalah dasar dari sebuah web, sangat tidak mungkin kita meguasai pemrograman web tanpa mengetahui . HTML yang akan saya bahas disini adalah HTML 4.0 yang dikeluarkan oleh W3C.

Unsur utama HTML 4.0 adalah

  1. DTD – Definisi Tipe Dokumen diperlukan HTML 4.0 untuk menetukan sifat dokumen. Terdapat 6 DTD pada HTML 4.0 Namun hanya 3 DTD yang umum digunakan.
    • Strict
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    • Loose
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd" >
    • Frameset
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd"DTD lainnya adalah :
    • HTMLlat1.ent
    • HTMLsymbol.ent
    • HTMLspecial.ent
  2. <html>
  3. <head>
  4. <body>

Maka dengan membentuk

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
</head>
<body>
</body>
</html>

Kita sudah membentuk dokumen HTML 4.0 strict. Oh ya , saya belum menjelaskan apa perbedaan strict dan loose ya hehehe. Untuk frameset, berfungsi untuk mengenalkan bahwa dokumen kita menggunakan frame, baik frameset maupun iframe.

Strict, artinya dokumen kita dijamin memenuhi wellformness, resikonya jika tidak, dokumen kita langsung ditolak, bahkan tidak dapat ditampilkan. Sedangkan loose/ transitional parser HTML masih memberikan toleransi kesalahan dan akan tetap menampilkan dokumen kita walau tampilannya mungkin tidak sesuai harapan ๐Ÿ˜›

Written by Ali

November 5, 2007 at 7:43 am

Posted in HTML, HTML Course

phpmyadmin: alat bantu manajemen mysql

with 5 comments

Dari salah satu komentar yang mampir:

ali56 said,
October 26, 2007 at 7:34 pm

mas php adminya kok lum ada
smua buku ku mengarah pembelajaran pad apache,php,mysql,phpmyadmin
saya kebingungan cara dowload php my admin n cara cconfigurasinya dengan ketiga software ersebut

Pertama terimakasih untuk ali56 atas komentarnya, kedua, saya ingin tekankan bahwa phpmyadmin bukanlah satu-satunya cara untuk manajemen basisdata mysql, ada banyak tools seperti sqlyog, mysql-front atau cara konvensional tapi paling powerful, lewat consolewinking

phpmyadmin adalah salah satualat bantu (tools) manajemen mysql berbasis web. Untuk menggunakan phpmyadmin, kita harus meng-unduh phpmyadmin disini. Setelah selesai, extract pada DocumentRoot sesuai dengan konfigurasi webserver Apache (atau yang lain) pada baris

DocumentRoot “C:/www”

Konfigurasi yang perlu dilakukan adalah, merubah username yg melakukan koneksi ke database (untuk single user). ubah file “config.inc.php” pada direktori “config” di dalam direktori phpmyadmin yang sudah kita ekstrak sebelumnya. Ubah baris

$cfg[‘Servers’][$i][‘controluser’] = ‘pmausr’;
$cfg[‘Servers’][$i][‘controlpass’] = ‘pmapass’;

sesuaikan pmausr dan pmapass dengan user database anda.

Sampai disni, anda sudah dapat menggunakan phpmyadmin, namun agar berkerja maksimal, ada modul PHP yang sebaiknya kita aktifkan. Buka file “php.ini” cari baris

;extension=php_mbstring.dll

hilangkan tanda semicolon/ titikkoma/ ; di awal baris sehingga menjadi

extension=php_mbstring.dll

Buka alamathttp://127.0.0.1/phpmyadmin/ pad web browser, dan lihat apakah phpmyadmin kita sudah siap digunakan happy. Jika masih terdapat error, silahkan dilihat dokumentasi phpmyadmin atau tinggalkan komentar pada post ini, dan kita bahas bersama. Terimakasih coffee

Written by Ali

October 29, 2007 at 2:16 am

Kursus PHP (2) :: Numbers output

leave a comment »

Sebelumnya kita telah membahas bagaimana mengoutputkan string/ huruf. Namun karena pada dasarnya PHP tidak mengenal tipe data, penulisan untuk string seperti dalam kasus hai programmer kursus sebelumnya dapat juga digunakan untuk mengoutputkan angka.

Yang akan kita bahas disini berkaitan dengan angka dan penanganan khusus PHP dalam mengoutputkan angka.

 $angka1 = 5;
 $angka2 = '3';
 $hasil = $angka1 + $angka2;
 echo 'Hasilnya $angka1 + $angka2 = '.$hasil.' = '.($angka1 + $angka2).'<br />';

Akan menghasilkan

Hasilnya $angka1 + $angka2 = 8 = 8

Dari baris-3 dapat kita lihat, tidak peduli anda menulis angka dalam kutip atau tidak (tipe string), PHP hanya akan melihat nilainya apakah berupa angka atau string. Dan pada baris ke-5, Operasi bilangan dapat anda langsung lakukan pada output dengan menggunakan kurung ( ) sebagai penanda bahwa yang disisipkan adalah berupa operasi bilangan yang mempunyai return value. Operasi dasar bilangan dalam PHP adalah

+ : penjumlahan. Misal : 7 + 3 hasilnya adalah 10
– : pengurangan. Misal : 7 – 3 hasilnya adalah 4
* : perkalian. Misal : 7 * 3 hasilnya adalah 21
/ : pembagian. Misal : 7/2 hasilnya adalah 3.5
% : modulus/sisa pembagian. Misal 7%3 hasilnya adalah 1

Untuk bermacam kepentinan, kadang kita memerlukan penulisan angka dengan format tertentu, untuk itu kita dapat menggunakan fungsi sprintf(), panduan lengkapnya dapat dilihat disini.

Untuk lebih meyakinkan bahwa yang kita outputkan sudah ssuai dengan tipe data yang kita inginkan kita dapat melakukan casting seperti contoh dibawah ini untuk mengoutput bialngan integer (bilangan bulat)

<code>
 $i = 8;
 echo (int) $i;
</code>

Selain cast untuk (int) ada juga

  • (integer) – cast untuk integer
  • (bool), (boolean) – cast untuk boolean
  • (float), (double), (real) – cast untuk float
  • (string) – cast untuk string
  • (binary) – cast untuk binary string (PHP 6)
  • (array) – cast untuk array
  • (object) – cast untuk object

Hmm.. kursus ke-2 tentang bilangan dan operasi bilangan sampai disini dulu, ada pertanyaan silahkan tinggalkan komentar anda, kami dengan senang hati mencoba menjawabnya. peace sign. Salam, enjoy your day coffee. wave - New!

Written by Ali

October 3, 2007 at 6:19 am

Posted in PHP, PHP Course

Kursus PHP (1) :: String output

with 3 comments

Selamat datang di posting pertama kursus PHP. Disini saya akan membagi apa yang saya thu tentang PHP, from zero (dari awal mula) to hero (jadi Batman ๐Ÿ‘ฟ ) WHAT?!?!? ๐Ÿ˜ฏ

Mari kita mulai dengan berdoa praying

Aplikasi pertama kita, bukan sekedar hello world โ— namun lebih kepada mengenal sifat string di PHP nerd. Sebelum memulai, kita buat kesepakatan terlebih dulu. Berdasarkan ini, kita akan lebih cenderung menggunakan echo untuk menuliskan output. Dan berdasarkan ini, kita akan menggunakan single-quote/ kutip satu untuk delimiter string kita. Deal โ“


echo 'Hai.';
echo '         Hai<br />$programmer. ';
$programmer = 'PHP';
echo '         Hai '.$programmer.'.';

$programmer .=  'HANIFA';
echo '                Hai '.$programmer.'.<br />';
$hari = 'Jum\'at';
echo ' Hai '.$programmer.', ini hari '.$hari.'.';</pre>
<pre>

Dan outputnya akan menjadi

Hai.Hai
$programmer. Hai PHP. Hai PHPHANIFA.
Hai PHPHANIFA, ini hari Jum’at.

Kita dapat melihat hasil dari baris ke-3 bahwa $programmer akan di outputkan apa adanya, karena berada dalam single-quote string, tetapi tag HTML dan karakter spesial HTML tidak terlihat karena sudah diterjemahkan menjadi break dan non-breakingspace kecuali kita view source browser kita.

Sedangkan baris ke-4 dan baris ke-5 menunjukkan delimiter dan penggabungan antara variabel dengan string. Pada baris ke-6, kita menyambung variabel programmer kita dengan string ‘HANIFA’ menghasilkan PHPHANIFA sebagai nilai dari variabel programmer.

Perhatikan, berapapun banyaknya spasi yang klita berikan pada baris ke-7, output hanya akan menghasilkan satu spasi saja.

Baris ke-8 dan 9 menunjukkan cara menggunakan kutip satu/single-quote ( ' ) di dalam string yang delimiternya kutip satu juga, yaitu dengan melakukan escape character dengan memberikan tanda backslash ( \ ) sebelum karakter. Hal ini juga berlaku jika kita ingin menggunakan kutip dua/double-quote ( " ) di dalam string yang delimiternya kutip dua.

Baik, hari ini cukup sekian. Tentang menampilkan variabel bertipe string. Rencananya post kursus selanjutnya membahas tipe bilangan dan operasinya. daydreaming - New!Terimakasih.. wave - New!

Written by Ali

October 2, 2007 at 8:23 am

Posted in HTML, PHP, PHP Course

Tagged with , ,