Total Tayangan Halaman

UNIVERSITAS GUNADARMA

studensite gunadarma

Rabu, 23 Januari 2013

Definisi API (Application Programming Interface) Beserta Penerapannya

     API (Application Programming Interface) 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 dalam system 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 system.
 
Cara Memakai API :
- Dilakukan dengan mengimpor package/kelas import java.util.Stack;
- Ada beberapa kelas bernama sama dipackage yang berbeda, yaitu :
- import salah satu dan gunakan nama lengkap untuk yang lain, atau
- gunakan nama lengkap semua kelas

Ada tiga jenis Bahasa Pemrograman Java Application Programming Interface (API):
* inti resmi Java API, yang terdapat dalam JDK atau JRE, dari salah satu edisi dari Java Platform. Tiga edisi dari Java Platform adalah Java ME (Micro edition), Java SE (Standard edition), dan Java EE (Enterprise edition).

* Resmi opsional API yang dapat didownload secara terpisah. Spesifikasi API ini didefinisikan sesuai dengan Spesifikasi Jawa Request (JSR), dan kadang-kadang beberapa API ini kemudian dimasukkan dalam API inti dari platform (contoh yang paling terkenal dari jenis ini adalah swing).

* API tidak resmi, yang dikembangkan oleh pihak ketiga, tetapi tidak berkaitan dengan JSRs apapun.

Contoh Terapan API :
 

 
Twitter API dimanfaatkan pada blackberry
 
 
 
Facebook API dimanfaatkan pada platform mobile
 
 
 
API Google Maps dimanfaatkan pada mobile
 
 
 
Berikut ini adalah sebagian daftar Application Programming Interface (API) untuk Java Programming Language :
  • Java Platform, Standard Edition (Java SE)
  • Bundled 1.1.1 API (bagian dari standar download)
  • Opsional 1.1.2 API (download terpisah)
  • Java Platform, Enterprise Edition (Java EE)
  • Bundled 1.2.1 API (bagian dari standar download)
  • Unofficial API (Dirilis oleh pihak ketiga)
  • Java Platform, Micro Edition (Java ME)
  • Opsional 1.2.2 API (download terpisah)
 
     Pihak-pihak ketiga dapat dengan bebas mengimplementasikan spesifikasi JSR API resmi (bahkan untuk API inti dari bahasa), memberikan bahwa mereka menyesuaikan diri dengan Teknologi Kompatibilitas Kit (TCK) untuk JSR ini (yang TCK adalah paket tes yang memeriksa kesesuaian dari implementasi untuk JSR). The result of this freedom is that many official APIs have more implementations than the Sun’s Reference implementation (RI). Hasil dari kebebasan ini adalah bahwa banyak API resmi memiliki lebih implementasi daripada Matahari pelaksanaan Referensi (RI). Anda dapat menggunakan kelas Java dan API untuk mengakses konten di berbagai server konten.
 
 
The DB2 Content Management pusat informasi yang menyediakan dokumentasi API berikut:
  1. Kelas Java dan API
  2. JavaBeans
  3. C + + kelas dan API
  4. DB2 Content Manager aturan sistem konektor
  5. Tabel kontrol sistem
  6. Perpustakaan pengguna server keluar
 
 

Virtualization Beserta Softwarenya

     Virtualization adalah penciptaan sebuah versi virtual (bukan sebenarnya)  suatu entitas, seperti sistem operasi, server, perangkat penyimpanan atau sumber daya jaringan. -
Anda mungkin tahu sedikit tentang virtualisasi jika Anda pernah membagi hard disk menjadi beberapa partisi. Partisi pembagian satu hard disk menjadi dua hard disk secara logik.
Virtualisasi sistem operasi adalah penggunaan perangkat lunak untuk memungkinkan satu perangkat keras untuk menjalankan beberapa sistem operasi pada saat yang sama.  Teknologi ini dimulai pada mainframe beberapa dekade yang lalu agar administrator untuk menghindari pemborosan daya proses mahal atau dengan kata lain meningkatkan efisiensi.
Pada tahun 2005, perangkat lunak virtualisasi diadopsi lebih cepat daripada yang dibayangkan, termasuk para ahli. Tiga bidang IT di mana virtualisasi paling berkembang adalah  virtualisasi jaringan, virtualisasi penyimpanan dan virtualisasi server:
  • Virtualisasi jaringan (Network virtualization) adalah metode menggabungkan sumber daya yang tersedia dalam jaringan dengan cara membagi bandwidth yang tersedia ke dalam beberapa channel, yang masing-masing saling independen satu dengan yang yang lain, dan masing-masing yang dapat ditugasi (atau dialih-tugaskan) ke dalam beberapa server atau perangkat secara real time. Idenya adalah bahwa virtualisasi menyembunyikan kompleksitas jaringan dengan cara membagi jaringan menjadi bagian-bagian lebih mudah dikelola, sangat mirip dengan konsep mempartisi harddisk untuk memudahkan untuk pengelolaan file.
  • Virtualisasi penyimpanan adalah penggabungan penyimpanan fisik dari jaringan beberapa perangkat penyimpanan ke dalam apa yang tampaknya menjadi satu perangkat penyimpanan yang dikelola oleh  konsol pusat  Penyimpanan virtualisasi yang umum digunakan di storage area networks (SAN).
  • Virtualisasi server (Server virtualization) adalah penyembunyian sumber daya server (termasuk jumlah dan identitas individu server fisik, prosesor, dan sistem operasi) dari server pengguna. Tujuannya adalah untuk menghindarkan pengguna dari keharusan untuk memahami dan mengatur rincian rumit sumber daya server dengan tetap memungkinkan resource sharing untuk meningkatkan pemanfaatan sumber daya dan memelihara kapasitas untuk expansion.
     Virtualisasi dapat dilihat sebagai bagian dari trend secara keseluruhan di perusahaan IT yang meliputi autonomic computing, sebuah skenario di mana lingkungan TI akan mampu mengelola dirinya sendiri didasarkan pada aktivitas yang dihadapi, dan utility computing, di mana kekuatan pemrosesan komputer dianggap sebagai utilitas yang hanya dibayar oleh klien jika diperlukan atau digunakan.  Tujuan umum virtualisasi adalah sentralisasi tugas administratif dengan dan meningkatkan skalabilitas dan beban kerja.

Contoh softwarenya :

Spesifikasi & Arsitektur Open Service Gateway Initiative (OSGI)

The OSGi Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif, sekarang nama kuno) adalah terbuka organisasi standar yang didirikan pada Maret 1999. Aliansi dan anggota-anggotanya telah ditentukan yang Java berbasis layanan platform yang dapat dikelola dari jarak jauhInti bagian dari spesifikasi adalah sebuah kerangka kerja yang mendefinisikan suatu manajemen siklus hidup aplikasi model, layanan registry, sebuah lingkungan Eksekusi dan Modul. Berdasarkan kerangka ini, sejumlah besar OSGi layers, API, dan Jasa telah ditetapkan.

OSGi teknologi adalah sistem modul dinamis untuk Java ™

OSGi teknologi menyediakan layanan berorientasi, komponen berbasis lingkungan untuk para pengembang dan menawarkan cara-cara standar untuk mengelola siklus hidup perangkat lunak. Kemampuan ini sangat meningkatkan nilai berbagai komputer dan perangkat yang menggunakan platform Java.

Pengadopsi teknologi OSGi manfaat dari peningkatan waktu ke pasar dan mengurangi biaya pengembangan karena teknologi OSGi menyediakan integrasi pra-dibangun dan pra-komponen subsistem diuji. Teknologi ini juga mengurangi biaya pemeliharaan dan kemajuan aftermarket baru peluang unik karena jaringan dapat dimanfaatkan untuk secara dinamis mengupdate atau memberikan layanan dan aplikasi di lapangan.

Spesifikasi:

OSGi spesifikasi yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk umum secara gratis di bawah Lisensi Spesifikasi OSGi. OSGi Alliance yang memiliki kepatuhan program yang hanya terbuka untuk anggota. Pada Oktober 2009, daftar bersertifikat OSGi implementasi berisi lima entri.

 
 
 
Arsitektur:

Setiap kerangka yang menerapkan standar OSGi menyediakan suatu lingkungan untuk modularisasi aplikasi ke dalam kumpulan yang lebih kecil. Setiap bundel adalah erat-coupled, dynamically loadable kelas koleksi, botol, dan file-file konfigurasi yang secara eksplisit menyatakan dependensi eksternal mereka (jika ada).  Kerangka kerja konseptual yang dibagi dalam bidang-bidang berikut:
  1. Bundles
    Bundles adalah normal jar komponen dengan nyata tambahan header
  2. Services
    Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan menerbitkan-menemukan-model mengikat Jawa lama untuk menikmati objek (POJO).
  3. Services
    API untuk jasa manajemen (ServiceRegistration, ServiceTracker dan ServiceReference).
  4. Life-Cycle
    API untuk manajemen siklus hidup untuk (instal, start, stop, update, dan uninstall) bundel.
  5. Modules
    Lapisan yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode).
  6. Security
    Layer yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra-didefinisikan kemampuan.
  7. Execution Environment
    Mendefinisikan metode dan kelas apa yang tersedia dalam platform tertentuTidak ada daftar tetap eksekusi lingkungan, karena dapat berubah sebagai Java Community Process menciptakan versi baru dan edisi Jawa. Namun, set berikut saat ini didukung oleh sebagian besar OSGi implementasi:
    •    CDC-1.1/Foundation-1.1 CDC-1.1/Foundation-1.1
    •    OSGi/Minimum-1.0 OSGi/Minimum-1.0
    •    OSGi/Minimum-1.1 OSGi/Minimum-1.1
    •    JRE-1.1 JRE-1.1
    •    From J2SE-1.2 up to J2SE-1.6 Dari J2SE-1.2 hingga J2SE-1,6
    •    CDC-1.0/Foundation-1.0 CDC-1.0/Foundation-1.0
Referensi:
http://en.wikipedia.org/wiki/OSGi
http://www.osgi.org/Main/HomePage

Pengikut