PHP, Enterprise Application dan Namespace/Package

PHP merupakan bahasa pemrograman yang memulai memanjat sebagai bahasa yang bisa digunakan untuk membuat Enterprise Application. Mulai PHP5 (PHP versi 5) konsep Object Oriented Programming telah ditingkatkan cukup banyak. Benarkah PHP siap menjadi Enterprise Language? Saya tidak menjawab ya atau tidak, tetapi keberadaan application framework semacam Zend Framework dan Prodo Framework paling tidak telah dipersiapkan untuk menjawab tantangan itu.

Tetapi ada sebuah hal yang cukup menggangu bagi pengembang dalam menggunakan PHP untuk membangun Enterprise Application, yaitu namespace. Sebuah Enterprice Application akan membutuhkan banyak kode sehingga membutuhkan pengorganisasian kode yang baik. Aplikasi akan terdiri dari banyak class, dimana class-class ini perlu dikelompokkan menjadi beberapa package. Sangat mungkin sebuah package berasal dari pihak ke tiga. Nah fungsi namespace adalah untuk mengidentifikasikan packege-packege supaya tidak terjadi benturan nama class yang disebabkan struktur aplikasi yang skala besar. (Untuk memahami konsep Namespace lebih lanjut, Anda dapat membaca bukunya Robert C. Martin, ‘Agile Software Development. Principles, Patterns, and Practice’ yang diterbitkan Prentice Hall, 2003.)
Read the rest of this entry »