Selasa, 24 Desember 2013

Sejarah Singkat Java

Sejarah Singkat Java

   Pada tahun 1991, sekelompok insinyur SUN yang dipimpin Patrick Naughtonan James Gosling ingin merancang bahasa komputer untuk perangkat consumer seperti cable Tv box. Karena perangkat itu tidak mempunyai banyak memori, bahasa harus berukuran kecil dan menghasilkan kode yang liat, maka bahasa harus bebas dari arsitektur manapun. Proyek ini diberi nama kode Green.
   Nama JAVA sendiri terinspirasi pada saat orang–orang di proyek Green sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal bijih kopi. Kebutuhan kecil, liat dan kode netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba. Niklaus Wirth, pencipta bahasa Pascal telah merancang bahasa portable yang menghasilkan kode antara untuk mesin hipotesis.
   Pada tahun 1995, Netscape memutuskan membuat browser yang dilengkapi dengan Java. Setelah itu diikuti IBM, Symantec, Inspire, bahkan Microsoft. Bahasa Java merupakan karya Sun Microsystem Inc. Rilis resmi dilakukan pada Nopember 1995. Maskot Java adalah Duke. Dua bulan berikutnya Netscape menjadi perusahaan pertama yang memperoleh lisensi bahasa Java dari Sun.

Pengenalan Java

   Dalam Java ada 2 jenis program berbeda, yaitu aplikasi dan applet. Keduanya merupakan bagian dari execute, dimana execute merupakan salah satu fase kelima dalam siklus program Java. Aplikasi adalah program yang biasanya disimpan dan di eksekusi dari komputer lokal. Applet adalah program yang biasanya disimpan pada komputer yang jauh,yang dikoneksikan pemakai lewat web browser. Komputer jauh menjalankan web server yang memberi layanan terhadap permintaan web browser.
   Kebanyakan bahasa pemrograman modern berdiri di atas pustaka-pustaka kelas yang telah ada untuk mendukung fungsionalitas bahasanya. Pada bahasa Java, kelompok-kelompok kelas yang berkaitan erat dimasukkan dalam satu paket, bervariasi sesuai edisi Java.
   Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai system operasi dan bersifat open source. 
   Aplikasi dengan teknologi Java secara umum adalah aplikasi serba guna yang dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE).
   Java adalah bahasa yang dapat dijalankan dimanapun dan di sembarang platform apapun, di beragam lingkungan: Internet, intranets, consumer electronic products, dan computer applications. Untuk beragam aplikasi yang dibuat dengan bahasa Java, Java dipaketkan dalam edisi-edisi berikut:

• Java 2 Standar Edition (J2SE)
 J2SE menyediakan lingkungan pengembangan yang kaya fitur, stabil, aman, dan cross-platform. Edisi ini mendukung konektivitas basis data, rancangan user interface, masukkan/ keluaran input/output), dan pemrograman jaringan (network programming), dan termasuk sebagai paket-paket dasar bahasa Java.

• Java 2 Enterprise Edition (J2EE)
 J2EE berisi paket-paket J2SE serta paket-paket untuk mendukung pengembangan Enterprise JavaBeans, Java Servlets, JavaServer Pages, XML, dan kendali transaksi yang fleksibel.

• Java 2 Micro Edition (J2ME)
 J2ME adalah untuk beragam consumer electronic product, seperti pager, cell phone, handheld PDA, dll. Java bukan turunan langsung dari bahasa pemrograman manapun, juga sama sekali tidak kompatibel dengan semuanya. Model objek Java adalah sederhana dan mudah dikembangkan, namun sejalan dengan itu, nilangan dan tipe data sederhana lain dianggap sebagai non-objek berkinerja tinggi.
   
   OOP (object oriented programming) adalah cara ampuh dalam pengorganisasian dan pengembangan perangkat lunak. Pada OOP, program komputer sebagai sekelompok objek yang saling berinteraksi. Objek-objek ini ada secara secara independent yang mempunyai aturan-aturan berkomunikasi dengan objek lain dan untuk memerinthakan objek lain guna meminta informasi tertentu atau meminta objek lain mengerjakan sesuatu.

 Bahasa statically typed
   Semua objek dideklarasikan terlebih dahulu sebelum digunakan. Melalui fitur ini kode program lebih dapat dioptmasi untuk menghasilkan program berkinerja tinggi.

 Bahasa dikompilasi
   Sebelum menjalankan program di bahasa Java, program dikompilasi menggunakan Java Compiler. Kompilais akan menghasilkan file “bytecode” yang serupa fungsinya dengan file kode mesin. Program “bytecode” yang dihasilkan dapat di eksekusi di sembarang Java Interpreter. Java Interpreter membaca file “bytecode” dan menterjemahkan perintah “bytecode” menjadi perintah-perintah bahasa mesin yang dapat di eksekusi mesin.

 Bahasa yang aman
   Java menggunakan model pengamanan 3 lapis untuk melindungi sistem dari Untrusted Java Code.
  1. Bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan-aturan dasar bahasa Java
  2. Class loader menangani pemuatan kelas Java ke runtime interpreter.
  3. Manajer keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem windowing.
   Selain itu Java menyediakan beragam teknik pengaman, yaitu:
  1. Bahasa dirancang untuk mempersulit eksekusi kode perusak
  2. Program Java dikompilasi menajdi serangkaian bytecode.
  3. Java mempunyai pengamanan terhadap applet.
 Bahasa independen    terhadap platform
   Platform independence merupakan kemampuan program bekerja di sistem operasi atau sistem komputer berbeda. Bahasa Java adalah bahasa yang secara sempurna tidak bergantung platform.

 Bahasa yang didukung garbage collector
   Artinya, program tidak perlu menghapus sendiri objek-objek yang tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang terdapat di bahasa yang memungkinkanalokasi dinamis.

 Bahasa yang tegar
   Java interpreter memeriksa semua akses sistem yang dilakukan. Program java tidak dapat menyebabkan crash terhadap sistem. Java mempunyai mekanisme exception handling yang ampuh. Exception-handling menyediakan cara untuk memisahkan antara bagian penanganan kesalahan dengan bagian kode normal sehingga menuntun ke struktur kode program yang lebih bersih dan menjadikan aplikasi lebih tegar.

Karakteristik Java

1. Open Source 
   Java adalah bahasa yang bersifat open source atau free, dengan kata lain semua orang dapat mempelajarinya dengan mudah.

2. Berorientasi Objek (Object Oriented)
   Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut. 

3. Robust
   Java mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman.

4. Portable 
   Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang.

5. Case-sensitive 
   Java bersifat case-sensitive, artinya java membedakan huruf kecil dengan huruf besar atau kesamaan elemen suatu statement.

Struktur Program Java

   Penulisan program Java dapat dilakukan pada semua teks editor yang paling disukai baik itu editor handal semacam eclipse dan netbeans ataupun editor simple seperti editplus, dan crimson. Dalam pembuatan program java yang harus diperhatikan dalam pembuatan program java adalah penulisan huruf besar dan kecil karena java memiliki sifat Case Sensitive. Berikut adalah bentuk umum dari penulisan program Java:

   Pertama dalam program Java minimal terdapat sebuah class, dimana nama dari class tersebut diusahakan sama dengan nama file Java (arti dari class akan dijelaskan pada pertemuan selanjutnya), dan setiap class harus dibuka dengan tanda ‘{‘ dan ditutup dengan tanda ‘}’.
Contoh:
class Hello{
public static void main(String[] args)
{
(tulis code/ program disini)
}
}

Metode main () didefinisikan sebagai public static void, berikut penjelasannya:
 public, berarti metode ini dapat dipanggil dari luar class
 static, menunjukkan metode ini bersifat sama untuk semua class
 void, berarti metode ini tidak mengembalikan nilai.
 Argument args [ ] adalah array objek string argument baris-baris perintah yang dilewatkan ke kelas yang di eksekusi.

   Didalam penulisan program Java kita dapat membuat sebuah komentar, ada dua jenis tipe komentar pada Java, yang pertama menggunakan pasangan simbol /* dan */. Semua tulisan yang berada dalam tanda tersebut akan diperlakukan sebagai komentar. Yang kedua menggunakan awalan

Sabtu, 26 Oktober 2013

Pseudo-code

Pengertian Pseudo-code
Definisi Pseudo-code

Kode atau tanda yang menyerupai (pseudo) atau merupakan pejelasan cara menyelesaikansuatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma.Problem: mencari bilangan terbesar dari dua bilangan yang diinputkanContoh Pseudo-code:
1. Masukkan bilangan pertama
2. Masukkan bilangan kedua
3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakanlangkah 5.4. Tampilkan bilangan pertama
5. Tampilkan bilangan kedua
a.Pseudo-codea. Pseudo-code adalah kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah.
b. Pseudo-code sering digunakan oleh seseorang untuk menuliskan algoritma dari suatu permasalahan.
c. Pseudo-code berisikan langkah-langkah untuk menyelesaikan suatu permasalahan [hampir sama dengan algoritma], hanya saja bentuknya sedikit berbeda dari algoritma.
d. Pseudo-code menggunakan bahasa yang hampir menyerupai bahasa pemrograman. Selain itu biasanya pseudo-code menggunakan bahasa yang mudah dipahami secara universal dan juga lebih ringkas dari pada algoritma.

Contoh Algoritma  dalam Pseudo-code


 
Diagram Pseudo-code
 

tipe data

Pengertian stuktur Data

Struktur Data adalah cara penyimpanan, penyusunan dan pengaturan data di dalam media penyimpanan komputer sehingga data tersebut dapat digunakan secara efisien. struktur data berarti tata letak data yang berisi kolom-kolom data, baik itu kolom yang tampak oleh pengguna (user) atau pun kolom yang hanya digunakan untuk keperluan pemrograman yang tidak tampak oleh pengguna. Setiap baris dari kumpulan kolom-kolom tersebut dinamakan catatan (record). Lebar kolom untuk data dapat berubah dan bervariasi. Ada kolom yang lebarnya berubah secara dinamis sesuai masukan dari pengguna, dan juga ada kolom yang lebarnya tetap. Dengan sifatnya ini, sebuah struktur data dapat diterapkan untuk pengolahan database (misalnya untuk keperluan data keuangan) atau untuk pengolah kata (word processor) yang kolomnya berubah secara dinamis.
Macam macam tipe data 
 
  1. TIPE DATA SEDERHANA (SIMPLE - DATA TYPE)
  2. TIPE DATA TERSTRUKTUR (STRUCTURED - DATA TYPE)
  3. TIPE DATA PENUNJUK (POINTER - DATA TYPE)
A.   TIPE DATA SEDERHANA (SIMPLE - DATA TYPE)
  •   adalah tipe data yang sudah ada dan dijadikan standar dalam bahasa pemrograman tertentu.
  •   Isi dari tipe data sederhana ini adalah data-data tunggal
TIPE DATA SEDERHANA (SIMPLE - DATA TYPE)
  1. STANDARD DATA TYPE
  •   INTEGER
  •   REAL
  •   CHAR
  •   STRING
  •   BOOLEAN
  1. USER-DEFINED DATA TYPE
  •   ENUMERATED OR SCALAR TYPE
  •   SUBRANGE TYPE
INTEGER => TIPE BILANGAN BULAT









REAL =>TIPE BILANGAN PECAHAN









TIPE BILANGAN REAL
  •   Data yang termasuk bilangan real adalah data angka yang mengandung pecahan.
  •   Data yang seperti ini akan memiliki keterangan jangkauan, jumlah digit penting (berarti) dan ukuran.
  •   Digit berarti ini penting diperhatikan karena ini berhubungan dengan tingkat ketelitian data yang disajikan.
TIPE DATA KARAKTER










TIPE DATA BOOLEAN
  •   Adalah tipe data yang hanya bernilai benar (true) atau salah (false).
  •   Jangkauan (nilai yang mungkin) hanya 2 yaitu true atau false.









USER - DEFINED DATA TYPE =>SUB JANGKAUAN
  •   Tipe sub jangkauan merupakan tipe data yang jangkauannya merupakan sebagian dari tipe data yang lain.
  •   Misalnya untuk tipe byte memiliki jangkauan dari 0..255, sementara kita hanya memerlukan angka 1..12 untuk menampung data bulan. Maka bisa diciptakan satu tipe baru yang merupakan sub jangkauan tersebut.
  •   Contoh
      Type
                  Bulan : 1 .. 12 ;


B.   TIPE DATA TERSTRUKTUR (STRUCTURED - DATA TYPE)
1.    ARRAY (LARIK)
2.    RECORD (REKAMAN)
3.    FILE
4.    SET (HIMPUNAN)
  1. ARRAY (LARIK)
  •   Larik adalah tipe data yang berisi beberapa data yang ditampung dalam satu variabel yang memiliki tipe data yang sama.
  •   Masing masing data yang tertampung dalam sebuah larik akan ditandai sebagai elemen pertama sampai ke - n.
  •   larik dapat dibuat beberapa dimensi, misalnya untuk menggambarkan matrix kita perlu menggunakan larik 2 dimensi.  
2.   RECORD (REKAMAN)
  •   Tipe data rekaman di gunakan untuk menampung data yang terdiri dari beberapa tipe yang berbeda.
  •   Record dapat diakses (diisi) dan dibaca per elemen record dengan menyebut nama elemennya.
3.   SET (HIMPUNAN)

Tipe data himpunan merupakan sebuah tipe data yang didalamnya memuat sejumlah elemen (anggota) dimana anggotanya memiliki tipe data dasar yang sama.

C.   TIPE POINTER
  •   Pointer secara harfiah dapat diartikan sebagai penunjuk.
  •   Tipe data pointer ini merupakan tipe data yang berisikan alamat memori dimana data disimpan
OPERATOR MATEMATIKA



PENGERTIAN ALGORITMA


Pengertian  Algoritma

mungkin bagi orang yang sudah berkecimung di dunia pemograman pasti sudah mengerti apa itu algoritma

Algoritma sering diterapkan oleh manusia dalam kehidupan sehari-hari. Sebenarnya, apakah Pengertian Algoritma itu? Berikut pembahasannya lebih mendalam.

Algoritma adalah Sistim kerja komputer memiliki brainware, hardware, dan software. Tanpa salah satu dari ketiga sistim tersebut, komputer tidak akan berguna. Kita akan lebih fokus pada softwarekomputer. Software terbangun atas susunan program (silahkan baca mengenai pengertian program) dan syntax (cara penulisan/pembuatan program). Untuk menyusun program atau  syntax, diperlukannya langkah-langkah yang sistematis dan logis untuk dapat menyelesaikan masalah atau tujuan dalam proses pembuatan suatu software. Maka,Algoritma berperan penting dalam penyusunan program atau syntax  tersebut.

Pengertian Algoritma adalah susunan yang logis dan sistematis untuk memecahkan suatu masalah atau untuk mencapai tujuan tertentu. Dalam dunia komputer, Algoritma sangat berperan penting dalam pembangunan suatu software. Dalam dunia sehari-hari, mungkin tanpa kita sadari Algoritma telah masuk dalam kehidupan kita.

Pengertian Algoritma adalah susunan yang logis dan sistematis untuk memecahkan suatu masalah atau untuk mencapai tujuan tertentu. Dalam dunia komputer, Algoritma sangat berperan penting dalam pembangunan suatu software. Dalam dunia sehari-hari, mungkin tanpa kita sadari Algoritma telah masuk dalam kehidupan kita.

Algoritma berbeda dengan Logaritma. Logaritma merupakan operasi Matematika yang merupakan kebalikan dari eksponen atau pemangkatan. Contoh Logaritma seperti bc= a ditulis sebagai blog a = c (b disebut basis).

Contoh nyata Algoritma dalam kehidupan sehari-hari adalah "Cara Membuat Mie Instan". Berikut langkah-langkah cara membuat mie instan:

  1. Ambil goreng di dalam lemari yang terletak di dapur.
  2. Siapkan peralatan yang diperlukan seperti panci, gunting, piring, serta sendok dan garpu.
  3. Masukkan bumbu mie instan pada piring
  4. Hidupkan kompor, kemudian tuangkan air kurang lebih tiga gelas air ke dalam panci kemudian tunggu hingga air mendidih.
  5. Masukkan mie instan ke dalam air mendidih, lalu aduk dan tunggu hingga tiga menit.
  6. Tiriskan air di dalam panci, kemudian tuangkan mie pada piring.
  7. Aduk mie agar bumbu tercampur merata pada mie kemudian sajikan dengan keadaan hangat.
Kurang lebih di atas merupakan cara membuat mie instan. Langkah-langkah di atas juga termasuk dalam Algoritma. Jadi perlu diingat bahwa Algoritma tidak hanya diterapkan pada dunia komputasi, tetapi juga Algoritma diterapkan dalam kehidupan sehari-hari.

Sedangkan dalam dunia komputasi, contoh penggunaan Algoritma adalah dalam pembuatan program pada bahasa pemrograman seperti bahasa C, C#, dan Visual Basic. Dengan syntax pada tiap bahasa pemrograman dan Algoritma, maka akan tersusun program-program dan terlahirlah software.

Jadi intinya, Pengertian Algoritma adalah suatu langkah/urutan yang logis dan sistematis untuk pemecahan suatu masalah atau untuk mencapai tujuan yang diinginkan.