Java Programming Language dimulai tahun 1991, merupakan bagian dari suatu project research dan diberi nama : “OAK”. Team yang mengerjakannnya diberi nama “ Green Team”. Tujuannya : agar walaupun beda CPU tapi dapat menggunakan software yang sama. Saat itu OAK digunakan untuk Consumer Devices seperti : VCR, Television .
Tetapi karena kurang populer akhirnya kurang sukses. Namun Green team melihat saat itu WWW sangat populer dan ada peluang untuk OAK, maka aplikasi kecil dari OAK yaitu applets menjadi sukses di Internet dan banyak digunakan. Applets menjadi suatu inisial pada OAK language dan sejak saat itu OAK berubah menjadi Java Programming Language.
Java Programming Language di design untuk :
- Object-Oriented
- Distributed
- Simple
- Multithreaded
- Secure
- Platform Independent
Object-Oriented
Java Programming language adalah OOP language karena salah satu tujuan Java teknologi adalah menciptakan object, dapat berinteraksi dengan object yang lainnya untuk menemukan solusi dari suatu masalah.
OOP dimulai dari bahasa pemprogramman bernama : SIMULA-67 pada tahun 1967. Java sendiri merupakan pengembangan dari C++.
OOP berbeda dengan procedural programming karena procedural programming menekankan(stresses) pada urutan coding langkah demi langkah untuk menemukan solusi dari suatu masalah, sementara OOP menekankan pada menciptakan dan berinteraksi dengan object.
Distributed
Java Programming Language merupakan bahasa terdistribusi karena menyediakan support untuk pendistribusian Network teknologi, seperti RMI, CORBA, URL.
Simple
Simple karena Java programming language tidak mengijinkan programmer secara langsung memodifikasi pointer ke memory locations, feature-feature yang lebih baik dari C & C++ seperti Garbage Collections.
MultiThreaded
Kemampuan untuk menjalankan beberapa tugas disaat yang bersamaan.
Contoh : menjalankan Query database, menampilkan User Interface, menjalankan printer.
Secure
Java Programming Language aman karena menggunakan pembatasan keamanan untuk mencegah program dari serangan. Java programming Language membatasi pointer sehingga developer tidak dapat mengakses memori jika tidak diijinkan, membatasi akses applet di komputer client maupun saat membaca atau menulis ke hard disk komputer client.
Platform-Independent
Tidak tergantung oleh suatu Computing platform( CPU dan OS ). Dapat berjalan dibeberapa CPU yang berbeda dan combinasi OS. Seperti : SolarisOS SPARC, Mircosit Windows.
Java Teknologi program, mengcompile program menggunakan Java Teknologi Compiler( bukan OS Compiler seperti pada Platform Dependent). Setelah di compile menghasilkan format Platform Independent Java Teknologi yaitu : bytecode sebagai ganti dari CPU Specific Mechine Code(bahasa mesin), Setelah bytecode diciptakan, lalu bytecode di jalankan(executed/interpreted) oleh bytecode interpreter yaitu : Virtual Mechine(VM).
Virtual Mechine adalah suatu Platform Specific Program yang mengenal platform independent bytecode. Dan dapat dijalankan dibeberapa Platform.
Note :
· Java sering disebut sebagai bahasa pemprograman
interpreted(penafsiran/menafsirkan).
· Tahukah anda : kenapa diberi nama Virtual Mechine?, karena
merupakan bagian dari software yang bertugas untuk menjalankan code,
sebenarnya kalau di other programming tugas ini biasa dilakukan oleh
CPU atau hardware mechine.
· Kalau di Java untuk compiler ke bytecode menggunakan compiler dengan nama “Java teknologi compiler” tapi kalau di Platform Dependent menggunakan “linker”.
· Kalau di java dari bytecode(Platform Independent) bisa langsung dijalankan menggunakan VM(Java Virtual Mechine), intinya Cuma 2 langkah :
o Menciptakan bytecode.
o User menjalankan bytecode tersebut lewat Virtual Mechine
· tapi kalau di Platform Dependent : menciptakan bahasa mesin (mechine code ) kedalam suatu files binary (yang terkadang juga dikombinasikan dengan file-file library yang lainnya) kemudian diciptakan executable(exe => Platform Dependent) dengan menggunakan “linker”. Intinya 4 langkah:
o Menciptakan Mechine Code kedalam suatu binary files
o Biasanya dikombinasikan dengan file-file library yang lainnya.
o Menggunakan linker untuk menciptakan executable(Platform Dependent)
o User menjalankan executable tersebut.
· Dijava ada 3 product Group :
1. J2SE : Target Marketnya adalah Desktop Solutions, cth : Applets(utk diweb) dan Application(GUI seperti Form2 /window-window. Untuk di Desktop).
2. J2EE : Target Marketnya adalah Enterprise Solutions, cth : eCommerce( Web Shopping), eBusiness.
3. J2ME : Target Marketnya adalaha Consumer Solutions, cth : Buat Game untuk Cell Phones, Buat program GPS untuk di mobile atau PDA.
· Note : Jadi kamu sebagai programmer harus tahu mau spesialis di develop apa? Caranya dengan melihat target market kamu. Apakah di Desktop Solutions, Enterprise Solutions atau di Consumer Solutions. Tapi kebanyakan programmer biasanya diawal kariernya ada di target market Desktop Solutions. Makanya J2SE adalah product group yang kebanyakan programmer yang baru belajar pasti menggunakannya.
Platform Dependent.
Compiler mengkonvert program ke bahasa mesin dan biasanya bahasa mesin itu disimpan kedalam binary files, binary files itu sering x dikombinasikan dengan library dengan menggunakan linker untuk menciptakan platform dependent program yang biasa disebut : executable.
Didalam java "Everythig is an object and case sensitive" jadi hati-hati dalam penulisan di java huruf besar dan kecilnya akan diartikan lain oleh java.
0 komentar:
Posting Komentar