Wednesday 19 March 2014

Autoload via SPL Class Loader

Apa itu autoloader ?

Autoloader merupakan mekanisme pendaftaran terhadap file - file yang direquiment secara otomatis. Bagi yang terbiasa menggunakan Framework Codeigniter tentunya pernah merasakan fitur atuoloader untuk melakukan load terhadap Helper, Liblary, Model, dsb. Oleh karena itu disini kita akan membahas bagaimana membuat autoloader seperti, tetapi Autoloader melalui SPL Class Loader.

Apa itu SPL Class Loader ?

SPL: menurut yang saya baca di http://id1.php.net/manual/en/book.spl.php, SPL singkatan dari Standart PHP Library
Class Loader, yang tugasnya melakukan load Class, jadi jika disimpulkan, SPL Class Loader itu ialah Library Class Loader yang ada pada dasarnya PHP. Karena namanya "Class Loader", jadi yang diload ini berdasarkan Class, bukan file.

Lalu bagaimana cara kerjanya ?

Cara kerja autoloader yang biasa digunakan itu ialah ia mendaftarkan daftar file yang required kedalam suatu array, kemudian file yang required tersebut dijabarkan/looping dan dilakukan include ke dalam sistem. Sedangkan pada SPL Class Loader yang didaftarkan itu bukan "File", tapi metode pencarian class, jadi yang didaftarkan itu bukan lokasi file melainkan berupa method via SPL_Autoload_Register. Jadi misalnya jika ada Class yang belum terdaftar, maka akan otomatis mencari fie yang mengandung class yang

Apa kelebihan SPL Class Loader?

Performance yang baik, karena class yang diload hanya class yang dibutuhin, misalnya pada route 'Get /about', butuh class Foo, Bar, Baz, Qux, sementara diroute 'Get /Contact' membutuhkan class foo saja, jadi yang diroute 'Get /about' yang diload yaitu Foo, Bar, Bas, Qux dan diroute 'Get /conctact' yang diload hanya Foo.

Siapa yang menerapkan SPL Class Loader?

Autoload namespacenya Composer, Slim Framework, Laravel, Symfony2, Zend2, dsb.

Referensi/Sumber :

M, Syifa

1 comment:

  1. Mantab, penjelasan yg lumayan Bs dimengerti oleh pemula seperti saya.

    ReplyDelete