OpenSource
OpenSource adalah
sistem pengembangan atau developement yang bukan di develop oleh suatu
individu atau perorangan, namun adanya komunitas user yang saling bekerjasama
dengan memanfaatkan source-code yang sudah ada dan dapat didapat
secara cuma-cuma.
Opensource mempunyai
budaya tersendiri, yaitu giving
culture atau bahasa
Indonesia budaya memberi. Dalam pengertiannya berarti, suatu user yang sudah diberi source-code tersebut
merasa termotivasi untuk dapat berkarya tanpa ada yang mencampuri yang
bertujuan untuk manfaat orang banyak.
Biasanya hasil
karya opensource dipublikasikan lewat situs
penyimpanansource terbesar seperti sourceforge, github atau
mungkin mempublikasikan karya mereka sendiri lewat blog atau website
pribadi. Indonesia sendiri punya beberapa komunitas OpenSource.
Seperti UGOS,IGOS dan beberapa komunitas lainnya yang tidak
disebutkan (karena sangat banyak di Internet).
OSGi
OSGi atau Open
Source Gateway initiative adalah sebuah
modul sistem dan layanan platform untuk bahasa pemrograman Java yang
mengimplementasikan komponen model yang komplit dan dinamik. Adapun
aplikasi atau komponen yang berasam dari paket bundle untuk pengerjaan, secara otomatis dapat dipasang
dari jarak jauh bahkan di start, stop atauupdate.
Untuk melakukan uninstall juga
tidak membutuhkan reboot ataurestart.
Layanan dari OSGi ini membolehkan rangkaian registry untuk
mendeteksi adanya beberapa layanan baru atau menghapus layanan tersebut dan
beradaptasi dengan tepat.
Perkembangan dari OSGi ini sangat cepat sekali. Yang tadinya
hanya fokus pada layanan gateway, kini sudah merambah pada aplikasi mobile
phonesampai open source Eclipse IDE.
OSGi allicance adalah sebuah organisasi standar terbuka yang
didirikan pada bulan Maret tahun 1999 yang bertugas dalam melakukan rutinitas
pada OSGi standar.
OSGi terkumpul dalam framework yang secara konsep dipisahkan
pada beberapa area seperti:
- Bundles: rangkaian yang merupakan
komponen jar dengan extra manifest header.
- Services: Layer yang menyambungkan
layanan dalam cara yang dinamik.
- Services Registry: Layanan Manajement
API.
- Life-Cycle: Manajemen API untuk
install, start, stop, update, uninstall.
- Modules: Layer yang mengenkapsulasi
dan deklerasi banyaknya ketergantungan.
- Security: Layer yang menangani aspek
keamanan dengan membatasi rangkaian tersebut.
- Execution Environment: Menyatakan
metode dan class tersedia pada platform tertentu.
Virtualization
Virtualisasi adalah simulasi software ataupun hardware yang
menjalankan software lainnya menggunakan Virtual
Machine atau VM. Ada banyak sekali bentuk
virtualisasi.
Beberapa tipe dari virtualisasi:
- Hardware
- Desktop
- Software
- Memory
- Storage
- Data
- Network
API
API atau Application Programming Interface adalah sebuah protokol yang digunakan
sebagai antar muka oleh komponen software untuk
berkomunikasi dengan yang lainnya.
Saat ini API banyak digunakan sebagai konten pembagi.
Singkatnya, API dapat membolehkan para komunitas web untuk membuat sebuah API
yang berguna untuk membagi konten dan data diantara para komunitas lainnya.
Dalam hal ini, konten yang dibuat dalam suatu tempat secara dinamik dapat
dipost dan diupdate pada lokasi yang berbeda-beda pada web.
COntohnya speerti:
·
Foto dapat dibagi
dari website seperti flickr, photobucket ke sosial website seperti facebook dan
myspace.
·
Konten dapat di
embed, seperti embed dari slideShare pada profil LinkedIn.
·
Konten video dapat
di embed pada website yang disediakan berlainan host.
·
Dan masih banyak
lagi.
API yang dimaksudkan untuk digunakan oleh lebih
dari satu bahasa tingkat tinggi pemrograman sering memberikan, atau ditambah
dengan fasilitas yang secara otomatis memetakan API untuk fitur (sintaksis atau
semantik) yang lebih alami dalam bahasanya. Hal ini dikenal sebagai language binding, dan API itu sendiri.
Tujuannya adalah untuk merangkum sebagian besar fungsi yang diperlukan dari
API, meninggalkan lapisan tipis yang tepat untuk setiap bahasa.