Java - Nashorn JavaScript Engine
Halo para pemrogram aspiran! Saya sangat senang menjadi pemandu Anda dalam perjalanan yang menarik ini ke dunia Java dan Nashorn JavaScript Engine. Sebagai seseorang yang telah mengajar ilmu komputer selama lebih dari satu dekade, saya bisa menjamin Anda bahwa ini akan menjadi pengalaman yang menyenangkan dan menginspirasi. Jadi, mari kita melompatlah!
Apa itu Nashorn JavaScript Engine?
Nashorn (diprononciaskan "nass-horn") adalah mesin JavaScript yang ringan dan tinggi performa yang diperkenalkan dengan Java 8. Ini seperti sebuah jembatan antara Java dan JavaScript, memungkinkan Anda untuk menjalankan kode JavaScript di dalam aplikasi Java. Keren, kan?
Sejarah Singkat
Pada awal tahun mengajar saya, kita harus menggunakan lingkungan terpisah untuk Java dan JavaScript. Itu seperti mencoba untuk membuat sandwich kacang tanah dan jelly dengan dua piring terpisah! Nashorn mengubah semua itu, membawa kedua bahasa yang kuat ini bersama-sama dalam kombinasi yang enak.
Menjalankan JavaScript melalui Alat Command Line
Mari kita mulai dengan sesuatu yang sederhana. Nashorn datang dengan alat command-line bernama jjs
yang memungkinkan Anda untuk menjalankan JavaScript secara langsung dari terminal Anda.
Contoh 1: Halo, Nashorn!
Buka prompt perintah Anda dan ketik:
jjs
print("Halo, Nashorn!");
Anda seharusnya melihat "Halo, Nashorn!" dicetak di atas layar Anda. Selamat! Anda baru saja menjalankan kode JavaScript pertama Anda menggunakan Nashorn.
Menjalankan JavaScript Secara Langsung di Prompt Perintah
Anda juga dapat menjalankan file JavaScript secara langsung dari baris perintah.
Contoh 2: Menjalankan File JavaScript
- Buat file bernama
greet.js
dengan konten berikut:
var nama = "Alice";
print("Halo, " + nama + "!");
- Jalankan itu menggunakan jjs:
jjs greet.js
Anda seharusnya melihat "Halo, Alice!" dicetak di atas layar Anda.
Mengirimkan Argumen ke jjs
Nashorn memungkinkan Anda untuk mengirimkan argumen ke kode JavaScript Anda, sama seperti Anda dengan Java.
Contoh 3: Mengirimkan Argumen
Buat file bernama greet_with_args.js
:
var nama = $ARG[0];
print("Halo, " + nama + "!");
Jalankan itu dengan argumen:
jjs greet_with_args.js -- Bob
Anda seharusnya melihat "Halo, Bob!" dicetak.
Memanggil JavaScript dari Java
Sekarang, mari kita ke bagian yang benar-benar menarik - memanggil JavaScript dari dalam kode Java Anda!
Contoh 4: Mengevaluasi JavaScript di Java
import javax.script.*;
public class JavaScriptInJava {
public static void main(String[] args) throws ScriptException {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("nashorn");
engine.eval("print('Halo dari JavaScript!');");
}
}
Ketika Anda menjalankan program Java ini, itu akan mencetak "Halo dari JavaScript!" menggunakan mesin Nashorn.
Memanggil Java dari JavaScript
Kekuatan sebenarnya dari Nashorn datang dari kemampuannya untuk menggunakan kelas dan metode Java dalam kode JavaScript.
Contoh 5: Menggunakan Kelas Java di JavaScript
import javax.script.*;
public class JavaInJavaScript {
public static void main(String[] args) throws ScriptException {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("nashorn");
engine.eval("var ArrayList = Java.type('java.util.ArrayList');" +
"var daftar = new ArrayList();" +
"daftar.add('Halo');" +
"daftar.add('Dunia');" +
"print(daftar);");
}
}
Kode ini membuat Java ArrayList, menambahkan elemen kepadanya, dan mencetaknya - semua dari dalam JavaScript!
Fitur Lanjutan
Nashorn menawarkan banyak fitur lanjutan yang membuatnya alat yang kuat bagi pengembang Java.
Contoh 6: Menggunakan Ekspresi Lambda Java 8
import javax.script.*;
public class LambdaInNashorn {
public static void main(String[] args) throws ScriptException {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("nashorn");
engine.eval("var daftar = [1, 2, 3, 4, 5];" +
"daftar.forEach(function(num) { print(num * 2); });");
}
}
Contoh ini menunjukkan cara Anda dapat menggunakan ekspresi lambda Java 8 dalam kode JavaScript yang dijalankan di Nashorn.
Tabel Metode
Berikut adalah tabel beberapa metode penting yang dapat Anda gunakan dengan Nashorn:
Metode | Deskripsi |
---|---|
ScriptEngineManager.getEngineByName("nashorn") |
Dapatkan mesin skrip Nashorn |
ScriptEngine.eval(String script) |
Evaluasi skrip JavaScript |
ScriptEngine.put(String key, Object value) |
Setel variabel dalam mesin skrip |
ScriptEngine.get(String key) |
Dapatkan variabel dari mesin skrip |
Invocable.invokeFunction(String name, Object... args) |
Panggil fungsi JavaScript |
Kesimpulan
Dan itu adalah semua, teman-teman! Kita baru saja menggaruk permukaan dari apa yang Nashorn bisa lakukan, tetapi saya berharap pengenalan ini telah membuka ketertarikan Anda. Ingat, kunci untuk menguasai pemrograman adalah praktek, jadi jangan takut untuk eksperimen dengan contoh ini dan membuat Anda sendiri.
Seperti saya selalu mengatakan kepada siswa saya, pemrograman adalah seperti belajar untuk bersepeda - mungkin terlihat menakutkan pada awalnya, tetapi dengan praktek, Anda akan berlari dengan cepat dalam waktu singkat. Dan siapa tahu? Mungkin suatu hari Anda akan mengajar orang lain tentang keajaiban Nashorn!
Tetap coding, tetap belajar, dan yang paling penting, bersenang-senang! Sampai jumpa lagi, ini adalah guru ilmu komputer tetangga Anda yang ramah yang akan menandatangani off. Selamat coding!
Credits: Image by storyset