makalah java

46
MAKALAH JAVA KURIKULUM DAN TEKNOLOGI PENDIDIKAN Oleh: MASRUHIL NIM: 1102412037 UNIVERSITAS NEGERI SEMARANG

Upload: udinese-udinese

Post on 06-Dec-2014

3.813 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Makalah java

MAKALAH

JAVA

KURIKULUM DAN TEKNOLOGI PENDIDIKAN

Oleh: MASRUHIL

NIM: 1102412037

UNIVERSITAS NEGERI SEMARANG

TAHUN 2013

Page 2: Makalah java

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

Page 3: Makalah java

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

Page 4: Makalah java

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

Page 5: Makalah java

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:

Page 6: Makalah java

• 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++.

Page 7: Makalah java

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

Page 8: Makalah java

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

Page 9: Makalah java

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

Page 10: Makalah java

akhir “kalimat”Jberikutnya 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( dala

m bit)

Jangkauan

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

short int

16 0 sampai 65.535

Signed short

int

16 Sama seperti int

Long int 32 -2.147.483.647 sampai 2.147.483.647

Page 11: Makalah java

Unsigned

long int

32 0 sampai 4.294.967.295

Signed long

int

32 Sma seperti 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 Ukuran (dalam bit) Jangkauan

Char 8 -127 sampai 127

Unsigned char 8 0 sampai 255

Page 12: Makalah java

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--

3.Operator Binary

A. Operator Aritmatika

Operator Jenis Operasi Contoh

= Penjumlahan 3+4 =7

- Pengurangan 7-4=3

* Perkalian 3*4=12

/ Pembagian 10.0/3.0=3.3333

Page 13: Makalah java

% Sisa bagi/modulus 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

dengan

(8>=3)=1

<= Lebih kecil atau sama

dengan

(8<=3)=0

== 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

Page 14: Makalah java

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

Page 15: Makalah 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

Page 16: Makalah java

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 program-

program 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. Universitas-

universitas 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

Page 17: Makalah java

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 didekompilasi-

Dekompilasi 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

Page 18: Makalah java

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‘’

Page 19: Makalah java

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

Page 20: Makalah java

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

Page 21: Makalah java

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

Page 22: Makalah java

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:

Page 23: Makalah java

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)

Page 24: Makalah java

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

Page 25: Makalah java

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.

Page 26: Makalah java

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:

Page 27: Makalah java

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

Page 28: Makalah java

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

Page 29: Makalah java

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.

Page 30: Makalah java

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

Page 31: Makalah java

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/

Page 32: Makalah java