چه قدر جاوا اپلت(Java Applet) را می شناسید؟
تاریخچه اپلت ها:
اصطلاح اپلت توسط applet script و در سال 1993 مطرح گردید. به طور کلی واژه اپلت را میتوان به برنامه هایی نسبت داد که در زمینه برنامه های دیگر اجرا میشود. به عنوان مثال فایلهای فلش که در صفحات وب قرار گرفته و توسط مرورگر اجرا می گردند، نوعی از اپلت ها می باشند.
با یک مثال دیگر موضوع را برایتان روشن تر میکنم؛ شرکت های زیادی دستگاه های مبتنی بر اینترنت اشیا IOT ارائه می نمایند، لامپ های هوشمند یا دستگاه های هشدار دهنده در منازل و یا حتی دستگاهی که به حیوان خانگی شما غذا می دهد. تنها کاری که این اپلیکیشن ها واقعا انجام دهند، آن است که با زدن یک کلید فرمانی برای دستگاهی ارسال شود و یا مقادیری را از یک سنسور خوانده و نمایش داده شود. تمام توانایی های لازم برای ارتباط با پروتکل های استاندارد ارتباطی مانند TCP، UDP، WebSocket، بلوتوث و غیره در هسته اجرایی پلتفرم اپلت (مانند Niomatic) قرار دارد. تنها لازم است اولویتهای خود را برای واسط کاربری به صورت اپلت طراحی نمایید.
جاوا اپلت چیست؟
اپلت جاوا (Java Applet) برنامهای کوچک و نوشته شده به زبان جاوا میباشد و توسط مرورگر صفحات وبی که خصوصیت اجرای اپلتهای جاوا در آن فعال باشد، دریافت و اجرا می گردد. اپلتها بهطور معمول در داخل صفحه وب قرار داده می شوند و در درونشان اجرا میشوند.
اپلت باید زیر کلاسی از کلاس java.applet.Applet باشد. این کلاس رابط استاندارد، بین اپلت و مرورگر را فراهم میکند. Swing نیز یک زیر کلاس ویژه از Applet بانام javax.swing.JApplet دارد، برای اپلتهایی که میخواهند از کامپوننتهای Swing استفاده کنند. اپلتهایی که بر اساس کلاس JApplet ایجاد میشوند، Swing Applet و اپلتهایی که بر اساس کلاس Applet ساخته میشوند، Pre-Swing Applet نام دارند. تفاوت Applet با JApplet در این است که جی اپلت صفحه گرافیکی را نشان میدهد ولی اپلت برای کار باید در اچ تی ام ال بارگزاری شود.
4 متد اصلی اپلت ها:
-
init :
-
start :
-
stop :
-
destroy :
-
paint :
کاربرد های کلاس اپلت:
-
دریافت پارامترهای اپلت.
-
محل شبکه فایل HTML که حاوی اپلت باشد را دریافت می کند.
-
محل شبکه در دایرکتوری کلاس اپلت را دریافت می کند.
-
پیام وضعیت را در مرورگر چاپ می کند.
-
تصویر را برمی دارد.
-
کلیپ صوتی را برمی دارد.
-
کلیپ صوتی پخش می کند.
-
تغییر اندازه اپلت.
اکنون میخواهیم به ویژگی برتر اپلت ها نسبت به اپلیکیشن ها بپردازیم:
-
اپلت ها حجم به مراتب کمتری نسبت به اپلیکیشن ها دارند
-
امنیت بالای اپلت ها
-
انتشار سریع
-
کاهش چشمگیر هزینه های طراحی و عیب یابی
-
کم حجم و سریع
-
یک طراحی برای تمام دستگاه ها
-
محیط توسعه اپلت (Applet IDE) بر روی سیستم های عامل گوشی های تلفن همراه
بیشتر بخوانید: جاوا اسپرینگ چیست و چه کاربرد هایی دارد؟
ویژگی های امنیتی:
-
«1» اپلت ها جز در موارد مشخص شده، اجازه هیچگونه دسترسی به فایلهای ماشینی که در حال اجراست ندارد. حتی در بعضی از مرورگرها، اجازه همین مقدار دسترسی نیز داده نمی شود.
-
«2» اپلت با هیچ نقطه ای از شبکه جز سیستمی که از آنجا بار گذاری شده است، نمی تواند تماس بگیرد مهم تر اینکه اپلت نمیتواند هیچ برنامهای را روی سیستم اجراکننده آن، اجرا کند.
-
«3» اپلت نمی تواند هیچ برنامه ای را روی سیستم اجرا کننده آن اجرا کند.
-
«4» زمانی که یک اپلت از اینترنت دانلود میشود و در مرورگر وب اجرا میشود، ابتدا اپلت در یک محیط امن بانام SandBox اجرا میشود. علت این امر آن است که اپلت نتواند عملیات مخربی روی کامپیوتر مقصد انجام دهد؛ مانند خواندن یا نوشتن روی فایلها.
کد نویسی ساده ای از اپلت ها:
import java.applet.*;
import java.awt.*;
public class HelloWorldApplet extends Applet
{
public void paint (Graphics g)
{
g.drawString ("Hello World", 25, 50);
}
}
بدون import فوق کامپایلر جاوا کلاس اپلت و گرافیک را که کلاس اپلت به آن اشاره میکند را تشخیص نمیدهد.
نمایش تصویر در اپلت ها:
import java.applet.*;
import java.awt.*;
import java.net.*;
public class ImageDemo extends Applet {
private Image image;
private AppletContext context;
public void init() {
context = this.getAppletContext();
String imageURL = this.getParameter("image");
if(imageURL == null) {
imageURL = "java.jpg";
}
try {
URL url = new URL(this.getDocumentBase(), imageURL);
image = context.getImage(url);
} catch (MalformedURLException e) {
e.printStackTrace();
// Display in browser status bar
context.showStatus("Could not load image!");
}
}
public void paint(Graphics g) {
context.showStatus("Displaying image");
g.drawImage(image, 0, 0, 200, 84, null);
g.drawString("www.javalicense.com", 35, 100);
}
}
<html>
<title>The ImageDemo applet</title>
<hr>
<applet code = "ImageDemo.class" width = "300" height = "200">
<param name = "image" value = "java.jpg">
</applet>
<hr>
</html>
اجرای صداها در اپلت:
یک اپلت میتواند فایل صوتی نمایشی از رابط AudioClip را در بسته java.applet پخش کند. اینترفیس AudioClip دارای سه متد زیر است:
- ()public void play: کلیپ صوتی را یک بار از ابتدا پخش می کند.
- ()public void loop: کلیپ صوتی را به طور پیوسته پخش می کند.
- ()public void stop: پخش کلیپ صوتی را متوقف می کند.
import java.applet.*;
import java.awt.*;
import java.net.*;
public class AudioDemo extends Applet {
private AudioClip clip;
private AppletContext context;
public void init() {
context = this.getAppletContext();
String audioURL = this.getParameter("audio");
if(audioURL == null) {
audioURL = "default.au";
}
try {
URL url = new URL(this.getDocumentBase(), audioURL);
clip = context.getAudioClip(url);
} catch (MalformedURLException e) {
e.printStackTrace();
context.showStatus("Could not load audio file!");
}
}
public void start() {
if(clip != null) {
clip.loop();
}
}
public void stop() {
if(clip != null) {
clip.stop();
}
}
}
حالا نحوه ی فراخوانی اپلت فوق در html بصورت زیر خواهد بود:
<html>
<title>The ImageDemo applet</title>
<hr>
<applet code = "ImageDemo.class" width = "0" height = "0">
<param name = "audio" value = "test.wav">
</applet>
<hr>
</html>
کلام آخر:
پس اگر می خواهید وارد دنیای جاوا شوید بهتر است مفاهیم پایه ای این زبان را به خوبی یاد بگیرید. به همین منظور ما برای شما عزیزان دوره ای مقدماتی به صورت رایگان، با بیانی ساده و کاملا کاربردی قرار داده ایم تا لذت آموزش جاوا را بچشید.
نظر بدهید
نشانی ایمیل شما منتشر نخواهد شد .