Java applet

Java ilovalarini brauzerlarda ishga tushiruvchi kichik dastur

Java appletlari Java yoki boshqa Java baytkodiga kompilyatsiya qiluvchi dasturlash tilida yozilgan kichik ilovalar boʻlib, foydalanuvchi Java Appletni veb-sahifadan ishga tushirdi va ushbu applet ilovasi Java virtual mashinasida (JVM) veb-brauzerdan alohida ishga tushiriladi. Java applet veb-sahifaning oʻzida, yangi dastur oynasida, Sun AppletViewerda yoki appletlarni sinab koʻrish uchun moʻljallangan boshqa dasturiy vositalarda ishga tushirilishi mumkin.

Ilmiy nashr uchun qoʻshimcha koʻrgazmali material sifatida yaratilgan Java Applet
Serverdan yuklab olingan .pdb formatidagi 3D fayllarni koʻrish uchun 3D apparat akseleratsiyadan foydalanadigan Java Applet ilovasi [1].
Biofizik mavzuni yorituvchi animatsiya uchun appletdan foydalanish (tartibsiz harakatlanuvchi ionlar kuchlanish qutblari orqali oʻtadi) [2]
Hisoblash uchun Java Applet ilovasidan foydalanish – Mandelbrot toʻplamining intensiv vizualizatsiyasi [3]
Appletlarning ishlash tezligi, masalan, shaxmat oʻynaydigan kompyuter dasturlarini yaratish uchun ham yetarli[4].
NASA World Wind (ochiq manba) ikkinchi avlod appleti [5] boʻlib, dunyoning batafsil 3D xaritasini taqdim etish uchun OpenGL va maʼlumotlarni yuklab olishdan koʻp foydalanadi.
Ikki oʻlchovli Furye transformatsiyasi yordamida tasvirni qayta ishlash jarayoni

Java appletlari 1995-yilda chiqarilgan Java dasutlash tilining birinchi versiyasidanoq tadqim etilgan. 2013-yildan boshlab yirik veb-brauzerlar Java appletlari ishlatadigan asosiy texnologiyalarni qoʻllab-quvvatlashni bosqichma-bosqich toʻxtata boshladilar[6] [7] [8] [9] [10].

Java appletlari odatda Java tilida yozilgan, ammo Jython, JRuby, Paskal[11], Scala, NetRexx yoki Eiffel kabi boshqa tillardan ham foydalanish mumkin.

Java appletlari juda yuqori tezlikda ishlaydi va 2011 yilgacha ular JavaScriptdan bir necha baravar tezroq ishlar edi. JavaScriptdan farqli ravishda, Java appletlari 3D apparat akseleratsiyasiga ega boʻlib, koʻplab hisob-kitoblarni talab qiladigan kompyuter vizualizatsiyasi uchun juda mos hisoblanadi. Brauzerlar kanvas texnologiyasi (yoki 3D grafiklar uchun WebGL) [12] [13] hamda just-in-time kompilyatorli JavaScript tufayli [14] ushbu ikki dasturlash tillari oʻrtasidagi tezliklar farqi deyarli bilinmay qoldi. 

Java baytkodi kross-platforma boʻlganligi sababli, Java appletlari Microsoft Windows, FreeBSD, Unix, macOS va Linux kabi koʻplab platformalar uchun ham ishga tushirilishi mumkin. Appletni faqatgina Oracle JVM baytekodini ishga tushirishni qoʻllab-quvvatlamaydigan mobil qurilmalardagina ishga tushirish mumkin emas.

Umumiy ishlash mexanizmi

Appletlar veb-ilovalarga HTML orqali amalga oshirib boʻlmaydigan interaktiv xususiyatlarni taqdim etish uchun ishlatiladi. Ular sichqoncha harakatlarini qayd etishadi, shuningdek, Buttons („Tugmalar“) yoki CheckBox kabi boshqaruv elementlariga ham ega. Foydalanuvchi harakatlariga javoban applet taqdim etilgan grafik kontentni oʻzgartirishi mumkin. Bu appletlarni maʼlumotlarni koʻrsatish, vizualizatsiya qilish va oʻqitish uchun juda qulay qiladi. Fizikadan to yurak fiziologiyasigacha boʻlgan turli fanlarni oʻrganish uchun onlayn applet toʻplamlari mavjud.

Masofaviy serverlarga buyruqlar qatori interfeysini taʼminlash maqsadida Java Appletlar faqat matn bilan ham ishga tushirilishi mumkin. Agar kerak boʻlsa, appletlar alohida oyna sifatida ishlashi mumkin. Biroq, appletlar ilovaning tegishli ish maydonidan tashqaridagi veb-sahifalarni deyarli nazorat qilmaydi, shuning uchun ular boshqa shu kabi brauzer kengaytmalarining farqli ravishda, sayt koʻrinishini oʻzgartirish va uni boshqarish uchun qulay emas. Appletlar, shuningdek, brauzer tomonidan qoʻllab-quvvatlanmaydigan formatlardagi media fayllarni ham oʻynatishi mumkin.

HTMLda kodlangan sahifalar Appletlar ichiga tegishli parametrlarni joylashtirishi mumkin.

Texnik maʼlumotlar

Koʻpgina brauzerlar Java appletlarini sandboxda ishga tushirgan, bu esa appletlarning fayl tizimi kabi lokal maʼlumotlarga kirishiga toʻsqinlik qilgan[15]. Appletning kodi veb-serverdan yuklab olinadi, shundan soʻng brauzer ilovani veb-sahifaga joylashtiriladi yoki appletning foydalanuvchi interfeysini koʻrsatadigan yangi oyna ochiladi.

Birinchi navbatda, klasslar boʻyicha applet sinflari yuklab olinadi. Sinflar kichik hajmli fayllar boʻlsa-da, ulardan ancha koʻp fayllar mavjud. Shuning uchun ham appletlar sekin yuklanadigan komponentlar sifatida hammaga maʼlum. Biroq, .jars kengaytmasi joriy qilinganligi sababli, applet odatda tasvir fayliga oʻxshash oʻlchamga ega (yuzlab kilobaytdan bir necha megabaytgacha) bitta fayl sifatida taqdim qilinadi.

Oʻxshash texnologiyalar

Koʻplab Java dasturchilari, bloglari va jurnallari appletlar oʻrniga Java Web Start texnologiyasidan foydalanishni tavsiya qilishdi[16]. Java Web Start oʻzgartirilmagan asl applet kodini ishga tushiradi va yana u alohida oynada ochiladi(brauzer ichida emas).

Java Servlet baʼzan norasmiy ravishda server tomonidagi appletga oʻxshab koʻrinadi, biroq u oʻzining tili, funksiyalari va boshqa appletlardan farq qiladigan xarakteristikasi jihatidan farq qiladi.

Xavfsizlik

Turli xavfsizlik modellariga ega ikkita applet turi mavjud edi: imzolangan (signed) va imzolanmagan (unsigned) appletlar[17]. Java SE 7 Update 21 (2013-yil aprel) dan boshlab appletlar va Web-Start ilovalarini ishonchli sertifikat bilan imzolanishi tavsiya etildi va imzosiz appletlar ishga tushganda ogohlantirish xabarlari paydo boʻla boshladi[18]. Bundan tashqari, Java 7 Updatedan boshlab, 51 ta imzosiz appletlar bloklangan edi; ular Java boshqaruv panelida istisno tariqasida ishga tushirilishi mumkin[19].

Muqobil texnologiyalar

Muqobil texnologiyalar (masalan, WebAssembly [20] va JavaScript) mavjud boʻlib, ular applet bilan mumkin boʻlgan barcha yoki undan-da keng koʻlamlar ishlarni amalga oshirishga qodir. JavaScript bitta sahifada appletlar bilan birga mavjud boʻlishi, appletlarni ishga tushirishga yordam berishi va keyinchalik applet kodidan chaqirilishi mumkin. JavaScript funksiyalari va unumdorligini oshirgan sari, appletlarni qoʻllab-quvvatlash va ulardan foydalanish oxir-oqibat toʻxtatiladigan darajagacha tushib ketdi.

Yana qarang

Manbalar