Java (platform perangkat lunak): Perbedaan antara revisi
Konten dihapus Konten ditambahkan
→Mesin Virtual Java: Perbaikan tata bahasa Tag: Suntingan perangkat seluler Suntingan aplikasi seluler Suntingan aplikasi Android |
Fitur saranan suntingan: 3 pranala ditambahkan. Tag: VisualEditor Suntingan perangkat seluler Suntingan peramban seluler Tugas pengguna baru Disarankan: tambahkan pranala |
||
(15 revisi perantara oleh 7 pengguna tidak ditampilkan) | |||
Baris 1:
{{Terjemahan kaku|2=Java (software platform)}}
[[Berkas:Aspectotuxguitar.jpg|jmpl|
'''Java''' adalah satu set [[Perangkat lunak|perangkat lunak komputer]] dan spesifikasi yang dikembangkan oleh [[Sun Microsystems]], yang kemudian diakuisisi oleh [[Oracle Corporation]], yang menyediakan sistem untuk mengembangkan [[Aplikasi|aplikasi perangkat lunak]] dan menerapkan hal itu dalam sebuah [[Lintas platform|cross-platform]] lingkungan komputasi. digunakan di berbagai macam [[Platform (komputer)|platform komputasi]] dari [[Sistem benam|perangkat embedded]] dan [[Telepon genggam|ponsel]] ke [[Peladen|server perusahaan]] dan [[superkomputer]]. Sementara mereka yang kurang umum dari standalone aplikasi Java, [[Java applet
Penulisan dalam [[Java|bahasa pemrograman Java]] adalah cara utama untuk menghasilkan kode yang akan digunakan sebagai [[Bytecode Java|kode byte]] pada sebuah [[Mesin Virtual Java]] (JVM);
Pada November 13, 2006, Sun Microsystems membuat sebagian besar implementasi dari tersedia di bawah [[Lisensi Publik Umum GNU|GNU General Public License]] (GPL).<ref>{{Cite web|url=http://www.sun.com/2006-1113/feature/story.jsp|title=Sun Opens Java|date=13 November 2006|publisher=Sun Microsystems|archive-url=https://web.archive.org/web/20080513023707/http://www.sun.com/2006-1113/feature/story.jsp|archive-date=2008-05-13}}</ref><ref>{{Cite web|url=http://mail.openjdk.java.net/pipermail/build-dev/2010-December/003881.html|title=OpenJDK7 and OpenJDK6 Binary Plugs Logic Removed|last=Kelly O'Hair|date=December 2010|publisher=[[Oracle Corporation]]|access-date=2011-11-25}}</ref>
Terbaru versi Java 8, hanya didukung (misalnya dengan
== Platform ==
Platform Java adalah seperangkat program yang memfasilitasi mengembangkan dan menjalankan program yang ditulis dalam [[Java]] bahasa pemrograman. Java platform akan mencakup eksekusi mesin (disebut [[mesin virtual]]), compiler dan satu set [[Pustaka perangkat lunak|perpustakaan]]; mungkin juga ada tambahan [[Peladen|server]] dan alternatif perpustakaan yang tergantung pada persyaratan. Java adalah tidak spesifik untuk setiap prosesor atau [[sistem operasi]] seperti Java platform telah diimplementasikan untuk berbagai macam [[perangkat keras]] dan sistem operasi dengan maksud untuk memungkinkan program Java untuk menjalankan identik pada semua dari mereka. Berbeda platform target kelas yang berbeda dari perangkat dan aplikasi domain:
* Java Card: Sebuah teknologi yang memungkinkan kecil aplikasi berbasis Java (applet) yang akan berjalan dengan aman pada [[Kartu pintar|smart card]] dan kecil yang sama-memori perangkat.
* Java ME (Micro Edition): Menentukan beberapa set yang berbeda dari perpustakaan (dikenal sebagai profil) untuk perangkat dengan penyimpanan terbatas, layar, dan kapasitas daya. Hal ini sering digunakan untuk mengembangkan aplikasi untuk perangkat mobile, Pda, TV [[Dekoder (televisi)|set-top box]], dan printer.
Baris 19 ⟶ 20:
=== Mesin Virtual Java ===
Jantung platform Java adalah konsep "virtual machine" yang mengeksekusi program [[bytecode Java]]. Bytecode ini tetap bisa berjalan, tidak peduli
Penggunaan bytecode sebagai perantara bahasa yang memungkinkan program Java untuk berjalan pada platform apapun yang memiliki mesin virtual yang tersedia. Penggunaan JIT compiler berarti bahwa aplikasi Java, setelah penundaan singkat selama pemuatan dan setelah mereka memiliki "pemanasan" dengan menjadi semua atau sebagian besar JIT-dikompilasi, cenderung berjalan secepat asli program.<ref name="LewisNeumann"
Sejak JRE versi 1.2, Matahari JVM pelaksanaan sudah termasuk [[Kompilasi tepat waktu|just-in-time compiler]] bukan seorang penerjemah.
Baris 27 ⟶ 28:
=== Perpustakaan kelas ===
Di
Java class library melayani tiga tujuan dalam platform Java. Pertama, seperti standar lainnya kode perpustakaan, perpustakaan Java menyediakan programmer terkenal set fungsi untuk melakukan tugas-tugas umum, seperti menjaga daftar dari barang-barang atau melakukan parsing string kompleks. Kedua, kelas, perpustakaan menyediakan sebuah antarmuka abstrak untuk tugas-tugas yang biasanya akan sangat bergantung pada perangkat keras dan sistem operasi. Tugas-tugas seperti akses jaringan dan akses file yang sering sangat terjalin dengan khas implementasi dari masing-masing platform. Yang <code>java.net</code> dan <code>.io</code> perpustakaan mengimplementasikan sebuah abstraksi layer di OS asli kode, kemudian menyediakan sebuah antarmuka standar untuk aplikasi Java untuk melakukan tugas-tugas. Akhirnya, ketika beberapa platform yang mendasari tidak mendukung semua fitur aplikasi Java mengharapkan, perpustakaan kelas bekerja untuk anggun menangani absen komponen, baik dengan emulasi untuk menyediakan pengganti, atau setidaknya dengan menyediakan cara yang konsisten untuk memeriksa keberadaan fitur tertentu.
=== Bahasa ===
Kata "Java",
Pihak ketiga yang telah menghasilkan banyak [[Kompilator|kompiler]] atau [[Penerjemah (komputasi)|interpreter]] yang menargetkan JVM. Beberapa dari ini adalah untuk bahasa yang ada, sementara yang lain adalah untuk ekstensi untuk bahasa
* BeanShell – ringan bahasa scripting untuk Java<ref>{{URL|www.beanshell.org/}}</ref>
* Clojure – dialek dari bahasa pemrograman Lisp
Baris 46 ⟶ 47:
=== Platform serupa ===
Keberhasilan dari dan tulis sekali, jalankan di mana saja konsep-konsep yang lainnya, upaya-upaya serupa, terutama [[.NET Framework]], yang muncul sejak tahun 2002, yang menggabungkan banyak sukses-aspek dari
.NET termasuk seperti bahasa yang disebut [[J sharp|Visual J#]] (sebelumnya bernama J++) yang kompatibel dengan Java spesifikasi, dan terkait perpustakaan kelas sebagian besar tanggal tua JDK 1.1 versi bahasa. Untuk alasan ini, itu lebih dari sebuah transisi bahasa untuk beralih dari ke .NET platform dari itu adalah kelas pertama .NET bahasa. Visual J# dihentikan dengan rilis Microsoft Visual Studio 2008. Ada versi gratis dengan [[Microsoft Visual Studio|Visual Studio 2005]] akan didukung hingga 2015 sesuai produk siklus hidup strategi.{{Butuh rujukan|date=July 2016}}
Baris 63 ⟶ 64:
Bill Joy telah memimpikan sebuah bahasa baru yang menggabungkan Mesa dan C. Dalam sebuah makalah yang disebut ''lebih Lanjut'', ia mengusulkan untuk Sun bahwa para insinyur harus menghasilkan aplikasi yang [[Pemrograman berorientasi objek|berorientasi objek]] lingkungan yang didasarkan pada C++. Awalnya, Gosling berusaha untuk memodifikasi dan memperluas C++ (usulan pembangunan yang ia disebut sebagai "C++ ++ --") tapi segera ditinggalkan yang mendukung untuk menciptakan sebuah bahasa baru, yang disebut ''Oak'', setelah pohon yang berdiri tepat di luar kantornya.{{Butuh rujukan|date=June 2015}}
Pada musim panas 1992, tim bisa menunjukkan bagian-bagian dari platform baru, termasuk Hijau [[Sistem operasi|OS]], Oak bahasa, perpustakaan, dan hardware. Mereka demonstrasi pertama, pada tanggal 3 September 1992, berfokus pada membangun sebuah [[Pembantu digital pribadi|personal digital assistant]] (PDA) perangkat bernama ''Star7''{{Ref|star7}} yang memiliki antarmuka grafis dan smart agen yang disebut "Duke" untuk membantu pengguna. Pada bulan November tahun itu, the Green Project itu berputar off untuk menjadi ''Firstperson'', [[anak perusahaan]] yang sepenuhnya dimiliki dari Sun Microsystems, dan tim pindah ke [[Palo Alto, California]].<ref>{{Cite web|url=http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/J2eeTutorialForeword.html|title=Foreword|last=Kathy Walrath|date=2001-12-21|publisher=[[Sun Microsystems]]|access-date=2009-08-02}}</ref> Yang Firstperson tim memiliki kepentingan dalam membangun sangat interaktif perangkat, dan ketika [[Time Warner]] mengeluarkan request for proposal (RFP) untuk [[Dekoder (televisi)|set-top box]], Firstperson mengubah target mereka dan menanggapi dengan sebuah proposal untuk sebuah set-top box platform. Namun, [[Televisi kabel|kabel]] industri merasa bahwa platform mereka memberikan terlalu banyak kontrol kepada pengguna, sehingga Firstperson kehilangan tawaran mereka untuk [[Silicon Graphics|SGI]]. Tambahan berurusan dengan Yang 3DO Perusahaan untuk set-top box juga gagal terwujud. Mampu membangkitkan minat dalam industri televisi, perusahaan digulung kembali ke Matahari.
===
[[Berkas:John_Gage.jpg|jmpl|John Gage]]
Pada bulan juni dan juli 1994 – setelah tiga hari dari brainstorming dengan John Gage (Direktur Ilmu pengetahuan untuk
Pada tahun 1994,
=== Versi sejarah ===
Baris 86 ⟶ 87:
''Java SE 6'' (11 desember 2006) – Codename ''Mustang''. Itu dibundel dengan manajer database dan memfasilitasi penggunaan bahasa scripting dengan JVM (seperti [[JavaScript]] menggunakan [[Mozilla]]'s Badak engine). Pada versi ini, Matahari diganti nama "J2SE" dengan ''Java SE'' dan menjatuhkan ".0" dari nomor versi.<ref>{{Cite web|url=http://www.java.com/en/about/javanaming.jsp|title=Java Naming|website=Java.com|publisher=Oracle|access-date=25 August 2011}}</ref> perubahan besar Lainnya termasuk dukungan untuk pluggable penjelasan (JSR 269), banyak [[Antarmuka pengguna grafis|GUI]] perbaikan, termasuk UI asli perangkat tambahan untuk mendukung tampilan dan nuansa dari [[Windows Vista]], dan perbaikan untuk Platform Java Debugger Arsitektur (JPDA) & JVM Alat Antarmuka untuk pemantauan yang lebih baik dan pemecahan masalah.
''Java SE 7'' (28 juli 2011)
Pada bulan juni 2016, setelah publik terakhir update Java 7,<ref>https://www.java.com/en/download/faq/release_dates.xml</ref> "[[Exploit|jarak jauh dieksploitasi]]" bug keamanan di Java 6, 7 dan 8 di mana diumumkan.<ref name="remote exploit"
Yang {{As of| 2015 |alt=current}} version, ''Java SE 8'' (18 Maret 2014). Perubahan penting termasuk bahasa tingkat dukungan untuk ekspresi lambda (penutupan) dan metode default, Proyek Nashorn JavaScript runtime, Tanggal dan Waktu yang baru API terinspirasi oleh Joda Waktu, dan penghapusan PermGen. Versi ini tidak secara resmi didukung pada platform Windows XP.<ref>{{Cite web|url=http://www.java.com/en/download/faq/winxp.xml|title=Windows XP and Java|date=2014-04-08|publisher=Java.com|access-date=2016-02-09}}</ref> Namun, karena akhir dari 7 siklus hidup ini adalah versi direkomendasikan untuk pengguna XP. Sebelumnya, hanya tidak resmi instalasi manual metode yang telah dijelaskan untuk Windows XP SP3. Hal ini mengacu pada JDK8, mengembangkan platform untuk Java yang juga mencakup sepenuhnya berfungsi [[Mesin Virtual Java|Java Runtime Environment]].<ref>{{Cite web|url=https://stackoverflow.com/questions/20965564/installing-jdk8-on-windows-xp-advapi32-dll-error|title=installing JDK8 on Windows XP - advapi32.dll error}}</ref> 8 didukung pada Windows Server 2008 R2 SP1, Windows Vista SP2 dan Windows 7 SP1, Ubuntu 12.04 LTS dan lebih tinggi (dan beberapa Os lain).<ref>[http://www.oracle.com/technetwork/java/javase/certconfig-2095354.html Oracle JDK 8 and JRE 8 Certified System Configurations Contents]</ref>
JDK 9 Akses Awal membutuhkan Windows 7 SP1, Windows Server 2012, Ubuntu 16.04 LTS atau lebih tinggi (atau OS lain yang didukung, seperti OS X atau Solaris).<ref>{{Cite web|url=https://jdk9.java.net/jdk9_supported_platforms.html|title=JDK 9 supported Platforms|quote=Note: Preliminary list. This is page is is subject to change through the release cycle.|access-date=2016-10-20|archive-date=2015-04-15|archive-url=https://web.archive.org/web/20150415163922/https://jdk9.java.net/jdk9_supported_platforms.html|dead-url=yes}}</ref>
Selain bahasa perubahan, perubahan yang signifikan telah dibuat untuk Java class library selama bertahun-tahun, yang telah berkembang dari beberapa ratus kelas dalam JDK 1.0 untuk lebih dari tiga ribu di J2SE 5.0. Seluruh Api yang baru, seperti Ayunan dan Java 2D, telah berkembang, dan banyak dari asli JDK 1.0 kelas dan metode yang telah usang.
Baris 98 ⟶ 99:
== Penggunaan ==
=== Penggunaan
[[Berkas:FrostWire-Vista.png|jmpl|Sebuah program Java yang berjalan pada komputer desktop]]
Menurut Oracle, Java Runtime Environment adalah ditemukan pada lebih dari 850 juta PCs.<ref>{{Cite web|url=http://java.com/en/download/faq/whatis_java.xml|title=What is Java technology and why do I need it?|access-date=15 December 2011|quote=Java runs on more than 850 million personal computers worldwide, and on billions of devices worldwide, including mobile and TV devices.}}</ref> [[Microsoft]] belum paket [[Mesin Virtual Java|Java Runtime Environment]] (JRE) dengan [[sistem operasi]] sejak Sun Microsystems menggugat Microsoft untuk menambahkan Jendela-kelas khusus untuk paket Java runtime environment, dan untuk membuat kelas-kelas baru yang tersedia melalui Visual J++.{{Butuh rujukan|date=December 2011}} Apple tidak lagi termasuk Java runtime dengan [[OS X]] sebagai [[Mac OS X Lion|versi 10.7]], tetapi sistem akan meminta pengguna untuk men-download dan menginstal itu pertama kalinya sebuah aplikasi yang membutuhkan JRE diluncurkan.{{Butuh rujukan|date=July 2014}} Banyak [[Distribusi Linux|distribusi Linux yang]] mencakup sebagian kompatibel [[Perangkat lunak bebas|software gratis]] paket GNU Classpath<ref>{{Cite web|url=http://www.kaffe.org/~stuart/japi/htmlout/h-jdk15-classpath|title=Results of comparison between jdk15 and classpath|publisher=kaffe.org|access-date=2016-10-20|archive-date=2007-09-28|archive-url=https://web.archive.org/web/20070928082809/http://www.kaffe.org/~stuart/japi/htmlout/h-jdk15-classpath|dead-url=yes}}</ref> dan semakin kebanyakan kompatibel IcedTea.
Beberapa aplikasi Java yang cukup luas penggunaan desktop, termasuk NetBeans dan [[Eclipse (perangkat lunak)|Eclipse]] [[Lingkungan pengembangan terpadu|integrated development lingkungan]], dan berbagi file klien seperti [[LimeWire]] dan [[Azureus|Vuze]]. juga digunakan dalam [[MATLAB]] matematika pemrograman lingkungan, baik untuk rendering [[antarmuka pengguna]] dan sebagai bagian dari sistem inti. Java menyediakan cross platform user interface untuk beberapa high-end aplikasi kolaboratif seperti Lotus Notes.
Baris 106 ⟶ 107:
Oracle berencana untuk pertama mencela secara terpisah diinstal Java plugin browser dari Java Runtime Environment di JDK 9 kemudian menghapus sepenuhnya dari masa mendatang, memaksa para pengembang web untuk menggunakan teknologi alternatif.<ref>{{Cite web|url=https://blogs.oracle.com/java-platform-group/entry/moving_to_a_plugin_free|title=Moving to a Plugin-Free Web}}</ref>
=== Perangkat
[[Berkas:2Mobiles-with-Bombus.jpg|jmpl|2006 era ponsel menjalankan aplikasi Java]]
Keragaman produsen ponsel telah menyebabkan kebutuhan untuk standar bersatu sehingga program-program dapat berjalan pada ponsel dari pemasok yang berbeda – MIDP. Standar pertama adalah MIDP 1, yang
===
[[Berkas:Share_and_Repository_Browser_(Alfresco_Community_Edition).jpg|jmpl|-didukung aplikasi web]]
Platform Java telah menjadi andalan perusahaan ITU pengembangan sejak pengenalan Enterprise Edition pada tahun 1998, dalam dua cara yang berbeda:
Baris 127 ⟶ 128:
Duke adalah [[maskot]].<ref>{{Cite web|url=http://www.oracle.com/us/technologies/java/duke-424174.html|title=Duke, the Java Mascot|publisher=[[Oracle Corporation|Oracle]]|access-date=2011-11-12}}</ref>
Ketika Sun mengumumkan bahwa SE Java dan Java ME akan dirilis di bawah [[lisensi perangkat lunak bebas]] ( [[Lisensi Publik Umum GNU|GNU General Public License]]), mereka merilis Duke grafis di bawah lisensi BSD pada waktu yang sama.<ref>{{Cite web|url=https://duke.dev.java.net/|title=duke: Project Home Page|publisher=[[Sun Microsystems]]|access-date=2007-03-18|archive-date=2007-06-18|archive-url=https://web.archive.org/web/20070618073343/https://duke.dev.java.net/|dead-url=yes}}</ref> baru Duke kepribadian dibuat setiap tahun.<ref>{{Cite web|url=http://www.oracle.com/us/technologies/java/duke-424174.html|title=Duke, the Java Mascot}}</ref> misalnya, pada bulan juli 2011 "Teknologi masa Depan Duke" termasuk hidung yang lebih besar, jetpack, dan biru di sayap.<ref>{{Cite web|url=http://blogs.oracle.com/java/entry/future_tech_duke|title=Future Tech Duke (The Java Source)|publisher=Tori Wieldt|access-date=2011-08-17|archive-date=2011-08-20|archive-url=https://web.archive.org/web/20110820081222/http://blogs.oracle.com/java/entry/future_tech_duke|dead-url=yes}}</ref>
== Perizinan ==
Baris 134 ⟶ 135:
Sementara beberapa pihak ketiga proyek (misalnya GNU Classpath dan [[Apache Harmony]]) dibuat [[perangkat lunak bebas]] parsial implementasi, ukuran besar dari Matahari perpustakaan dikombinasikan dengan penggunaan kamar bersih metode berarti bahwa mereka implementasi dari Java perpustakaan (compiler dan VM adalah relatif kecil dan didefinisikan dengan baik) yang tidak lengkap dan tidak sepenuhnya kompatibel. Implementasi ini juga cenderung jauh lebih dioptimalkan dari Matahari.{{Butuh rujukan|date=January 2011}}
===
[[Berkas:Jonathan_Schwartz.jpg|jmpl|Jonathan Schwartz]]
[[Sun Microsystems|Sun]] mengumumkan di JavaOne 2006 bahwa pulau akan menjadi [[Perangkat lunak bebas|bebas]] dan [[perangkat lunak sumber terbuka]],<ref>{{Cite web|url=http://blogs.sun.com/roller/page/jonathan/200606#busy_week1|title=?|last=Schwartz|first=Jonathan|website=Jonathan Schwartz's Blog|publisher=Sun Microsystems}}</ref> dan pada tanggal 25 oktober 2006, di Oracle OpenWorld konferensi, Jonathan I. Schwartz mengatakan bahwa perusahaan itu akan mengumumkan rilis core [[Java (software platform)#Platform|Platform Java]] sebagai perangkat lunak bebas dan terbuka dalam waktu 30 sampai 60 hari.<ref>{{Cite web|url=http://www.formtek.com/blog/?p=116|title=Oracle OpenWorld: UnBreakable Linux / 5015.2 not on the horizon | Formtek Blog|last=Name *|date=2006-10-26|publisher=Formtek.com|access-date=2016-02-09}}</ref>
Sun merilis HotSpot virtual mesin dan compiler sebagai perangkat lunak gratis dibawah [[Lisensi Publik Umum GNU|lisensi GNU General Public License]] pada tanggal 13 November 2006, dengan janji bahwa sisa JDK (yang termasuk JRE) yang akan ditempatkan di bawah GPL pada bulan Maret 2007 ("kecuali untuk beberapa komponen yang Matahari tidak memiliki hak untuk mempublikasikan didistribusikan bentuk kode sumber di bawah GPL").<ref>{{Cite web|url=http://www.sun.com/2006-1113/feature/index.jsp|title=Oracle and Sun Microsystems | Strategic Acquisitions | Oracle|date=|publisher=Sun.com|access-date=2016-02-09|archive-date=2007-04-21|archive-url=https://web.archive.org/web/20070421151747/http://www.sun.com/2006-1113/feature/index.jsp|dead-url=yes}}</ref> Menurut [[Richard Matthew Stallman|Richard Stallman]], ini akan berarti mengakhiri " perangkap".<ref>{{Cite web|url=https://www.gnu.org/philosophy/java-trap.html|title=Free but Shackled - The Java Trap - GNU Project - Free Software Foundation|date=2004-04-12|publisher=Gnu.org|access-date=2016-02-09}}</ref> Mark Shuttleworth yang disebut pers awal pengumuman, "Sebuah tonggak bersejarah bagi [[perangkat lunak bebas]] komunitas".<ref>{{Cite news|url=http://news.bbc.co.uk/1/hi/technology/6144748.stm|title=Sun 'releases' Java to the World|date=November 13, 2006|work=BBC News|access-date=May 6, 2010}}</ref>
Sun merilis [[kode sumber]] dari perpustakaan Kelas bawah [[Lisensi Publik Umum GNU|GPL]] pada 8 Mei 2007, kecuali beberapa bagian tertentu yang diberi lisensi oleh Matahari dari pihak ke-3 yang tidak ingin mereka kode yang akan dirilis di bawah sebuah software gratis dan open-source yang berlisensi.<ref>{{Cite web|url=http://mail.openjdk.java.net/pipermail/announce/2007-May.txt|title=Open JDK is here!|date=May 8, 2007|publisher=Sun Microsystems|access-date=2007-05-09}}</ref> Beberapa dibebani bagian ternyata cukup bagian-bagian kunci dari platform seperti font rendering dan 2D rasterising, tapi ini dirilis sebagai open-source kemudian oleh Matahari (lihat OpenJDK perpustakaan Kelas).
Baris 144 ⟶ 145:
Matahari itu tujuannya adalah untuk mengganti bagian-bagian yang tetap eksklusif dan tertutup-sumber dengan implementasi alternatif dan membuat perpustakaan kelas benar-benar gratis dan open source. Sementara itu, pihak ketiga proyek yang disebut IcedTea dibuat benar-benar gratis dan sangat bermanfaat JDK dengan mengganti dibebani kode dengan rintisan atau kode dari GNU Classpath. Meskipun OpenJDK sejak itu menjadi mudah dibangun tanpa dibebani bagian (dari OpenJDK 6 b10<ref>{{Cite web|url=http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-June/000060.html|title=OpenJDK6 b10 source posted|last=Wielaard|first=Mark|date=2007-05-30|access-date=2008-07-12}}</ref>), IcedTea masih digunakan oleh sebagian besar distribusi linux, seperti [[Fedora]], RHEL, [[Debian]], [[Ubuntu]], [[Gentoo Linux|Gentoo]], [[Arch Linux]] dan [[Slackware]], karena menyediakan keamanan rilis dan mudah cara untuk patch inklusi. OpenJDK juga masih tidak menyertakan plugin browser & Web Mulai implementasi, sehingga IcedTea pendamping proyek, IcedTea-Web, adalah diperlukan untuk mengisi kesenjangan ini.
Pada juni 2008, diumumkan bahwa IcedTea6 (karena dikemas versi OpenJDK pada [[Fedora|Fedora 9]]) telah lulus Teknologi Kompatibilitas Kit tes dan dapat mengklaim untuk menjadi sepenuhnya kompatibel 6 implementasi.<ref>{{Cite web|url=http://blog.softwhere.org/archives/196|title=Java is finally Free and Open|last=Sharples|first=Rich|date=2008-06-19|access-date=2016-10-20|archive-date=2008-06-20|archive-url=https://web.archive.org/web/20080620065024/http://blog.softwhere.org/archives/196|dead-url=yes}}</ref>
Karena OpenJDK adalah di bawah lisensi GPL, adalah mungkin untuk mendistribusikan versi kustom dari JRE secara langsung dengan perangkat lunak aplikasi,<ref>{{Cite web|url=https://github.com/libgdx/libgdx/wiki/Bundling-a-jre|title=Bundling a jre · libgdx/libgdx Wiki · GitHub|last=libgdx|date=2013-12-09|publisher=Github.com|access-date=2016-02-09}}</ref><ref>{{Cite web|url=http://www.java-gaming.org/index.php?PHPSESSID=ot5lti8ioobb2tv4q65e3vt402&topic=29070.0|title=Question about bundling custom OpenJDK|date=|publisher=Java-Gaming.org|access-date=2016-02-09|archive-date=2016-03-04|archive-url=https://web.archive.org/web/20160304033854/http://www.java-gaming.org/index.php?PHPSESSID=ot5lti8ioobb2tv4q65e3vt402&topic=29070.0|dead-url=yes}}</ref> daripada membutuhkan enduser (atau mereka sysadmin) untuk men-download dan menginstal versi yang benar dari milik Oracle JRE ke masing-masing sistem mereka sendiri.
== Kritik ==
Dalam kebanyakan kasus, dukungan Java adalah tidak perlu di Web browser, dan
===
Ketika
===
Java tidak memiliki
Meskipun hal ini mungkin untuk sebagian menghindari masalah ini dengan konversi kode dan menggunakan data yang lebih besar jenis, itu membuat menggunakan Java rumit untuk menangani data unsigned. Sementara 32-bit signed integer dapat digunakan untuk menyimpan 16-bit unsigned nilai dengan relatif mudah, 32-bit unsigned nilainya akan memerlukan 64-bit signed integer. Selain itu, 64-bit unsigned nilai tidak dapat disimpan menggunakan tipe integer di karena tidak ada jenis yang lebih besar dari 64 bit yang ada dalam bahasa . Jika disarikan menggunakan fungsi, fungsi panggilan menjadi perlu untuk banyak operasi yang asli untuk beberapa bahasa lain. Selain itu, adalah mungkin untuk menggunakan Java ditandatangani bilangan bulat untuk meniru unsigned bilangan bulat dengan ukuran yang sama, tetapi hal ini membutuhkan pengetahuan rinci kompleks bitwise operasi.<ref>{{Cite web|url=http://darksleep.com/player/JavaAndUnsignedTypes.html|title=Java and unsigned int, unsigned short, unsigned byte, unsigned long, etc. (Or rather, the lack thereof)|last=Owens|first=Sean R.|date=2009-11-05|website=darksleep.com|access-date=2010-10-09}}</ref>
===
Sementara di floating point aritmetika adalah sebagian besar didasarkan pada standar IEEE 754 (''Standar untuk Biner Floating-Point Aritmetika''), fitur-fitur tertentu yang tidak didukung bahkan ketika menggunakan <code>strictfp</code> pengubah, seperti Pengecualian Bendera dan Diarahkan Pembulatan — kemampuan yang diamanatkan oleh Standar IEEE 754. Selain itu, extended precision floating-point jenis yang diizinkan dalam 754 dan hadir dalam banyak prosesor yang tidak diizinkan di .<ref>{{Cite web|url=http://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf|title=How Java's Floating-Point Hurts Everyone Everywhere|last=Kahan|first=W.|last2=Joseph D. Darcy|date=1998-03-01|format=PDF|access-date=2006-12-09}}</ref><ref>{{Cite web|url=http://java.sun.com/docs/books/jls/third_edition/html/typesValues.html#4.2.3|title=Types, Values, and Variables|publisher=Sun Microsystems|access-date=2006-12-09}}</ref>
=== Kinerja ===
Pada hari-hari awal dari (sebelum HotSpot VM dilaksanakan di 1.3 2000) ada beberapa kritik kinerja. Namun, tolok ukur biasanya melaporkan menjadi sekitar 50% lebih lambat dari C (bahasa yang mengkompilasi kode asli).<ref name="debchart">
Java kinerja telah meningkat secara substansial sejak versi awal.<ref name="LewisNeumann"
[[Bytecode Java|Java bytecode]] dapat diartikan pada saat dijalankan oleh mesin virtual, atau dapat disusun pada waktu beban atau runtime menjadi kode native yang berjalan secara langsung pada perangkat keras komputer. Interpretasi lebih lambat dari yang asli eksekusi dan kompilasi pada waktu beban atau runtime memiliki kinerja awal penalti untuk kompilasi. Modern performant JVM implementasi semua menggunakan kompilasi pendekatan, sehingga setelah waktu startup awal kinerja setara dengan native code.
Baris 173 ⟶ 174:
Dalam beberapa tahun terakhir, para peneliti telah menemukan sejumlah kelemahan keamanan dalam beberapa banyak digunakan Java implementasi, termasuk Oracle, yang memungkinkan kode yang tidak dipercaya untuk memotong sandboxing mekanisme, mengekspos pengguna untuk serangan berbahaya. Kekurangan ini mempengaruhi hanya aplikasi Java yang mengeksekusi sewenang-wenang tepercaya bytecode, seperti web browser plugin yang menjalankan Java applet yang didownload dari situs web publik. Aplikasi di mana pengguna trust, dan memiliki kontrol penuh atas semua kode yang sedang dieksekusi tidak terpengaruh.
Pada agustus 31, 2012, 6 dan 7 pada Microsoft Windows, Mac OS X, dan Linux ditemukan memiliki keamanan yang
Pada tanggal 10 januari 2013, tiga spesialis komputer berbicara menentang, mengatakan kepada [[Reuters]] bahwa itu tidak aman dan bahwa orang harus menonaktifkan Java. Jaime Blasco, Labs Manajer dengan AlienVault Labs, menyatakan bahwa " berantakan. Hal ini tidak aman. Anda harus menonaktifkannya."<ref>{{Cite web|url=http://www.nbcnews.com/id/50438206/ns/technology_and_science-innovation/t/why-how-disable-java-your-computer-now#.UhJ652RrMdg|title=Why and How to Disable Java on Your Computer Now - Technology & science - Innovation|date=2013-01-12|publisher=NBC News|access-date=2016-02-09}}</ref>
Kerentanan ini mempengaruhi {{Nowrap|Java 7}} dan tidak jelas apakah hal itu mempengaruhi {{Nowrap|Java 6}}, sehingga disarankan agar konsumen menonaktifkannya.<ref>{{Cite web|url=http://www.forbes.com/sites/eliseackerman/2013/01/11/us-department-of-homeland-security-calls-on-computer-users-to-disable-java/|title=US Department of Homeland Security Calls On Computer Users To Disable Java|last=|date=|publisher=Forbes.com|access-date=2016-02-09}}</ref><ref>{{Cite web|url=http://threatpost.com/en_us/blogs/nasty-new-java-zero-day-found-exploit-kits-already-have-it-011013?utm_source=Threatpost&utm_medium=Tabs&utm_campaign=Today%27s+Most+Popular|title=The first stop for security news|last=Brook|first=Chris|date=|publisher=Threatpost|access-date=2016-02-09}}</ref> peringatan Keamanan dari Oracle mengumumkan jadwal penting yang berhubungan dengan keamanan patch ke .<ref>{{Cite web|url=http://www.oracle.com/technetwork/topics/security/alerts-086861.html|title=Critical Patch Updates and Security Alerts|date=|publisher=Oracle.com|access-date=2016-02-09}}</ref>
Pada tanggal 14 januari 2013, para ahli keamanan mengatakan bahwa update masih gagal untuk melindungi Pc dari serangan.<ref>{{Cite web|url=http://www.independent.ie/business/technology/emergency-patch-for-java-fails-to-fix-cybercrime-holes-warn-experts-3351321.html|title=Emergency patch for Java fails to fix cybercrime holes, warn experts|last=Jim Finkle|date=2013-01-14|publisher=Independent.ie|access-date=2016-02-09}}</ref> Ini mengeksploitasi lubang diminta tanggapan dari [[Departemen Keamanan Dalam Negeri Amerika Serikat|United States Department of Homeland Security]] mendorong pengguna untuk menonaktifkan atau uninstall .<ref name="Homeland Security"
Menanggapi terbaru keamanan dan kerentanan masalah, keamanan blogger Brian Krebs telah meminta pengguna untuk menghapus setidaknya Java plugin browser dan juga seluruh perangkat lunak. "Saya melihat ke depan untuk sebuah dunia tanpa plugin Java (dan tidak memiliki untuk mengingatkan pembaca tentang triwulanan patch update) tapi itu mungkin akan menjadi tahun sebelum berbagai versi dari plugin ini adalah sebagian besar dihapus dari sistem end-user di seluruh dunia.""<ref>{{Cite web|url=http://krebsonsecurity.com/2016/02/good-riddance-to-oracles-java-plugin/|title=Good Riddance to Oracle’s Java Plugin|last=Krebs|first=Brian|date=16 February 2016|website=KrebsOnSecurity}}</ref> "Setelah menjanjikan, telah hidup lebih lama kegunaannya di browser, dan telah menjadi mimpi buruk yang nikmat cyber-penjahat dengan mengorbankan pengguna komputer."<ref>{{Cite web|url=http://readwrite.com/2012/09/05/java-is-no-longer-needed-pull-the-plug-in|title=Java Is No Longer Needed. Pull The Plug-In|last=Gonsalves|first=Antone|date=5 September 2012|website=ReadWrite|publisher=Wearable World}}</ref> "saya pikir semua orang harus uninstall Java dari semua Pc dan Mac, dan kemudian berpikir hati-hati tentang apakah mereka perlu menambahkannya kembali. Jika anda adalah tipe pengguna rumah, anda mungkin bisa melakukannya tanpa itu. Jika anda adalah pengguna bisnis, anda mungkin tidak memiliki pilihan."<ref>{{Cite web|url=http://www.theguardian.com/technology/askjack/2013/feb/08/java-remove-ask-jack-technology|title=Java: should you remove it?|date=8 February 2013|website=[[theguardian.com]]|publisher=[[Guardian Media Group]]}}</ref>
Baris 189 ⟶ 190:
== Lihat juga ==
* [[Daftar
* [[JavaFX]]▼
▲* JavaFX
== Referensi ==
Baris 201 ⟶ 198:
== Pranala luar ==
* {{Resmi}}
* [http://java.sun.com/ sun.com –
* [http://www.infoq.com/presentations/gosling-jvm-lang-summit-keynote infoq.com – Presentasi] oleh [[James Gosling]] tentang asal-usul
* [http://www.java-forums.org/forum.php Java forums organization]{{Pranala mati|date=Januari 2023 |bot=InternetArchiveBot |fix-attempted=yes }}
[[Kategori:Platform komputer]]
|