Jumat, 11 Januari 2013

Application Programming Interface


Application Programmning Interface atau yang disingkat API adalah sekumpulan perintah, fungsi, komponen, dan protokol yang disediakan oleh sistem operasi ataupun bahasa pemrograman tertentu yang dapat digunakan oleh programmer saat membangun perangkat lunak.
Dalam API terdapat fungsi-fungsi atau perintah-perintah untuk menggantikan bahasa yang digunakan dalamsystem calls dengan bahasa yang lebih terstruktur dan mudah dimengerti oleh programmer.

Keuntungan menggunakan API:
1. Probabilitas
API dapat digunakan untuk bahasa pemrograman ataupun untuk sistem operasi mana saja asalkan paket-paket API sudah terpasang.

2. Lebih Mudah Dimengerti
API menggunakan bahasa yang lebih terstruktur dan mudah dimengerti daripada bahasa system call. Hal ini sangat penting dalam hal editing dan pengembangan.

3. Mudah Dikembangkan
Dengan adanya API, memudahkan programmer untuk mengembangkan suatu sistem.

Berikut contoh terapan API (hasil capture yang ada di hp android):



Twitter API dimanfaatkan pada Android



















                                                                                                  


Opera Mini API dimanfaatkan pada Android














Virtualization

Virtualization adalah salah satu teknologi yang dapat membagi satu server menjadi beberapa Operating System yang dapat berjalan secara bersama-sama.
Virtualization dibagi menjadi 2 yaitu:
1. Full Virtualization teknik virtualisasi yang digunakan untuk menyediakan jenis tertentu dari virtual machine yaitu yang merupakan simulasi lengkap dari hardware yang mendasarinya.
Software yang ada pada Full Virtualization : VMware, Win4BSD, Win4Lin Pro, Adeos, dll.

2. Paravirtualization adalah teknik virtualisasi yang menyajikan antarmuka perangkat lunak untuk virtual machine yang mirip tapi tidak identik dengan perangkat keras yang mendasarinya
Software yang ada pada Paravirtualization : Xen, TRANGO, Wind River, dll.
Mengenai konsep virtualization, sebenarnya sudah dibuat sekitar tahun 1960-an, namun hingga saat ini belum dikenal secara luas.

Sejalan dengan berkembangnya teknologi, perubahan pun berlanjut dan komputer semakin ramping dan bukan lagi merupakan barang mewah yang hanya dimiliki oleh perusahaan atau orang tertentu saja.Dengan pesatnya perkembangan teknologi dan semakin derasnya arus globalisasi, persaingan bisnis berbasis IT juga semakin ketat. Melihat kenyataan ini, raksasa software dunia, Microsoft menghadirkan teknologi server yang mendukung Virtualization. Fitur canggih ini ada dalam Windows Server 2008 64 bit yang kini sudah mulai banyak diimplementasikan. Konsep virtualisasi yang langsung terintegrasi dengan role server, yaitu Windows Server Virtualization atau lebih dikenal dengan Hyper-V. Hyper-V akan menjadi sebuah role dalam sistem operasi Window Server 2008 R2 dengan mengoptimalkan virtualisasi sistem operasi server. Seperti diketahui Hyper-V tersebut mendukung virtulisasi server baik untuk versi 64 bit.

Sumber: http://www.wowrack.co.id/blog/apa-itu-virtualization/ (dengan penambahan seperlunya)

Open Service Gateway Initiative (OSGI)

Oke, dalam tulisan ini saya akan merangkum tentang Open Service Gateway Initiative (OSGI) dari berbagai sumber yang saya dapat secara singkat.

OSGI adalah teknologi dimana kita dapat menggabungkan berbagai fungsi dalam satu tujuan yaitu menjadi aplikasi yang dapat digunakan dengan berbagai macam kegunaan. Teknologi ini juga dibuat tanpa mengubah koding yang ada sebelumnya.

Spesifikasi OSGI yang sekarang digunakan dalam aplikasi mulai dari ponsel ke open source Eclipse IDE. Wilayah aplikasi lain meliputi mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan (misalnya iPronto), armada manajemen dan aplikasi server. Adapun spesifikasi yang lain dimana OSGI akan dirancang untuk melengkapi standar perumahan yang ada, seperti orang – orang LonWorks (lihat kontrol jaringan), CAL, CEBus, HAVi, dan lain-lain.

Dalam penerapannya, OSGI secara mengejutkan telah mencapai efek untuk hampir semua aspek dari proses pengembangan perangkat lunak. OSGi merupakan teknologi pertama yang berhasil memecahkan masalah-masalah nyata dalam pengembangan perangkat lunak dengan menggunakan sebuah komponen sistem. Pengguna teknologi OSGi melihat pengurangan kompleksitas yang signifikan hampir dalam semua aspek pengembangan perangkat lunak. Kode program yang lebih mudah ditulis dan diuji, dapat dipakai ulang, membangun sistem menjadi lebih mudah, pembukaan yang lebih dapat diatur, bugs yang dapat dideteksi lebih cepat dan runtime yang menyediakan sebuah tanda yang memberitahu apa yang sedang berjalan.

Arsitektur OSGi terdiri dari :
• Layer
• Modules
• Services
• Deployment
• Implementation
• Conclusion

OSGi ARSITEKTUR

OSGi adalah sebuah set spesifikasi yang mendefinisikan sebuah komponen system dinamik untuk Java. Spesifikasi ini memungkinkan sebuah model pengembangan dimana aplikasi (secara dinamik) terdiri dari berbagai komponen yang berbeda. Spesifikasi OSGi memungkinkan komponen-komponennya untuk menyembunyikan implementasinya dari komponen lainnya ketika berkomunikasi melalui services dimana biasanya ketika hal ini berlangsung implementasi antar komponen dapat terlihat jelas. Model yang simple ini telah jauh mencapai efek dari segala aspek dari proses pengembangan software.

Sumber:
- Wikipedia
- http://saprida.blogspot.com/2011/11/open-services-gateway-initiative-osgi.html
 *dengan perubahan seperlunya*