JavaRush /Java Blog /Random-ID /Tren Java untuk tahun 2021: Kotlin, Arsitektur Layanan Mi...

Tren Java untuk tahun 2021: Kotlin, Arsitektur Layanan Mikro, dan Kubernetes

Dipublikasikan di grup Random-ID
Dunia pembangunan berubah dengan sangat cepat. Untuk mengikuti perubahan, Anda perlu memahami apa yang terjadi di dunia ini. Mengetahui tren memungkinkan Anda beradaptasi dengan tren yang berubah dengan cepat. Kecerdasan buatan, peningkatan jumlah integrasi, dan Internet of Things hanyalah sebagian dari tren pemrograman global. JavaRush bertanya kepada pakar pemrograman Java dan dosen Andrey Rodionov apa yang akan terjadi pada Java pada tahun 2021.Tren Java pada tahun 2021: Kotlin, arsitektur layanan mikro, dan Kubernetes - 1

Untuk wilayah manakah Java masih menjadi satu-satunya solusi?

Java dalam waktu dekat akan tetap menjadi salah satu platform utama untuk mengembangkan aplikasi perusahaan ( yaitu, aplikasi korporat yang digunakan oleh perusahaan besar untuk menghasilkan uang. Aplikasi semacam itu memiliki basis kode yang besar dan persyaratan keandalan yang tinggi - red. ) dan backend. Java cocok dengan arsitektur layanan mikro, meskipun ini bukan satu-satunya alternatif untuk menulis layanan mikro.

Bagaimana prospek bahasa JVM lainnya, khususnya Kotlin, dibandingkan dengan Java?

Setelah kehebohan seputar bahasa Groovy dan Scala, Kotlin saat ini menjadi bahasa JVM terkemuka . Ini telah menjadi standar untuk pengembangan Android, namun di dunia perusahaan Java, hal ini belum mendapatkan tempatnya. Banyak kerangka kerja populer ( Spring , Vert.x , gRPC , RSocket ) juga mengandalkannya, sehingga memungkinkan untuk digunakan sendiri.

Kotlin adalah bahasa pemrograman berorientasi objek dengan tipe statis yang berjalan di atas Java Virtual Machine dan dikembangkan oleh JetBrains. Juga mengkompilasi ke JavaScript dan kode yang dapat dieksekusi pada sejumlah platform melalui infrastruktur LLVM.

Fitur Kotlin: dikompilasi ke bytecode JVM atau JavaScript, open source, sintaksis yang mudah dibaca, program Kotlin dapat menggunakan kerangka kerja dan pustaka Java yang ada.

Apakah akan ada penurunan kualitas Java karena interval rilis yang lebih pendek?

Hal ini tidak akan terjadi: hanya inovasi dalam bahasa tersebut yang akan dirilis saat sudah siap, dibandingkan menunggu beberapa tahun hingga rilis berikutnya, seperti yang terjadi sebelumnya. Beberapa rilis akan luput dari perhatian pengembang karena tidak akan menghadirkan inovasi super populer.

Kerangka kerja musim semi: apakah perusahaan akan terus memperluas ekosistemnya untuk memenuhi beragam kebutuhan?

Ekosistem Spring terus berkembang secara aktif, dan saya secara berkala menemukan subproyek lainnya, yang belum pernah saya dengar sebelumnya. Patut dicatat juga bahwa Project Reactor dan r2dbc, yang muncul sebagai subproyek Spring, kini dapat dikatakan telah menjadi standar untuk pendekatan reaktif.

Project Reactor adalah perpustakaan Java 8 yang mengimplementasikan model pemrograman reaktif. Itu dibangun di atas spesifikasi Aliran Reaktif, standar untuk membangun aplikasi reaktif.

R2DBC (Konektivitas Database Relasional Reaktif) adalah proyek sumber terbuka yang didedikasikan untuk pemrograman reaktif untuk SQL.

Apa tren perkembangan infrastruktur cloud IaaS, SaaS, PaaS? Bagaimana cloud membuat infrastruktur lebih mudah untuk dikembangkan, diterapkan, dipelihara, dan ditingkatkan?

Tren utama di sini adalah Kubernetes dan infrastruktur di sekitarnya dalam bentuk Service mesh. Setiap penyedia Cloud yang menghargai diri sendiri memberikan kesempatan untuk menggunakan cluster Kubernetes. Dan jika sebuah aplikasi ditulis untuk dijalankan di Kubernetes, penerapan dan penskalaannya akan jauh lebih mudah.

Kubernetes (K8s) adalah perangkat lunak sumber terbuka untuk mengotomatiskan penerapan, penskalaan, dan pengelolaan aplikasi dalam container.

Kubernetes mengelompokkan container yang membentuk aplikasi ke dalam unit logis untuk memudahkan pengelolaan dan penemuan.

Kubernetes mengelola dan menjalankan container di sejumlah besar host, serta memungkinkan penempatan bersama dan replikasi container dalam jumlah besar. Proyek ini dimulai oleh Google dan kini didukung oleh banyak perusahaan, termasuk Microsoft, RedHat, IBM dan Docker.

Tren pembangunan apa lagi yang perlu diperhatikan pada tahun 2021?

Salah satu tren menarik yang masih meningkat adalah GraalVM Native Image, yang memungkinkan Anda mengubah aplikasi Java tradisional menjadi aplikasi biner yang tidak memerlukan JVM dan perpustakaan terkait untuk beroperasi. File biner seperti itu sangat cocok dengan arsitektur layanan mikro dan pendekatan tanpa server, karena memungkinkan Anda memulai aplikasi baru dengan sangat cepat dan tidak memerlukan "pemanasan" JVM.

Apakah persyaratan untuk pengembang muda berubah akhir-akhir ini karena perkembangan Java?

Sebagian besar proyek masih menyertakan inovasi Java 8, meskipun pengembang menggunakan versi Java yang lebih baru. Oleh karena itu, syarat utamanya adalah pengetahuan tentang Stream API dan elemen pemrograman fungsional . Ada baiknya juga untuk memiliki pemahaman tentang arsitektur layanan mikro , Docker , dan Kubernetes , karena dalam proyek modern, pengembang pemula harus segera menangani hal ini.

Stream API adalah cara baru untuk bekerja dengan struktur data dalam gaya fungsional. Stream API (deskripsi cara di mana satu program komputer dapat berkomunikasi dengan program lain), pada intinya, adalah aliran data.

Dengan munculnya Java 8, Stream API memungkinkan pemrogram untuk menulis lebih singkat apa yang sebelumnya memerlukan banyak baris kode, yaitu untuk menyederhanakan pekerjaan dengan kumpulan data, khususnya, untuk menyederhanakan pemfilteran, pengurutan, dan operasi manipulasi data lainnya. Jika Anda tidak memiliki operasi perantara, Anda dapat dan harus sering melakukannya tanpa aliran, jika tidak, kodenya akan lebih rumit daripada tanpa aliran.

Docker adalah perangkat lunak untuk mengotomatiskan penerapan dan pengelolaan aplikasi di lingkungan dalam container.

Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION