Apa Proyek Jigsaw Membawa ke Java 9

[ad_1]

Proyek Jigsaw diluncurkan dengan tujuan utama untuk menyederhanakan pengembangan dan pemeliharaan perpustakaan dan aplikasi besar. Selain memodulasi Java Development Kit (JDK), Project Jigsaw juga bertujuan untuk meningkatkan pemeliharaan dan keamanan Implementasi Platform SE Java. Awalnya, proyek ini dimaksudkan untuk Java 7. Tapi kemudian ditangguhkan ke Java 8. Project Jigsaw akhirnya memodulasi JDK pada tahun 2017 dengan menerapkan sistem modul standar untuk Java 9.

Saat menggunakan Java 9, programmer dapat memanfaatkan sistem modul standar yang diterapkan oleh Project Jigsaw dengan menggunakan prinsip desain yang banyak digunakan – modularitas. Mereka sekarang dapat menyederhanakan pengembangan, pengujian, dan pemeliharaan aplikasi perusahaan besar dan kompleks dengan membagi program menjadi sejumlah modul independen. Mereka bahkan dapat menggunakan antarmuka standar untuk membuat komponen individu berkomunikasi satu sama lain secara mulus. Oleh karena itu, Proyek Jigsaw memberikan kontribusi sangat besar untuk membuat Java 9 berbeda dari pendahulunya.

Bagaimana Proyek Jigsaw Membuat Java 9 Berbeda dari Para Pendahulunya?

Menerapkan Prinsip Desain Modularity

Proyek Jigsaw memungkinkan Java 9 bersaing dengan bahasa pemrograman modern dengan mendukung prinsip desain yang banyak digunakan seperti modularitas. Saat menulis aplikasi di Java 9, programmer dapat membagi program tunggal menjadi beberapa modul independen. Mereka dapat lebih menyederhanakan pengembangan aplikasi besar dengan menggelar modul sebagai unit yang digabungkan secara longgar, menyediakan ID unik untuk setiap modul, menyembunyikan detail implementasi, dan membuat komponen berinteraksi satu sama lain melalui antarmuka terbuka.

Memperkenalkan Berbagai Modul

Saat menulis aplikasi di Java 9, programmer dapat bekerja dengan berbagai modul – modul aplikasi, modul tanpa nama, modul otomatis, dan modul platform. Mereka dapat membuat modul aplikasi untuk mencapai fungsi tertentu dan menyertakan file JAR dan kelas di jalur kelas dalam modul yang tidak disebutkan namanya. Demikian juga, mereka dapat membuat modul otomatis untuk mengekspor paket yang diperlukan dan mengakses modul lain dengan memasukkan file JAR di jalur modul. Pada saat yang sama, Proyek Jigsaw juga membagi JDK ke dalam sejumlah modul platform seperti java.se dan java.xml.ws.

Eliminates Perlu Instal JDK Sepenuhnya

Sebagaimana dicatat sebelumnya, Proyek Jigsaw dimulai dengan tujuan untuk memodulasi JDK. Ini mengubah JDK menjadi struktur modular. Programmer sekarang dapat mengakses dan menginstal komponen yang diperlukan dari JDK sebagai modul platform individu. Modularitas lebih jauh meningkatkan aksesibilitas dan kinerja JDK di kedua perangkat kecil dan besar. Perangkat kecil sekarang dapat menjalankan aplikasi Java dengan lancar dengan menginstal hanya modul JDK yang diperlukan. Demikian juga, perangkat besar dapat menghilangkan keterbatasan memori dan ruang penyimpanan dengan tidak menginstal modul SDK yang tidak perlu.

Menyelesaikan Masalah JAR atau Classpath

Java awalnya tidak dirancang sebagai bahasa pemrograman modular. Saat menggunakan versi Java sebelumnya, programmer harus menerapkan modularitas melalui paket dan JAR mencapai. Format JAR efektif dalam menyatukan file kelas Java, metadata dan sumber daya ke dalam satu file. Tetapi para programmer tidak memiliki pilihan untuk menggunakan JAR untuk membuat modul independen.

Juga, kelas dan antarmuka yang disertakan dalam file JAR bergantung pada kelas yang termasuk dalam file JAR lainnya untuk berfungsi dengan sempurna. Oleh karena itu, pengembang harus menempatkan waktu ekstra dan upaya untuk memeriksa kompatibilitas antara file JAR dan meng-upgrade modul dependen. Proyek Jigsaw memecahkan masalah yang terkait dengan JAR atau Classpath dengan membuat Java 9 modular,

Menghapus Cacat Enkapsulasi Umum

Seperti bahasa pemrograman berorientasi objek lainnya, Java juga mendukung enkapsulasi. Ini memungkinkan pemrogram untuk membungkus data dan kode sebagai satu kesatuan. Tetapi banyak programmer menemukan konsep enkapsulasi Java menjadi ambigu. Mereka bahkan mengeksplorasi cara untuk mengatasi beberapa kelemahan enkapsulasi Java yang umum. Proyek Jigsaw menyelesaikan kekurangan enkapsulasi Java dengan menerapkan modularitas. Saat menulis aplikasi di Java 9, pengembang dapat menyembunyikan implementasi dan Publik. Mereka dapat menyembunyikan implementasi sepenuhnya saat memaparkannya melalui antarmuka. Demikian juga, mereka dapat Publik tidak terlihat sampai tidak diekspor ke modul-info.java.

Mempercepat Pengembangan, Pengujian, Debug, dan Pemeliharaan

Proyek Jigsaw akan berkontribusi untuk menjaga popularitas Java tetap utuh selama periode waktu yang lebih lama. Sistem modul standar untuk Java 9 yang diimplementasikan oleh Project Jigsaw mempermudah pemrogram untuk menulis aplikasi besar dan kompleks dengan membagi program ke dalam sejumlah modul unik. Demikian juga, mereka dapat mempertahankan dan meningkatkan aplikasi dengan cepat dengan membuat perubahan hanya pada modul yang diperlukan. Pada saat yang sama, program modular juga dapat di-debug dengan cepat karena komponen-komponennya yang dipisahkan. Modularitas lebih lanjut membantu pengembang untuk melakukan unit, fungsionalitas, dan pengujian integrasi selama proses pengembangan.

Secara keseluruhan, Proyek Jigsaw membedakan Java 9 dari pendahulunya dengan menerapkan sistem modul standar. Itu Pengembang Java dapat dengan mudah mempercepat pengembangan, pengujian, pemeliharaan, debugging, peningkatan dan penyebaran dengan membagi program monolitik ke dalam sejumlah modul unik. Pada saat yang sama, Proyek Jigsaw memodulasi JDK dan memungkinkan pengguna untuk menginstal hanya komponen yang diperlukan dari JDK sebagai modul platform. Lebih lanjut membuat Java 9 bersaing dengan bahasa pemrograman modern lainnya dengan menyelesaikan masalah umum yang terkait dengan file JAR dan enkapsulasi.

[ad_2]

Fitur Baru Yang Menyenangkan Di Java 9

[ad_1]

Pada bulan September, Oracle merilis Java SE 9 dengan lebih dari 150 fitur baru. Versi terbaru dari bahasa pemrograman yang banyak digunakan dilengkapi dengan beberapa fitur baru dan API untuk mempercepat pengembangan aplikasi untuk perangkat besar dan kecil. Pada saat yang sama, fitur yang disediakan oleh Java 9 membantu pemrogram untuk meningkatkan kinerja, keamanan, dan pemeliharaan aplikasi. Oleh karena itu, menjadi penting bagi pemrogram untuk memahami beberapa fitur utama yang disediakan oleh Java 9.

Apa yang Perlu Diketahui oleh Programer tentang Java 9?

Sistem Modul

Para pengembang sekarang dapat menggunakan Dukungan Lebih Baik untuk HTML5 dan JavaScript untuk membagi JDK ke dalam beberapa modul. Setiap file JAR modular berisi deskriptor modul. Para pengembang dapat mendefinisikan interdependensi dari berbagai modul melalui pernyataan yang diperlukan. Modularitas membuatnya lebih mudah bagi programmer untuk menjalankan modul JVM dengan lancar pada perangkat kecil yang tidak memiliki memori tambahan. Pada saat yang sama, mereka juga dapat menjalankan hanya API dan modul JVM yang diperlukan oleh aplikasi.

Kompilasi Ahead-of-Time

Java 9 meningkatkan proses kompilasi kode secara signifikan melalui kompilasi sebelumnya (AOT). Programmer dapat memanfaatkan kompilasi AOT mengkompilasi kelas Java ke kode asli bahkan sebelum mesin virtual meluncurkannya. Kompilasi AOT meningkatkan kinerja aplikasi besar dan kecil dengan mengatasi kekurangan utama kompilasi just-in-time (JIT). Tidak seperti kompilasi JIT, kompilasi AOT memastikan bahwa tidak ada metode Java yang tetap tidak dikompilasi.

Alat Eval-Print-Loop Nyata

Java 9 dilengkapi dengan alat baris perintah baru-eval-print-loop (REPL) – Shell. Shell dirancang dengan fitur untuk mengevaluasi pernyataan deklaratif dan ekspresi secara interaktif. Seorang programmer dapat menggunakan Shell untuk menilai kualitas kode Java sebelum kompilasi. Dia cukup memasukkan sepotong kode dan mengumpulkan umpan balik. Shell bahkan memiliki kemampuan untuk menyelesaikan tab dan menambahkan titik koma terminal secara otomatis. Alat REPL baru membuat Java bersaing dengan bahasa pemrograman yang banyak digunakan seperti Python dan Scala.

Dukungan Lebih Baik untuk HTML5 dan JavaScript

Alat dokumentasi Javadoc yang ditingkatkan yang disediakan oleh Java 9 memiliki kemampuan untuk menghasilkan markup HTML5. Juga, versi terbaru dari bahasa pemrograman mendukung beberapa karakter baru, blok, dan skrip sebagai bagian dari standar pengkodean Unicode 8.0. Pada saat yang sama, Java 9 hadir dengan mesin JavaScript yang ditingkatkan dan ringan yang membuatnya lebih mudah bagi programmer untuk menanamkan kode JavaScript di aplikasi Java. Para pengembang selanjutnya dapat mengaktifkan analisis kode ECMAScript dalam berbagai IDE dan kerangka kerja langsung dengan parser API untuk pohon sintaks ECMAScript Nashorn yang disediakan oleh JDK.

Peningkatan Streaming API

Saat menulis kode Java, programmer menggunakan string untuk mengekspresikan perhitungan. Java 8 mempercepat pemrosesan stream dengan menyediakan API Streams. Java 9 hadir dengan versi API Streaming yang ditingkatkan yang memungkinkan pengembang untuk mengambil dan menjatuhkan item dari Streaming berdasarkan kondisi tertentu dengan menambahkan metode. Selain itu, API Streaming yang disempurnakan dirancang dengan fitur untuk membuat streaming untuk nilai nullable dan iterate over Stream elements.

API Gambar Multi-Resolusi

Java 9 memperkenalkan antarmuka baru – MultiResolutionImage – untuk membuat gambar multi-resolusi tunggal dengan mengenkapsulasi banyak gambar dengan berbagai resolusi. Para pengembang selanjutnya dapat menggunakan API Gambar Multi-Resolusi yang disediakan oleh Java 9 untuk mendapatkan berbagai varian dari satu gambar. Selain itu, mereka dapat menggunakan API untuk memilih gambar tertentu berdasarkan resolusi yang diperlukan. Oleh karena itu, programmer Java sekarang dapat menggunakan satu API untuk membuat gambar multi-resolusi terpadu dan mendapatkan varian gambar khusus resolusi.

http: // 2 klien API

Java 9 benar-benar mengubah cara aplikasi membuat panggilan HTTP. Ini menggantikan API HttpURLConnection dengan API klien HTTP baru. API klien HTTP mendukung keduanya http: // 2 dan WebSockets. Namun, API saat ini bukan merupakan bagian dari Java SE. Ini diimplementasikan sebagai modul inkubator yang hidup di bawah jdk.incubtor namespace. Tetapi API klien HTTP mendukung standar komunikasi terbaru, sembari mengatasi kekurangan API HttpURLConnection.

API Stack-Walking

Saat menulis kode Java, programer mengeksplorasi cara untuk mengakses dan menyaring tran tumpukan secara efisien. Versi terbaru Java mempermudah stack walking dengan menyediakan Stack-Walking API. API baru mempermudah pemrogram untuk mengakses dan menyaring informasi jejak stack. Lebih lanjut mendukung baik berjalan kaki pendek dan panjang. Oleh karena itu, menjadi lebih mudah bagi pemrogram untuk mengakses dan menyaring seluruh tumpukan tanpa bergantung pada mesin virtual untuk menangkap informasi tumpukan.

API Datagram Transport Layer Security (DTLS)

Java 9 membantu pengembang untuk membangun aplikasi yang aman dengan menyediakan API untuk Datagram Transport Layer Security (DTLS). API menjaga komunikasi klien dan server tetap aman dengan menghilangkan kemungkinan gangguan data, pemalsuan pesan, dan menguping. Juga, ia menyediakan privasi komunikasi ke berbagai aplikasi yang menggunakan Datagram Transport Protocol (DTP). Meskipun dikembangkan berdasarkan Transport Layer Security (TLS), DTLS menerapkan protokol SSL.

API Proses yang Ditingkatkan

Seringkali programmer Java merasa sulit untuk mengontrol dan mengelola proses sistem operasi. API Proses disediakan oleh versi sebelumnya dari pengembang untuk mengakses kode asli dan menulis kode tambahan. Tetapi API Proses yang ditingkatkan yang disediakan oleh Java 9 membuatnya lebih mudah bagi pemrogram untuk mengontrol dan mengatur proses sistem operasi. Mereka dapat menggunakan API untuk membuat aplikasi Java berinteraksi dengan sistem operasi secara langsung. Juga, mereka dapat mengambil keuntungan dari metode baru untuk menangani nama dan status proses tanpa menulis kode tambahan.

Fitur yang Tidak Diperbaiki

Meskipun menyediakan beberapa fitur baru, Java 9 tidak mendukung beberapa fitur yang disediakan oleh Java 8. Misalnya, tidak lagi mendukung Applet API. Itu Pengembang web Java harus beralih dari Applet API ke Java Web Start untuk meluncurkan aplikasi dari browser web. Demikian juga, Java 8 mempercepat pengembangan kolektor sampah di mesin virtual HotSpot dengan mencabut penampung sampah Serurrent Mark Sweep (CMS). Saat menggunakan versi terbaru Java, programer juga tidak memiliki opsi untuk menerima peringatan Java pada pernyataan impor dan memilih JRE pada waktu peluncuran.

Secara keseluruhan, Java 9 hadir dengan beberapa fitur baru untuk menyederhanakan pengembangan aplikasi untuk perangkat besar dan kecil. Namun, beberapa binari dan sumber yang diperkenalkan oleh Java 9 tidak kompatibel dengan versi bahasa pemrograman sebelumnya. Para programmer bahkan harus membuat beberapa perubahan pada kode dan meningkatkan pustaka saat memigrasi aplikasi yang sudah ada ke Java 9. Tetapi para pengembang harus mempertimbangkan untuk memperbarui aplikasi yang sudah ada ke Java 9 untuk memanfaatkan fitur dan peningkatan baru ini. Pengembang Java juga harus menggunakan alat yang sangat direkomendasikan ini untuk pemrograman yang lebih baik.

[ad_2]