19 October 2013

Apa Beza C++ dan JAVA??


Bismillahirrahmanirrahim

Selalu orang-orang yang baru didedahkan dengan sains komputer, IT, dan software engineering pasti akan dilatih dahulu dengan C++ dan Java. Akan tetapi adakah perbezaan antara kedua-duanya?? Java ini secara kasarnya ada sedikit perbezaan yang ketara kalau dibandingkan dengan C/C++.

Untuk dipermudahkan perbezaannya, mari kita tengok gambar di bawah. Ini adalah kes untuk C/C++.

Ok kalau tengok ini adalah C/C++ source code. Kalau kita compile C/C++ source, terus boleh run direct dalam Operating System. So maknanya, untuk compile, source code yang dibuat perlu match dengan operating system yang digunakan.


Contohnya kalau kita pakai Linux, file library yang digunakan perlu match dengan library yang ada dalam Linux (Eg. unistd ). Begitu juga dengan lain-lain OS.


Gambar di atas ini ialah Java Source Code. Kalau kita tengok, Java apabila compile tak boleh terus pakai atas OS. Dia akan generate Byte Code dan kita perlukan Java Virtual Machine (JVM) untuk translate code tersebut dan membolehkan ia digunakan atas Operating System.

Semua jenis JVM boleh digunakan untuk translate byte code yang sama, tetapi jenis JVM ini bergantung kepada jenis OS yang digunakan. Kalau pakai Windows, jenis JVM yang digunakan adalah berlainan dengan jika kita menggunakan Linux.

Ok kemudian perbezaan antara C language yang biasa kita pakai dengan Java, C++ dan lain-lain adalah jenis program language itu sendiri.

C ialah structure program. Kalau anda yang biasa gunakan jenis structure programming language ni, untuk buat sesuatu program itu sangat mudah, tetapi untuk debug kembali anda perlu check satu persatu, dan kadang-kadang jika perlu untuk buat perubahan kita kena adjust banyak benda kembali. Erm tu adalah kelebihan dan kelemahan jenis structure program language.

        
                            Structured                                                       Object Oriented



Java, C++ pula adalah jenis object oriented program. Object oriented program ini bagi yang tak biasa pakai, kita akan belajar dengan lebih lanjut Insya Allah. Tetapi secara asasnya, object oriented language ini pada permulaan untuk buatnya mungkin sukar sedikit tetapi untuk mengubahnya tidak perlu membuat perubahan yang banyak seperti mana structure program.
Ok tamat cerita perbezaan antara language yang wujud. Sekarang mari kita cerita sikit tentang perbezaan-perbezaan antara edition Java yang wujud.

Ada 3 edition Java yang wujud pada masa kini, iaitu yang pertama J2SE (Standard Edition), kemudian J2EE (Enterprise Edition) dan yang ketiganya J2ME (Micro Edition).
Setiap satu ini ada kegunaannya yang tersendiri bergantung kepada di mana kita hendak gunakannya.

Untuk Standard Edition, target user adalah normal user macam kita, yang sekadar pakai untuk programkan benda-benda untuk kegunaan biasa. Target platform untuk Standard Edition adalah Computer.

Enterprise Edition khusus untuk tujuan business. Basically apa yang terdapat dalam Standard Edition semuanya ada dalam Enterprise Edition. Dan dalam Enterprise Edition juga terkandung beberapa benda tambahan khas untuk tujuan business. Target platform J2EE ini juga adalah computer.

Lastly, Micro Edition. Edisi ini adalah khas untuk gadjet-gadjet kecil seperti handphone dan apa-apa lagi teknologi-teknologi kecil sekarang ini.

Orite, sepertimana yang kita ketahui tadi, untuk compile Java source code ini kita memerlukan compiler kemudian memerlukan virtual machine untuk translate byte code tadi. So dalam JDK sudah terkandung kesemuanya. Jadi anda tidak perlu susah-susah mencari compiler dan juga virtual machine yang berlainan untuk tujuan tersebut.

No comments: