Makalah java
Upcoming SlideShare
Loading in...5
×
 

Makalah java

on

  • 2,907 views

 

Statistics

Views

Total Views
2,907
Views on SlideShare
2,907
Embed Views
0

Actions

Likes
0
Downloads
87
Comments
1

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • makasih bang atas makalahnya
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Makalah java Makalah java Document Transcript

  • MAKALAH JAVA KURIKULUM DAN TEKNOLOGI PENDIDIKAN Oleh: MASRUHIL NIM: 1102412037 UNIVERSITAS NEGERI SEMARANG TAHUN 2013
  • BAB I PENDAHULUAN LATAR BELAKANG Pesatnya teknologi, terutama teknologi komputer sudah tak bisa dipungkiri lagi, bagi yang mengikuti perkembangannya, ia tidak akan dipandang sebelah mata. Sebaliknya, bagi yang tidak mengikuti perkembangannya, bersiaplah untuk mundur secara suka rela dari panggung kompetisi. Ibarat wabah, teknologi komputer sudah menyusupi hampir semua bidang kehidupan manusia. Dari pemerintah pusat sampai tingkat pemerintah desa, perusahaan-perusahaan, supermarket, minimarket, perguruan tinggi, SLTA, SLTP, bahkan SD hamper semuanya mengenal komputer. Saat ini, yang mempunyai lingkungan yang semakin luas dan banyak diminati, juga dapat digunakan untuk menghasilkan uang adalah dunia pemrograman komputer. Dalam dunia pemrograman komputer, dikenal banyak bahasa pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain. Di antara banyaknya bahasa pemrograman, tim penyusun akan membahas Java dan c++ dalam makalah ini. PERUMUSAN MASALAH Dalam melaksanakan perencanaan dan pembuatan sistem yang akan dibuat pada proyek akhir ini, permasalahan yang ada adalah sebagai berikut : 1. Apakah yang dimaksud dengan pengertian C++ ? 2. Apakah yang dimaksud dengan pengenalan java rumah Radhen
  • TUJUAN Makalah ini disusun dengan tujuan sebagai sarana untuk mengikuti pesatnya perkembangan teknologi komputer di masa sekarang ini, salah satunya di dunia pemrograman yang sekarang semakin banyak diminati. Selain itu, tujuan disusunnya makalah ini adalah untuk memenuhi tugas mata kuliah teori algoritma, dikarenakan Penulis masih berstatus sebagai mahasiswa Jurusan Managemen informatika, Prodi Managemen informatika,POLITEKNIK KOMPUTER NIAGA BANDUNG. BAB II PEMBAHASAN PENGERTIAN C++ C++ adalah sebuah bahasa pemrograman yang memiliki banyak dialek, seperti bahasa orang yang banyak memiliki dialek. Dalam C++, dialek bukan disebabkan oleh karena si pembicara berasal dari Jepang atau Indonesia, melainkan karena bahasa ini memiliki beberapa kompiler yang berbeda. Ada empat kompiler umum yaitu : C++ Borland, C++ Microsoft Visual, C/386 Watcom, dan DJGPP. Anda dapat mendownload DJGPP atau mungkin saja anda telah memiliki kompiler lain. Setiap kompiler ini agak berbeda. Setiap kompiler akan dapat menjalankan fungsi fungsi standar C++ ANSI/ISO, tetapi masing masing kompiler juga akan dapat menjalankan fungsi fungsi nonstandard (fungsi fungsi ini, agak mirip dengan ucapan yang tidak standar yang diucapkan orang diberbagai pelosok negeri. Sebagai contoh, di New Orleans kata median disebut neutral ground). Kadang kadang pemakaian fungsi nonstandard akan menimbulkan masalah pada saat anda View slide
  • hendak mengkompilasi kode sumber data (source code) (yaitu program berbahasa C++ yang ditulis oleh seorang programer) mempergunakan kompiler yang berbeda. Tutorial ini tidak terlepas dari masalah seperti itu. Bila anda belum mempunyai sebuah kompiler, disarankan agar anda segera memiliki sebuah kompiler. Sebuah kompiler sederhana sudah cukup untuk dipergunakan oleh anda dalam mengikuti tutorial ini. Bahasa pemrograman C++ adalah bahasa yang amat berbeda. Untuk kompiler C++ berbasis DOS, akan memerlukan beberapa kata kunci (keywords); keyword sendiri tidak cukup untuk difungsikan sebagai input dan output. Walau hampir semua fungsi dalam file library tampaknya bias diakses oleh header filenya. Berikut ini contoh program C++ yang sederhana #include <iostream.h> void main() { cout << “Hello world.n”; } Setelah dicompile dan dirun, hasilnya adalah muncul pada layar Hello World Pustaka dasar C++ Dalam bahasa pemrograman C++, Pustaka Dasar adalah kumpulan class dan fungsi yang menjadi inti bahasa pemrograman C++. Pustaka Dasar C++ terdiri dari container umum dan fungsi untuk memanipulasinya, string dan stream (termasuk fungsi untuk antarmuka pengguna serta fungsi untuk menulis dan membaca file (file I/O)), serta fungsi-fungsi yang sering digunakan seperti fungsi untuk mencari akar kuadrat dari sebuah bilangan. Pustaka Dasar C++ sudah termasuk Pustaka View slide
  • Dasar ISO C90 untuk bahasa pemrograman C. Fitur-fitur dalam Pustaka Dasar C++ dinyatakan dalam namespace std. Pustaka Pola Dasar (The Standard Template Library atau STL) adalah bagian dari Pustaka Dasar C++. Pustaka Pola Dasar C++ terdiri dari container, algorithm, iterator dan lain sebagainya. Orang kadang menyebutkan Pustaka Dasar C++ dan Pustaka Pola Dasar C++ untuk merujuk pada hal yang sama. Kepala (header) untuk penggunaan Pustaka Dasar C++ ditulis tanpa akhiran .h. Penulisan Dalam Bahasa C++ Penulisan dalam bahasa C++ adalah case sensitive. Yang berarti, C++ membedakan huruf kecil dan kapital. Yang berarti (lagi): variabel_pertama tidak sama dengan variabel_Pertama atau mboknya_echi tidak sama dengan mboknya_Echi. Komentar dalam C++ ditulis dengan „//‟ untuk komentar dengan panjang satu baris atau „/*‟ dan „*/‟ untuk komentar lebih dari satu baris, dimana tanda /* merupakan “pembuka” komentar dan */ adalah “penutup” komentar. Komentar adalah cataatan ang ditulis oleh programmer untuk sebagai pengingat atau penjelasan ketika membaca sebuah kode. Kata – kata dalam sebuah komentar tidak akan dieksekusi oleh compiler. Beberapa kesalahan dalam penulisan dalam C++ adalah: • int int; /*salah karena nama sebuah variabel tidak boleh sama dengan seuah tipe data (int)*/ • int Jam_9; //salah karena nama variabel dimulai dengan huruf besar • int 90jam; /*nah, ini juga salah karena nama sebuah variabel tidak boleh dimulai dengan bilangan*/ Penulisan yang benar dalam C++ adalah:
  • • int myint; //betul • char kata_2; //betul juga... • double bilangan_KeDuA; /*walaupun nama identifiernya aneh, tapi ini juga betul :) */ Setiap statement dalam C++ harus diberi tanda „;‟ pada akhir dari statement. Contoh penulisan statement yang benar dalam C++ adalah: int a, b, c; a = 1; b = 2; c = a + b; Sedangkan penulisan yang salah adalah: int a, b, c karena itu dianggap error oleh compiler, karena merupakan statement yang tidak lengkap. FUNGSI Fungsi adalah sekumpulan perintah operasi program yang dapat menerima argumen input dan dapat memberikan hasil output yang dapat berupa nilai ataupun sebuah hasil perasi. Nama fungsi yang definisikan sendiri oleh pemrogram tidak boleh sama dengan nama build-in function pada compiler C++.
  • Fungsi digunakan agar pemrogram dapat menghindari penulisan bagian program (kode) berulang-ulang, dapat menyusun kode program agar terlihat lebih rapi dan kemudahan dalam debugging program. Definisi lainnya yang terdapat dari beberapa sumber, Fungsi merupakan bagian dari kode program yang terpisah dari program utama. Bagain kode program ini di-execute jika diperlukan untuk melakukan tindakan khusus dalam program. Fungsi banyak dilibatkan dalam program dengan tujuan untuk mengurangi duplikasi pengkodean dan untuk mempermudah pemahaman. Secara sederhana terdapat fungsi yang tidak mengambil satu parameterpun dan menghasilkan void (data yang tidak memiliki nilai). Namum pada fungsi yang lain akan mengambil suatu parameter dan mungkin menghasilkan suatu nilai tertentu. Parameter merupakan suatu nilai yang di-pass-kan (diseberangkan) pada fungsi yang berguna untuk mengubah operasinya atau untuk menunjukan operasi yang lebih luas. Sebelum fungsi digunakan, fungsi harus dideklarasikan dulu. Deklarasi fungsi (prototype) berguna untuk memberitahukan compiler tentang bagaimana fungsi diambil dan tipe data yang diambil/dihasilkan. Fungsi dapat dipanggil oleh fungsi yang lain maupun dirinya sendiri (rekursif). Syntax deklarasi fungsi: Re_type function_name(parameter); Parameter berisi pengenal (argument) dan tipe pengenal (argument) yang
  • berfungsi sebagai masukkan. Masukkan tersebut akan diproses sehingga dihasilkan nilai tertentu sesuai tipe datanya (re_type). Syntax fungsi: Re_type function_name(parameter) {statement-statement} Dalam C++, program merupakan kumpulan dari fungsi-fungsi. C++ mempunyai fungsi utama yang disebut main. Fungsi merupakan subprogram dan berguna untuk menjadikan program bersifat modular sehingga dapat digunakan kembali, baik untuk program itu sendiri maupun untuk program lain yang memiliki proses yang sama. Fungsi dibedakan menjadi user-define function (didefinisikan sendiri) dan built-in function (disediakan oleh compiler). Header dan Fungsi main() Beberapa bagian yang harus di perhatikan adalah header dan fungsi. Header adalah dimana kita memasukkan library yang ada dalam C++ kedalam kode program kita. Fungsi adalah “tempat” dimana kita bisa “bereksperimen”. Didalamnya terdapat semua statement yang kita buat. Program yang paling sederhana yang pernah diketahui umat manusia (seram amat kata-katanya) adalah: #include using namespace std; void main () { cout << “Hello, World!n”; } Pada baris pertama, seperti yang kita lihat, ada perintah #include . Tanda „#‟ adalah preprocessor directive. Preprocessor directive
  • adalah perintah – perintah yang diberikan kepada compiler untuk melakukan definisi, memasukkan file library, dll. Contoh – contoh dari preprocessor ini adalah: • #define maximum_number 100000 • #include “fileku.h” • #ifdef maximum_number #undef maximum_number #define maximum_number_2 1000 Itu berarti bahwa kita memasukkan (include) library iostream ke dalam kode program kita. iostream itu adalah header yang dibutuhkan untuk “kegiatan” input dan output dari program. Perintah cout sendiri ada karena kita memasukkan iostream ke dalam kode program kita dan juga using namespace std; dimana ada member cout di dalamnya. Berikut beberapa header yang terdapat dalam C++: • ctime = header waktu • cstdio = header untuk perintah C seperti printf dan scanf • cmath = header untuk operasi matematika seperti sin, cos, sqrt, dan tan • cstring = header untuk memanipulasi string seperti strcpy, strcat, dll main () adalah fungsi utama (main) yang harus ada dalam setiap program C++ kita. Di sini yang digunakan adalah dengan main tanpa nilai kembalian dan tanpa paramater. Apa itu nilai kembalian dan apa itu paramater? Saksikan setelah pesan – pesan berikut… eh salah, lihat dalam bab . Jika diperhatikan ada perintah n pada
  • akhir “kalimat” berikutnya Hello, World!. Apa itu? ”n” adalah perintah dalam banyak bahasa pemrograman sebagai baris baru (new line). Perintah dengan menggunkan backslash („‟) juga ada beberapa jenis, diantaranya: • „a‟ = untuk menghasilkan bunyi alert • „t‟= tabulasi • „0‟ = null terminated dalam array Tanda „{„ juga harus ada dalam setiap fungsi C++, itu menandakan awal dari fungsi / program dan „}‟ menandakan akhir dari fungsi / program. Tipe Data Tipe – tipe data yang dikenal dalam C++ adalah sebagai berikut: Tipe Bilangan Bula Tipe Data Ukuran( Jangkauan dalam bit) Int 16 atau 32 -32.767 sampai 32.767 Unsigned int 16 atau 32 0 sampai 65.535 Signed int 16 atau 32 Sama seperti int Short int 16 -32.767 sampai 32.767 Unsigned 16 0 sampai 65.535 16 Sama seperti int short int Signed short int
  • Long int 32 -2.147.483.647 sampai 2.147.483.647 Unsigned 32 0 sampai 4.294.967.295 32 Sma seperti long int long int Signed long int Tipe Bilangan Desimal Tipe Data Ukuran (dalam bit) Jangkauan Float 32 Enam digit presisi Double 64 Sepuluh digir presisi Long double 80 Sepuluh digit presisi Tipe Logika boolean adalah tipe yang hanya “menyimpan” nilai “benar” dan “salah” yaitu, true dan false (boolean). Contoh: bool benar_atau_salah = true; Tipe Krakter/String Tipe Data Char Ukuran (dalam bit) 8 Jangkauan -127 sampai 127
  • Unsigned char 8 0 sampai 255 Signed 8 -127 sampai 127 Operator 1.Operator Assigment Operator Assigment adalah operator yang berfungsi untuk memasukan (assign)nilai ke dalam suatu variable ataupun konstanta.Operator ini dilambngkan dengan samadengan (=). 2.Operator Unary Operator Jenis Operasi Contoh + Membuat nilai positif +9 - Membuat nilai negative -9 == Increment C++ -- Decrement C-- Jenis Operasi Contoh 3.Operator Binary A. Operator Aritmatika Operator = Penjumlahan 3+4 =7 - Pengurangan 7-4=3
  • * Perkalian / Pembagian % Sisa bagi/modulus 3*4=12 10.0/3.0=3.3333 13%3=1 B.Operator logika Operator Jenis operasi Contoh && And (dan) 1&&1 = 1 || Or (atau) 1||0 = 1 ! Not (negasi) !0 =1 C.Operator Relasi Operator Jenis operasi Contoh > Lebih besar (8>5)=1 < Lebih kecil (8<5)=0 >= Lebih besar atau sama (8>=3)=1 dengan <= Lebih kecil atau sama (8<=3)=0 dengan == Samadengan (8==5)=0 != Tidak sama dengan (8!=3)=1
  • Daftar C++ compiler Untuk mengubah kode-kode C++ program menjadi suatu program aplikasi yang dimengerti oleh sistem operasi dan komputer, diperlukan sebuah kompilator C++. Berikut ini adalah beberapa kompilator C++ yang dapat digunakan secara gratis. • Microsoft Visual C++ 2005 Express • Turbo C++ Explorer • Apple Xcode for Mac OS X • Open Source Watcom / OpenWatcom C/C++ Compiler • Digital Mars C/C++ Compiler (Symantec C++ Replacement) • Bloodshed Dev-C++ C++ Compiler • Free Microsoft .NET Framework Software Development Kit (SDK) / Free Microsoft Visual C++ Compiler • Intel C++ Compiler for Linux Non-Commercial Version • Sun Studio Compilers and Tools • Open64 Compiler Tools • Apple's Macintosh Programmer's Workshop (C and C++ compilers) • TenDRA C/C++ Compiler • GNU C/C++ Compiler • Ch Embeddable C/C++ Interpreter (Standard Edition) • DJGPP C and C++ Compilers • CINT C and C++ Interpreter • SDCC C Cross-compiler • Cygwin Project (C & C++ Compilers)
  • • SDCC C Cross-compiler JAVA RUMAH RADHEN Pengertian Java Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Dikembangkan oleh Sun Microsysten dan diterbitkan tahun 1995. Java tidak sama dengan Javascript, Javascript adalah bahasa scripting yang digunakan oleh web browser. Java merupakan satu dari beberapa kemajuan terpenting di bidang software komputer dalam 20 tahun terakhir. Sama pentingnya dengan HyperText Markup Language (HTML) yang sangat sukses dalam penerbitan homepage static di World wide Web (WWW). Java meledakkan internet dengan isi yang lebih menarik dan interaktif. Kelebihan-Kelebihan Java Multiplatform Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform/sistem operasi komputer, sesuai dengan prinsip “tulis sekali, jalankan di mana saja”. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis Java dikerjakan di atas sistem operasi Linux tetapi dapat dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebabnya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri untuk menginterpretasikan bytecode tersebut.
  • Pemrograman Berorientasi Objek Berorientasi objek (OOP) sehingga memudahkan programmer untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi antara komputer sekalipun. Artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Ini sangat memudahkan pemrogram untuk mendesain, membuat dan mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemrograman termudah, bahkan untuk fungsi-fungsi yang advance seperti komunikasi antara komputer sekalipun. Perpustakaan Kelas yang Lengkap Java terkenal dengan kelengkapan library/perpustakaan (kumpulan programprogram yang disertakan dalam pemrograman Java) yang sangat memudahkan dalam penggunaan oleh pada pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah keberadaaan komunitas Java yang besar yang terus menerus membuat perpustakaan baru untuk melingkupi seluruh kebutuhan pembangun aplikasi. Bergaya C++ Java memiliki sintaks seperti bahasa pemrograman C++ sehingga banyak menarik pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitasuniversitas di Amerika juga mulai pindah dengan mengajarkan Java kepada murid-
  • murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer. Pengumpulan sampah Otomatis Java memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas). Kekurangan Java Tulis sekali, jalankan di mana saja Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X. Mudah didekompilasiDekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer. – Penggunaan memori yang banyak -Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi
  • mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun. Perbandingan Java dengan Bahasa Pemrograman Lain Java merupakan bahasa pemrograman OOP tidak seperti bahasa-bahasa sebelumnya yang bersifat prosedural. OOP sangat berguna untuk membuat software yang memiliki banyak Objek yang mirip sehingga pemrogram tidak perlu menulis ulang script untuk Objek-Objek tersebut. Pemrogram cukup menentukan nama ‟Class‟ dan ‟Perilaku‟nya dengan meng-assign-kan Class tersebut ke suatu Objek maka secara otomatis Objek tersebut akan memiliki perilaku yang ditentukan. Dilain sisi penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun. Namun karena Java mempunyai memori yang besar sehingga big num problem bias teratasi. Bahasa pemrograman C menggunakan pointer sehingga programmer bertanggung jawab untuk membebaskan memory sendiri. Hal ini sering menyebabkan kegagalan memory. Sedangkan pada Java hanya terdapat reference (tidak mempunyai pointer) dan penggunaan memory diatasi oleh garbage collector sehingga programmer tidak perlu bersusah payah untuk mengatur memori. Tahap Kompilasi Java Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media dalam bentuk berkas „.java‟. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi bentuk
  • berkas „.class‟. Muat. Pemuat kelas memuat bytecodes ke memori. Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem keamanan Java. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak bisa di pakai„‟ Contoh Kode Program Sederhana Dalam Java Contoh program Halo dunia yang ditulis menggunakan bahasa pemrograman Java adalah sebagai berikut: // Outputs “Hello, world!” and then exits public class HelloWorld { public static void main(String args[]) { System.out.println(“Hello, world!”); Integrated Development Environment Banyak pihak telah membuat IDE (Integrated Development Environment – Lingkungan Pengembangan Terintegrasi) untuk Java. Yang populer saat ini (Juli 2006) antara lain: Dr. Java, program gratis yang dikembangkan oleh Universitas Rice, Amerika Serikat BlueJ, program gratis yang dikembangkan oleh Universitas Monash, Australia NetBeans (open source- Common Development and Distribution License (CDDL))
  • NetBeans disponsori Sun Microsystems, dan versi terkininya memilki Matisse, sebuah GUI Editor yang menurut pendapat umum merupakan yang terbaik.[rujukan?] Eclipse JDT (open source- Eclipse Public License) Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota „Eclipse Foundation‟ (beserta individu-individu lain). Banyak nama besar yang ikut dalam „Eclipse Foundation‟, termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya. IntelliJ IDEA (commercial, free 30-day trial) Oracle JDeveloper (free) Xinox JCreator (ada versi berbayar maupun free) JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan memori lebih sedikit) dari kebanyakan IDE. Java bytecode Java bytecode adalah bentuk petunjuk bahwa mesin virtual Java mengeksekusi. Setiap bytecode opcode adalah satu byte panjang, meskipun beberapa memerlukan parameter, sehingga beberapa multi-byte instruksi. Tidak semua dari 256 kemungkinan opcodes digunakan. 51 dicadangkan untuk penggunaan masa depan. Selain itu, Sun Microsystems , pengembang asli dari platform Java , telah menyisihkan tiga nilai secara permanen diimplementasikan. Sebuah Java programmer tidak perlu menyadari atau memahami bytecode Java sama sekali. Namun, seperti yang disarankan di IBM jurnal developerWorks, “adalah
  • Memahami bytecode dan apa bytecode mungkin dihasilkan oleh compiler Java membantu programmer Java dengan cara yang sama bahwa pengetahuan tentang perakitan membantu C atau C + + programmer. “ Lihat juga: daftar instruksi bytecode Java Karena setiap byte memiliki 256 nilai potensial, ada 256 opcodes mungkin. Dari jumlah tersebut, 0×00 melalui 0xca, 0xFE, dan 0xff ditugaskan nilai. 0xca dicadangkan sebagai instruksi breakpoint untuk debugger dan tidak digunakan oleh bahasa. Demikian pula, 0xFE dan 0xff tidak digunakan oleh bahasa, dan dicadangkan untuk penggunaan internal oleh mesin virtual. Instruksi jatuh ke dalam beberapa kelompok yang luas: Beban dan toko (misalnya aload_0, istore) Aritmatika dan logika (misalnya Ladd, fcmpl) Jenis konversi (misalnya i2b, d2i) Obyek penciptaan dan manipulasi (baru, putfield) Operan tumpukan manajemen (swap misalnya, dup2) Kontrol transfer (misalnya ifeq, goto) Metode doa dan kembali (misalnya invokespecial, areturn) Ada juga beberapa instruksi untuk sejumlah tugas yang lebih khusus seperti melemparkan pengecualian, sinkronisasi, dll Banyak petunjuk prefiks dan / atau akhiran mengacu pada jenis operan mereka beroperasi pada. Ini adalah sebagai berikut: Awalan / Sufiks Operan Type i bilangan bulat l panjang
  • s pendek b byte c karakter f mengapung d dua kali lipat a referensi Misalnya, “iadd” akan menambahkan dua bilangan bulat, sementara “Dadd” akan menambahkan dua ganda. The “const”, “beban”, dan “toko” instruksi juga dapat mengambil akhiran bentuk “_ n”, dimana n adalah nomor 0-3 untuk “beban” dan “toko”. N maksimum untuk “const” berbeda menurut jenis. The “const” petunjuk mendorong nilai dari tipe tertentu ke stack. Misalnya “iconst_5″ akan mendorong sebuah 5 bilangan bulat, sementara “dconst_1″ akan mendorong 1 ganda. Ada juga “aconst_null”, yang mendorong “nol”. N untuk “beban” dan “toko” instruksi menentukan lokasi dalam tabel variabel [ klarifikasi diperlukan ] untuk memuat atau dari toko ke. The “aload_0″ instruksi mendorong objek dalam variabel 0 ke stack (ini biasanya “ini” objek). “Istore_1″ menyimpan integer di atas tumpukan ke 1 variabel. Untuk variabel dengan jumlah yang lebih akhiran dijatuhkan dan operator harus digunakan. Para model perhitungan Jawa bytecode adalah bahwa dari bahasa pemrograman berorientasi tumpukan . Sebagai contoh, kode assembly untuk prosesor x86 mungkin terlihat seperti ini: mov eax, byte [ebp - 4] mov edx, byte [ebp - 8] add eax, edx mov ecx, eax
  • Kode ini akan menambahkan dua nilai dan memindahkan hasil ke lokasi yang berbeda. Bytecode dibongkar serupa mungkin terlihat seperti ini: 0 iload_1 1 iload_2 2 iadd 3 istore_3 0 iload_1 1 iload_2 2 iadd 3 istore_3 Perhatikan kode Java berikut: outer: for (int i = 2; i <1000; i + +) { for (int j = 2, j <i, j + +) { if (i% j == 0) lanjutkan luar; .. Sistem keluar println (i); Sebuah kompiler Java akan menerjemahkan kode Java di atas ke dalam kode byte sebagai berikut, dengan asumsi di atas dimasukkan ke dalam metode: 0: iconst_2 1: istore_1 2: iload_1 3: sipush 1000 6: if_icmpge 44 9: iconst_2 10: istore_2 11: iload_2 12: iload_1 13: if_icmpge 31 16: iload_1 17: iload_2 18: irem 19: ifne 25 22: goto 38 25: iinc 2, 1 28: goto 11 31: getstatic #84; //Field java/lang/System.out:Ljava/io/PrintStream; 34: iload_1 35: invokevirtual #85; //Method java/io/PrintStream.println:(I)V 38: iinc 1, 1 41: goto 2 44: return 0: iconst_2 1: istore_1 2: iload_1 3: sipush 1000 6: if_icmpge 44 9: iconst_2 10: istore_2 11: iload_2 12: iload_1 13: if_icmpge 31 16: iload_1 17: iload_2 18: irem 19: ifne 25 22: goto 38 25: iinc 2, 1 28: goto 11 31: getstatic #84; //Field java/lang/System.out:Ljava/io/PrintStream; 34: iload_1 35: invokevirtual #85; //Method java/io/PrintStream.println:(I)V 38: iinc 1, 1 41: goto 2 44: return Java bytecode dirancang untuk dijalankan dalam mesin virtual Java . Ada beberapa
  • mesin virtual yang tersedia saat ini, baik produk gratis dan komersial. Informasi lebih lanjut: mesin virtual Java. Jika mengeksekusi bytecode Java dalam mesin virtual Java tidak diinginkan, pengembang juga dapat mengkompilasi kode Java sumber atau bytecode Java langsung ke kode mesin asli dengan alat seperti GNU Compiler Java . Beberapa prosesor dapat mengeksekusi bytecode Java native. Prosesor tersebut dikenal sebagai prosesor Java . Java Development Kit (JDK) Java Development Kit (JDK) merupakan implementasi dari salah satu dari Java SE , Java EE atau Java ME platform dirilis oleh Oracle Corporation dalam bentuk produk biner ditujukan Jawa pengembang pada Solaris , Linux , Mac OS X atau Windows . Sejak diperkenalkannya Java platform, telah jauh Software Development Kit yang paling banyak digunakan ( SDK ). Pada tanggal 17 November 2006, Sun mengumumkan bahwa mereka akan dirilis di bawah GNU General Public Lisensi (GPL), sehingga membuatnya perangkat lunak bebas . Hal ini terjadi sebagian besar pada 8 Mei 2007, ketika Matahari menyumbang kode sumber ke OpenJDK . JDK memiliki sebagai komponen utamanya kumpulan alat pemrograman, termasuk: appletviewer – alat ini dapat digunakan untuk menjalankan dan debug applet Java tanpa web browser apt – dengan alat penjelasan-processing extcheck – sebuah utilitas yang dapat mendeteksi JAR-file konflik idlj – compiler IDL-to-Jawa. Utilitas ini menghasilkan Java bindings dari diberikan IDL Java file. java – yang loader untuk aplikasi Java. Alat ini penerjemah dan dapat
  • menginterpretasikan file kelas yang dihasilkan oleh javac compiler. Sekarang sebuah peluncur tunggal digunakan untuk kedua pengembangan dan penyebaran. Peluncur penyebaran tua, jre, tidak lagi datang dengan Sun JDK, dan sebagai gantinya telah digantikan oleh loader java baru. javac – yang compiler Java , yang mengubah kode sumber menjadi Java bytecode javadoc – generator dokumentasi, yang secara otomatis menghasilkan dokumentasi dari source code komentar jar – pengarsip, yang paket kelas terkait perpustakaan menjadi satu file JAR . Alat ini juga membantu mengelola file JAR. javah – header C dan generator rintisan, digunakan untuk menulis metode asli javap – file kelas disassembler javaws – yang Web Java Mulai peluncur untuk aplikasi JNLP JConsole – Java Monitoring dan Management Console jdb – yang debugger jhat – Java Heap Alat Analisis (percobaan) Jinfo – Utilitas ini mendapat informasi konfigurasi dari proses Java berjalan atau crash dump. (Percobaan) jmap – Utilitas ini output peta memori untuk Java dan dapat mencetak peta memori obyek bersama atau rincian tumpukan memori dari suatu proses atau core dump. (Percobaan) jps – Java Machine Proses Alat Status Virtual daftar diinstrumentasi HotSpot Java Virtual Machines (JVMs) pada sistem target. (Percobaan) jrunscript – Java baris perintah skrip shell . jstack – utilitas yang mencetak Jawa jejak stack benang Java (percobaan) jstat – Java Virtual Machine statistik alat pemantau (percobaan) jstatd – jstat daemon (percobaan) keytool – alat untuk memanipulasi keystore
  • pack200 – JAR alat kompresi policytool – penciptaan kebijakan dan alat manajemen, yang dapat menentukan kebijakan untuk runtime Java, yang menetapkan hak akses yang tersedia untuk kode dari berbagai sumber VisualVM – alat visual mengintegrasikan beberapa baris perintah alat JDK dan ringan kinerja dan memori profiling kemampuan wsimport – menghasilkan portabel JAX-WS artefak untuk memanggil layanan web. xjc – Bagian dari API Java untuk XML Binding (JAXB) API. Ia menerima skema XML dan menghasilkan kelas Java. Alat percobaan mungkin tidak tersedia dalam versi masa depan dari JDK. JDK juga dilengkapi dengan lengkap Java Runtime Environment , biasanya disebut runtime pribadi, karena fakta bahwa itu dipisahkan dari JRE “biasa” dan memiliki isi tambahan. Ini terdiri dari Java Virtual Machine dan semua perpustakaan kelas hadir dalam lingkungan produksi, serta library tambahan hanya berguna untuk pengembang, seperti internasionalisasi perpustakaan dan IDL perpustakaan. Salinan dari JDK juga termasuk berbagai pilihan program contoh menunjukkan penggunaan hampir semua bagian dari Java API . JDK membentuk bagian diperpanjang dari software development kit (SDK). Dalam deskripsi yang menyertai rilis terbaru, yang menerapkan Java SE , EE dan ME , Sun mengakui bahwa di bawah terminologi, JDK membentuk subset dari SDK yang memiliki tanggung jawab untuk menulis dan menjalankan program Java. Sisa SDK terdiri dari perangkat lunak tambahan, seperti server aplikasi, debugger, dan dokumentasi.
  • Selain JDK yang paling banyak digunakan dibahas dalam artikel ini, ada beberapa JDK lain yang umum tersedia untuk berbagai platform, beberapa di antaranya dimulai dari sumber Sun JDK dan beberapa yang tidak. Semua dari mereka mematuhi spesifikasi Java dasar, tetapi mereka sering berbeda dalam wilayah eksplisit ditentukan, seperti pengumpulan sampah, strategi kompilasi, dan teknik optimasi. Mereka meliputi: Dalam perkembangan atau dalam modus pemeliharaan: OpenJDK ; Aicas JamaicaVM ; GNU „s GCJ (The GNU Compiler Java ); IBM J9 JDK, untuk AIX, Linux, Windows, MVS,, OS/400 Pocket PC, z / OS, Oracle Corporation „s JRockit JDK, untuk Windows, Linux, dan Solaris, Red Hat „s IcedTea , menggantikan proprietary classpath di OpenJDK . Tidak dipertahankan atau dihentikan: Apache Harmony Apple „s Mac OS Runtime Java JVM / JDK untuk Classic Mac OS Blackdown Java – Pelabuhan Sun JDK untuk Linux Teknologi Wireless Java Secara konsep, teknologi wireless dapat dibagi dalam dua katagori, pertama untuk local dan kedua untuk area yang luas. Peralatan yang termasuk dalam katagori pertama misalnya adalah remote control untuk membuka atau mengunci mobil maupun garasi, telepon cordless 900Mhz, peralatan mainan dengan radio control, atau jaringan wireless. Peralatan wireless jenis pertama ini hanya bekerja untuk daerah dengan jangkauan yang tidak terlalu jauh. Sedangkan peralatan jenis
  • aplikasi yang kedua diantaranya adalah pager, handphone, pda, dan sejenisnya. Jangkauan dari perangkat tersebut jauh lebih besar dari aplikasi jenis pertama. Karena jaringan yang ada di permukaan bumi berupa cell-tower, peralatan komunikasi bergerak seperti handphone menerima layanan dari sebuah wireless carrier atau perusahaan yang mengoperasikan cell-tower tersebut. Aplikasi komunikasi bergerak, dalam perkembangan awal masing-masing vendor menghasilkan platform aplikasi dan sistem operasi sendiri. Sehingga sebuah peralatan handphone Nokia dan Siemens mempunyai platform aplikasi masing-masing. Perbedaaan aplikasi menyebabkan suatu platform aplikasi maupun sistem operasi dalam handphone Nokia tidak dapat dijalankan dalam peralatan handphone Siemens misalnya. Sehingga berakibat memperburuk pengembangan aplikasi-aplikasi yang baru. Standarisasi yang dilakukan untuk membuat suatu bahasa pemrograman yang memiliki kebebasan platform atau platform independence. Salah satu teknologi Java adalah “write once run everywhere”, sehingga protabilitas Java merupakan suatu kekuatan yang dimiliki Java. Java dijalankan pada sistem operasi apapun tanpa perlu kompilasi ulang program Java yang dibuat. Untuk komunikasi bergerak, Sun Microsystem mengenalkan Java 2 Micro Edition (J2ME) yang merupakan salah satu bagian teknologi Java yang digunakan untuk aplikasi Java yang berjalan pada perangkat mobile device dan teknologi aplikasi wireless. Java Virtual Machine (JVM) Java Virtual Machine adalah software yang berfungsi untuk menjalankan program Java supaya dapat dimengerti oleh komputer. Kode program Java ditulis menggunakan editor teks seperti Notepad, Textpad, Editplus, Jcreator dan lainnya. Java Compiler yang digunakan untuk mengkompilasi kode program Java dirancang untuk menghasilkan kode yang netral terhadap semua arsitektur perangkat keras
  • (hardware) yang disebut sebagai Java Bytecode (*.class). Dan JVM merupakan basis dari Java platform dan menjembatani antara bytecode dengan hardware. Java Application Programming Interface (Java API) Java API merupakan komponen-komponen dan kelas Java yang sudah jadi, yang memiliki berbagai kemampuan. Kemampuan untuk menangani objek, string, angka dan sebagainya  Java Applet merupakan program Java yang berjalan di atas browser. Penggunaan applet ini akan membuat halaman HTML lebih dinamis dan menarik.  Java Networking  Java Database Connectivity (JDBC) JDBC API terdiri atas class dan interface yang ditulis dalam bahasa Java untuk sebagai alat bantu bagi pembuat program (developer) dan menyediakan sekumpulan API untuk mengatur keamanan mengakses database seperti Oracle, MySQL, PostgreSQL, Microsoft SQL Server. Jadi keunggulan API JDBC dapat mengakses sumber data dan berjalan pada semua Platform yang mempunyai Java Viortual Machine (JVM). Java Server Pages (JSP) JSP adalah suatu teknologi web berbasis bahasa pemrograman Java dan berjalan pada platform Java. JSP merupakan pengembangan dari Servlet serta merupakan bagian dari teknologi Java 2 Platform, Enterprise Edition (J2EE).
  • PENUTUP KESIMPULAN Kesimpulan yang dapat ditarik dari pembahasan mengenai java yaitu: 1. Java dikenal sebagai bahasa pemrograman yang bersifat strongly, yang berarti diharuskan mendeklarasikan tipe data dari semua variable yang apabila lupa atau salah dalam mengikuti aturan pendeklarasian variable, maka akan terjadi error pada saat proses kompilasi. 2. Tipe data yang terdapat pada bahasa pemrograman Java pada umumnya tidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++, Pascal, Basic, dan lainnya, yakni terdiri dari integer, floating point, char, dan boolean. 3. Aturan penulisan variabel pada bahasa pemrograman Java juga tidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++, Pascal, Basic, dan lainnya, yakni harus diawali dengan huruf/abjad, karakter mata uang, dan underscore ( _ ) dan terdiri dari huruf/abjad, angka, dan underscore ( _ ), serta tidak boleh menggunakan kata-kata yang dikenal oleh bahasa pemrograman Java (keyword), seperti byte, case, int, dan lainnya. 4. Sama halnya dengan semua bahasa dapat dipemrograman, Java juga menyediakan operator-operator aritmatika untuk memanipulasi data numerik. 5. Selain operator aritmatika, Java juga mempunyai operator-operator lain, seperti operator increment dan decrement, operator assignment (penugasan), operator relasi, operator logical, operator bitwise (yang terdiri dari and, or, xor, dan complement), dan operator precedence. Sedangkan dari pembahasan c++ kami menarik kesimpulan C++ dan C sebagai bahasa pendahulunya, C merupakan termasuk bahasa pemrograma n tingkat
  • menengah. Pencipta C adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C merupakan bahasa pemrograman terstruktur yang membagi program ke dalam sejumlah blok (subprogram). Tujuannya adalah untuk memudahkan dalam pembuatan dan pengembangan program. Program yang ditulis dengan C mudah sekali dipindahkan dari satu jenis mesin ke mesin lain. Hal ini karena adanya standarisasi C yaitu ANSI (American National Standards Institute) yang menjadi acuan para pembuat compiler C. C++ diciptakan satu dekade setelah C. C++ diciptakan oleh Bjarne Stroustroup dari Laboratorium Bell, AT&T pada tahun 1983. Pada awalnya C++ diberi nama “A better C”. Nama C++ sendiri diberinama oleh Rick Mascitti. Adapun anda ++ berasal dari operator increment pada bahasa C. Keistimewaan C++ adalah karena bahasa ini mendukung OOP (Object Oriented Programming). Tujuan utama pembuatan C++ adalah untuk meningkatkan produktivitas pemrogram dalam membuat aplikasi. Kebanyakan pakar setuju bahwa OOP dan C++ mampu mengurangi kompleksitas terutama program yang terdiri dari 10.000 baris lebih, bahkan dapat meningkatkan produktivitas 2x lipat dari C, Pascal dan Basic. SARAN Dikarenakan cukup rumitnya bahasa pemrograman Java dan semakin banyaknya pesaing yang berkompetisi di bidang pemrograman Java, maka Penyusun menyarankan kepada pembaca (khususnya pemula), untuk sejak dini mempelajari bahasa pemrograman tersebut. DAFTAR PUSTAKA http://nengmungil.blogspot.com/2011/01/makalah-program-c.html http://pahlawanbetopenk.blogspot.com/2011/01/makalah-program-java.htm
  • http://ilmukomputer.org/2009/05/pemrograman-dengan-c-part-ii/ http://ilmukomputer.org/2009/05/pemrograman-dengan-c-part-iii/