Kamis, 31 Desember 2009
java
Sejarah dan Pengertian Java
Java adalah bahasa pemrograman berorientasi obyek, sehingga untuk memperoleh pemahaman yang lebih baik terhadap materi pada bab-bab selanjutnya, perlu disampaikan beberapa topik mengenai pemrograman berorientasi obyek yang berhubungan langsung dengan topik-topik yang akan dibahas, diantaranya mengenai konsep pemrograman berorientasi obyek, inheritance dan constructor. Topik-topik lain dalam pemrograman berorientasi obyek akan dibahas lebih lanjut bila memang diperlukan.
Pemrograman berorientasi obyek merupakan suatu konsep pemrograman dengan mengambil konsep obyek sebagai komponen dasar dari pemrogramannya. Obyek merupakan suatu kesatuan komponen dan struktur yang di dalamnya berisi attribut yang selanjutnya dinamakan dengan member dan method yang merupakan kumpulan fungsional dari suatu obyek. Sebagai suatu analogi obyek, kita ambil obyek mobil dan lainnya. Obyek mobil ini mempunyai method berupa maju, mundur, jalan, berhenti, dan berputar. Dengan demikian dapat dikatakan bahwa obyek mempunyai sifat-sifat, yaitu:
• Member atau sering juga disebut dengan attribut yang menjelaskan variable, parameter atau keadaan (state) dari suatu obyek, misalkan pada obyek mobil terdapat member berupa roda, kemudi, seperti yang disebutkan di atas.
• Method atau sering juga disebut dengan behavior yang menjelaskan perilaku, kegiatan atau kerja dari suatu obyek, misalkan pada obyek mobil terdapat method maju, mundur, berhenti, seperti yang disebutkan diatas.
Menulis program berbasis obyek menggunakan bahasa Java dilakukan dengan cara membentuk sebuah class, menentukan variabel member dan menentukan method. Pembentukan class dari suatu obyek ini dinamakan dengan enkapsulisasi. Untuk menggambarkan suatu obyek digunakan suatu diagram yang dinamakan dengan class diagram.
• Nama Class
• Member
• Method
Bahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems.
Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang. Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini.
Teknologi baru ini dinamai “*7″ (Star Seven).Setelah era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang.
Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner.
Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemeritaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995. Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja “bapak java”, James Gosling.
Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi “Java”. Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling.Versi Awal Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0.
• Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:
• Java.lang : Peruntukan kelas elemen-elemen dasar.
• Java.io : Peruntukan kelas input dan output, termasuk penggunaan berkas.
• Java.util : Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan
• Java.net : Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
• Java.awt : Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
• Java.applet : Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.
Java : Menentukan Bilangan Ganjil dan Genap
Tadi siang ciebal abis Quiz mata kuliah java fundamental soalnya disuruh menentukan bilangan ganjil dan genap serta membuat program penghitung nilai akhir mahasiswa.
Kali ini saya akan berbagi tentang program java untuk menentukan bilangan ganjil dan genap dengan input dialog. Kalau program menentukan nilai akhir mahasiswa di sesion selanjutnya aja yah.
Berikut Source Codenya :
// Program Bilangan Genap-Ganjil Oleh Ciebal
import javax.swing.*;
public class ganjil_genap {
public static void main (String[]args){
System.out.println("Program Penentu Bilangan Ganjil - Genap");
String input=JOptionPane.showInputDialog("Masukan Agka :");
int bilangan=Integer.valueOf(input);
if (bilangan%2==0)
System.out.println("Angka "+ bilangan +" = Bilangan Genap"); // menampilkan apabila bilangan Genap
else
System.out.println("Angka "+ bilangan +" = Bilangan Ganjil"); // menampilkan apabila bilangan Ganjil
}
}
Sedikit penjelasan tentang code di atas :
import javax.swing.*; wajib digunakan apabila program menampilkan input dialog.
String input=JOptionPane.showInputDialog(“Masukan Agka :”); ini adalah untuk menampilkan input dialog ” Masukan Angka :”
Selasa, 22 Desember 2009
opensource
Opensource
Perangkat lunak sumber terbuka (Inggris: open source software) adalah jenis perangkat lunak yang kode sumber-nya terbuka untuk dipelajari, diubah, ditingkatkan dan disebarluaskan. Karena sifat ini, umumnya pengembangannya dilakukan oleh satu paguyuban terbuka yang bertujuan mengembangkan perangkat lunak bersangkutan. Anggota-anggota paguyuban itu seringkali sukarela tapi bisa juga pegawai suatu perusahaan yang dibayar untuk membantu pengembangan perangkat lunak itu. Produk perangkat lunak yang dihasilkan ini biasanya bersifat bebas dengan tetap menganut kaidah dan etika tertentu.Semua perangkat lunak bebas adalah perangkat lunak sumber terbuka, tapi sebaliknya perangkat lunak sumber terbuka belum tentu perangkat lunak bebas, tergantung kaidah yang dipakai dalam melisensikan perangkat lunak sumber terbuka tersebut
Perbedaan perangkat lunak sumber terbuka dengan perangkat lunak gratis
Serupa dengan perangkat lunak gratis, perangkat lunak sumber terbuka merupakan perangkat lunak yang juga dapat diperoleh dan didistribusikan secara bebas. Berbeda halnya dengan perangkat lunak gratis yang belum tentu boleh dilihat kode aslinya, perangkat lunak sumber terbuka dapat dibaca kode-kode pemrograman sesuai aslinya. Kode pemrograman ini dapat juga diubah, dimodifikasi dan dikembangkan sendiri oleh kita dengan tetap memperhatikan kaidah yang berlaku sesuai dengan lisensi perangkat lunak tersebut.
Sebagai contoh untuk memahami perbedaan antara kedua jenis perangkat ini dapat diilustrasikan misalnya perusahaan Microsoft pada suatu saat menjadikan salah satu produknya menjadi perangkat lunak gratis. Hal ini berarti siapapun dapat mendapatkannya secara gratis. Akan tetapi anda tidak diperkenankan untuk kemudian memodifikasi dan mengembangkan produk perangkat lunak tersebut.
Dapat disimpulkan, perangkat lunak sumber terbuka sudah pasti merupakan perangkat lunak gratis, namun sebaliknya perangkat lunak gratis belum tentu merupakan perangkat lunak sumber terbuka.
Skema Lisensi perangkat lunak sumber terbuka, Open Source Software (OSS)
Jenis Penggunaan OSS | Lisensi OSS yang dapat dipergunakan |
---|---|
Tidak merubah source code | Semua jenis lisensi OSS (GPL, BSD, MPL, LGPL, Lisensi MIT) |
Merubah source code untuk kebutuhaninternal | Semua jenis lisensi OSS (GPL, BSD, MPL, LGPL, Lisensi MIT) |
Merubah source code dan mendistribusikansebagai OSS | Semua jenis lisensi OSS (GPL, BSD, MPL, LGPL, Lisensi MIT) |
Merubah source code dan mendistribusikansebagai proprietary software | BSD, Lisensi MIT |
Menggunakan OSS sebagai salah satu komponen/library software yang didistribusikan sebagai proprietary software | BSD, MIT License, LGPL |
Freeware (Opensource) Video Converter (flv, avi, asf, 3gp etc )
Kategori SoftwareSaat ini untuk sekedar konversi audio video sungguh lebih mudah. Sebelumnya jika kita ingin mendapatkan program gratis konversi video misalnya, mungkin bisa kita dapatkan, tetapi biasanya banyak keterbatasan yang dimiliki. Apalagi untuk konversi video seperti Flash Video (FLV) yang sudah menjadi standar Video di Internet, sebelumnya sangat sulit ditemukan software yang benar-benar gratis. |
IBM PC-DOS
opensource
Opensource
Perangkat lunak sumber terbuka (Inggris: open source software) adalah jenis perangkat lunak yang kode sumber-nya terbuka untuk dipelajari, diubah, ditingkatkan dan disebarluaskan. Karena sifat ini, umumnya pengembangannya dilakukan oleh satu paguyuban terbuka yang bertujuan mengembangkan perangkat lunak bersangkutan. Anggota-anggota paguyuban itu seringkali sukarela tapi bisa juga pegawai suatu perusahaan yang dibayar untuk membantu pengembangan perangkat lunak itu. Produk perangkat lunak yang dihasilkan ini biasanya bersifat bebas dengan tetap menganut kaidah dan etika tertentu.
Semua perangkat lunak bebas adalah perangkat lunak sumber terbuka, tapi sebaliknya perangkat lunak sumber terbuka belum tentu perangkat lunak bebas, tergantung kaidah yang dipakai dalam melisensikan perangkat lunak sumber terbuka tersebut
//if (window.showTocToggle) { var tocShowText = "tampilkan"; var tocHideText = "sembunyikan"; showTocToggle(); }
//]]>
Perbedaan perangkat lunak sumber terbuka dengan perangkat lunak gratis
Serupa dengan perangkat lunak gratis, perangkat lunak sumber terbuka merupakan perangkat lunak yang juga dapat diperoleh dan didistribusikan secara bebas. Berbeda halnya dengan perangkat lunak gratis yang belum tentu boleh dilihat kode aslinya, perangkat lunak sumber terbuka dapat dibaca kode-kode pemrograman sesuai aslinya. Kode pemrograman ini dapat juga diubah, dimodifikasi dan dikembangkan sendiri oleh kita dengan tetap memperhatikan kaidah yang berlaku sesuai dengan lisensi perangkat lunak tersebut.
Sebagai contoh untuk memahami perbedaan antara kedua jenis perangkat ini dapat diilustrasikan misalnya perusahaan Microsoft pada suatu saat menjadikan salah satu produknya menjadi perangkat lunak gratis. Hal ini berarti siapapun dapat mendapatkannya secara gratis. Akan tetapi anda tidak diperkenankan untuk kemudian memodifikasi dan mengembangkan produk perangkat lunak tersebut.
Dapat disimpulkan, perangkat lunak sumber terbuka sudah pasti merupakan perangkat lunak gratis, namun sebaliknya perangkat lunak gratis belum tentu merupakan perangkat lunak sumber terbuka.
Skema Lisensi perangkat lunak sumber terbuka, Open Source Software (OSS)
Jenis Penggunaan OSS | Lisensi OSS yang dapat dipergunakan |
---|---|
Tidak merubah source code | Semua jenis lisensi OSS (GPL, BSD, MPL, LGPL, Lisensi MIT) |
Merubah source code untuk kebutuhaninternal | Semua jenis lisensi OSS (GPL, BSD, MPL, LGPL, Lisensi MIT) |
Merubah source code dan mendistribusikansebagai OSS | Semua jenis lisensi OSS (GPL, BSD, MPL, LGPL, Lisensi MIT) |
Merubah source code dan mendistribusikansebagai proprietary software | BSD, Lisensi MIT |
Menggunakan OSS sebagai salah satu komponen/library software yang didistribusikan sebagai proprietary software | BSD, MIT License, LGPL |
Freeware (Opensource) Video Converter (flv, avi, asf, 3gp etc )
Kategori Software
Saat ini untuk sekedar konversi audio video sungguh lebih mudah. Sebelumnya jika kita ingin mendapatkan program gratis konversi video misalnya, mungkin bisa kita dapatkan, tetapi biasanya banyak keterbatasan yang dimiliki. Apalagi untuk konversi video seperti Flash Video (FLV) yang sudah menjadi standar Video di Internet, sebelumnya sangat sulit ditemukan software yang benar-benar gratis. |
Salah satu layanan video di Internet adalah YouTube, yang merupakan layanan video terbesar di dunia, dengan hit puluhan juta per hari. Format yang digunakan adalah Flash Player (FLV), yang pada dasarnya hanya bisa di lihat secara online melalui web browser ( di Mozilla Firefox, bisa kita download dengan tambahan plugins tertentu).
Dengan banyaknya format audio video, maka terkadang kita memerlukan konversi berbagai format yang ada ke format umum yang bisa di putar di sembarang player atau di ubah ke VCD. Untuk melakukan hal ini, saat ini ada library FFmpeg yang dikembangkan oleh ffmpeg team. FFmpeg sebenarnya merupakan kumpulan berbagai library untuk merekam, menjalankan dan mengkonversi berbagai format audio video. Library ini telah digunakan oleh banyak aplikasi/proyek. FFMpeg dikembangkan dibawah Linux, tetapi telah dikompile ke berbagai format, sehingga bisa digunakan oleh hampir semua Sistem Operasi termasuk Windows.
Proyek ini sebenarnya terdiri dari beberapa komponen, diantaranya adalah ffmpeg itu sendiri yang merupakan command line tool untuk mengkonversi dari satu format video ke format lainnya, tools ini juga mendukung untuk menangkap dan encoding dari TV card secara real time. Komponen lainnya adalah ffplay, merupakan simple media player yang dapat digunakan untuk menjalankan berbagai format video. Dan masih ada beberapa komponen lainnya. Silahkan dilihat informasi di Wikipedia tentang FFmpeg untuk lebih lengkapnya, atau langsung mengunjungi web sitenya.
Bagi seorang ahli dan sudah biasa dengan command prompt, bisa saja download aplikasi langsung library ffmpeg dan langsung melakukan konversi file melalui command line. Tetapi bagi kebanyakan orang, tentu ini bukan hal yang mudah. Apalagi jika harus mengkonversi file dengan jumlah yang banyak, sehingga kita memerlukan tools atau aplikasi tambahan agar lebih mudah. Mengingat fasilitas yang begitu banyak, maka banyak proyek yang mengembangkan berdasarkan library ini. Salah satunya adalah WinFF. Dengan aplikasi open source ini, yang dibuat dengan Program Lazarus ( IDE mirip Delphi dengan Freepascal ) kita dengan mudah mengkonversi berbagai format audio maupun video, termasuk format FLV. Yang perlu diingat bahwa tidak semua file flv bisa dikonversi, karena kemungkinan file tersebut menggunakan teknologi (codec) yang terbaru). Untuk melihat proyek apa saja yang menggunakan FFmpeg bisa dilihat disini.
IBM PC-DOS
IBM mulai memperkenalkan komputer mainframe dengan OS OS/360 pada masa tahun 1960-an. Diikuti dengan Unix yang dikembangkan pada tahun 1969 oleh sebuah grup karyawan dari AT&T.
Perkembangan komputer ditandai dengan OS PC-DOS dan MS DOS oleh IBM an mocrosoft seiring dengan penggunaan desk top yang semakin luas. OS merupakan software yang tidak sekedar software, karena OS menjadi ibu software-software lain yang berjalan di dalamnya. Singkatnya OS membentuk suatu platform agar aplikasi-aplikasi dapat berjalan di atasnya.
Tugas OS adalah mengelola resource, secara umum terbagi atas:
1.Pengelolaan Proses.
Setiap program yang berjalan di dalam komputer merupakan suatu proses.
2.Pengelolaan Memory.
Disk storage merupakan salah satu jenis memory, karena dapat digunakan sebagai virtual memory yang menangani proses-proses yang berjalan.
3.Disk dan Sistem File.
Pengelolaan file dan directory di dalam disk drive termasuk salah satu tugas penting OS. Pada OS keluarga Unix, penamaan file dan directory adalah case sensitive atau membedakan penggunaan huruf besar dan kecil, contohnya nama file surat.txt dan Surat.Txt dalam satu directory diperkenankan, dan merupakan dua fi le yang berbeda.
Hal ini tidak diperkenankan dalam OS Windows, di mana penamaan file dan directory adalah case insensitive, Windows juga tidak memperbolehkan serangkaian karakter tertentu untuk penamaan fi le dan directory, mi salnya seperti karakter “?”, “*”, “<”. “>”, dan seterusnya.
Perbedaan ini cukup mendasar untuk dipahami saat Anda menggunakan OS yang berbeda dari sebelumnya, misalnya saat Anda mengganti OS yang digunakan oleh web server dan melakukan migrasi file, pastikan file-file yang digunakan telah kompatibel dan sesuai dengan OS yang baru. Jika tidak, maka Anda harus melakukan penyesuaian nama file. Sistem file (file system) merupakan salah satu perbedaan yang juga mendasar pada sistem operasi yang tersedia, sistem file merupakan sebuah metode untuk menyimpan dan mengorganisasi file agar dapat diakses de ngan mudah.
Contoh sistem file yang popular adalah NTFS yang merupakan sistem file standar untuk Windows NT, termasuk versi-versi Windows di atasnya seperti Windows 2000, Windows XP, hingga Windows Vista.
Contoh lainnya adalah ext2 dan ext3, yang merupakan sistem file untuk kernel Linux. Kebanyakan distribusi Linux mendukung sistem file ext2, ext3, ReiserFS, GFS, NILFS, FAT, XFS, JFS, NTFS, dan lain sebagainya. Mac OS X mendukung HFS+ sebagai sistem file utamanya. HFS+ merupakan pengembangan dari Hierarchical File System dari MAC OS versi awal. Mac OS X memiliki fasilitas untuk membaca dan menulis dalam sistem file lain seperti FAT, NTFS, dan lain-lain.
4.Jaringan.
Sebuah OS dewasa ini harus mampu menangani jaringan dengan dukungan berbagai macam protokol jarringan yang tersedia, terutama protokol TCP/IP yang saat ini paling banyak digunakan.
Dengan adanya jaringan juga memungkinkan komputer yang walaupun berbeda OS dapat berkomunikasi satu sama lain dan melakukan sharing resource.
5. Security.
Security juga merupakan hal penting yang harus dimiliki OS. Hal ini disebabkan karena dengan adanya jaringan semakin mempermudah proses komunikasi dan distribusi file antarkomputer.
Contohnya dengan adanya jaringan, maka komputer Anda seperti rumah dengan pintu dan jendela yang terbuka agar tamu dapat masuk berkunjung. Dalam keadaan seperti itu, perlu dijaga dari sisi keamanan agar tidak kedatangan tamu tak diundang, misalnya dengan memasang kawat nyamuk untuk mencegah nyamuk masuk. Implementasi “kawat nyamuk” ini di dalam OS dapat berupa otentifi kasi user, hak akses resource, penanganan port, dan firewall. Salah satu pendapat yang keliru menyangkut masalah security adalah kekebalan OS terhadap virus, jika saat ini mayoritas virus menyerang OS Windows, tidak berarti OS lain tidak dapat terkena virus.
Pada prinsipnya, virus sama dengan software biasa, karena itu jika virus diciptakan sesuai dengan target OS tertentu, maka jadilah virus tersebut sebuah aplikasi yang berjalan pada OS yang dituju, entah OS tersebut adalah Linux, Mac OS X, Windows, ataupun OS lainnya.
Lalu me ngapa virus lebih banyak menyerang OS Windows? Hal ini tidak lepas dari market OS pada komputer desktop yang saat ini didominasi Windows, tetapi juga tidak dapat dipungkiri sistem operasi seperti Unix/Linux memiliki environment yang relatif lebih susah ditembus oleh virus, walau tidak berarti dijamin bebas virus.
6.Grafik.
Bagi banyak pengguna komputer, Graphical User Interface (GUI) menjadi daya tarik tersendiri. Hal ini tidak mengherankan karena GUI merupakan media interaksi antara manusia dan komputer, analoginya sebagaimana binatang peliharaan yang ramah tentu lebih disukai ketimbang binatang peliharaan yang penampilan luarnya tidak bersahabat. Momok tidak bersahabat juga pernah dialami OS Unix/Linux dan keluarganya terutama jika dibandingkan dengan OS Windows, tampilan Unix/Linux dirasakan kurang bersahabat bagi end user pada masa lalu, tetapi saat ini kebanyakan distro Linux telah memiliki GUI memikat. Mac OS X sendiri telah membuat terobosan besar pada tahun 2001 dengan perubahan inovatif dan dramatis pada GUI dari Mac OS ke Mac OS X.
7. Device Driver.
OS boleh berbeda, tetapi hardware yang digunakan bisa jadi sama. Agar hardware tersebut dapat dikenali pada OS, diperlukan device driver. Jadi device driver merupakan software agar sistem dapat berinteraksi dengan hardware, tidak semua device driver disediakan oleh OS, tetapi device driver umumnya disediakan oleh vendor hardware yang digunakan.
Kernel
Istilah kernel sering digunakan pada OS Unix/Linux dan keluarganya, tetapi sebenarnya kernel digunakan dan terdapat dalam setiap OS. Apa yang disebut kernel itu sendiri merupakan komponen pusat yang menghubungkan antara software aplikasi dan hardware komputer. Di dalam OS, kernel merupakan core atau intinya. Secara arsitektur desain, kernel dibagi atas:
1.Monolithic Kernel.
Mengintegrasikan banyak fungsi di dalam kernel serta menyediakan lapisan abstraksi hardware secara penuh.
2.Microkernel.
Menyediakan sedikit fungsi dari abstraksi hardware dan menggunakan aplikasi yang berjalan di atasnya (server) untuk melakukan beberapa fungsi lainnya.
3.Hybrid Kernel.
Microkernel yang dimodifi kasi, dengan tambahan fungsi-fungsi untuk meningkatkan performa.
4.Exokernel.
Menyediakan abstraksi hardware secara minimal, sehingga program dapat mengakses hardware secara langsung.