Rabu, 02 Januari 2013

ARSITEKTUR OPEN SERVICE GATEWAY INITIATIVE

Teknologi OSGi adalah seperangkat spesifikasi yang mendefinisikan sistem komponen dinamis untuk Java. Spesifikasi ini memungkinkan sebuah model pengembangan dimana aplikasi (dinamis) terdiri dari banyak berbeda (reusable) komponen. Spesifikasi OSGi memungkinkan komponen untuk menyembunyikan implementasi mereka dari komponen lain saat berkomunikasi melalui layanan, yang merupakan objek yang secara khusus dibagi antara komponen. Model ini sangat sederhana telah jauh mencapai efek untuk hampir semua aspek dari proses pengembangan perangkat lunak.

Meskipun komponen telah di cakrawala untuk waktu yang lama, sejauh ini mereka gagal untuk membuat baik pada janji-janji mereka. OSGi adalah teknologi pertama yang benar-benar berhasil dengan sistem komponen yang memecahkan masalah nyata banyak dalam pengembangan perangkat lunak. Pengadopsi teknologi OSGi melihat kerumitan berkurang secara signifikan di hampir semua aspek pembangunan. Kode lebih mudah untuk menulis dan menguji, menggunakan kembali meningkat, membangun sistem menjadi lebih sederhana, penyebaran lebih mudah dikelola, bug terdeteksi lebih awal, dan runtime memberikan wawasan besar ke dalam apa yang sedang berjalan. Paling penting, ia bekerja seperti yang dibuktikan oleh adopsi luas dan digunakan dalam aplikasi populer seperti Eclipse dan Spring.
Kami mengembangkan teknologi OSGi untuk menciptakan sebuah lingkungan perangkat lunak kolaboratif. Kami tidak mencari kemungkinan untuk menjalankan beberapa aplikasi dalam satu VM. Server aplikasi melakukan itu sudah (meskipun mereka belum sekitar ketika kita mulai pada tahun 1998). Tidak, masalah kita lebih sulit. Kami ingin aplikasi yang muncul dari menyatukan berbagai komponen dapat digunakan kembali yang tidak memiliki pengetahuan-priori satu sama lain. Bahkan lebih keras, kita ingin bahwa aplikasi untuk merakit secara dinamis muncul dari seperangkat komponen. Misalnya, Anda memiliki sebuah server rumah yang mampu mengelola lampu dan peralatan. Sebuah komponen dapat memungkinkan Anda untuk menghidupkan dan mematikan lampu selama halaman web. Komponen lain bisa memungkinkan Anda untuk mengontrol peralatan melalui pesan teks mobile. Tujuannya adalah untuk memungkinkan fungsi-fungsi lainnya yang akan ditambahkan tanpa memerlukan bahwa pengembang memiliki pengetahuan rumit satu sama lain dan membiarkan komponen ini akan ditambahkan secara independen.

Tidak ada komentar:

Posting Komentar