جاوا اپلت

**جاوا اپلت** نوعی اپلت در زبان جاوا می‌باشد که جستجوگر را قادر می‌سازد با استفاده از فناوری جاوا تکه برنامه‌های را از اینترنت دانلود کرده و اجرا کنند.

اپلت به صورت کامل پنهان شده‌است درون صفحات وب و در متن و زمینه جستجوگر اجرا می‌شود.
اپلت زیر کلاسی است از کلاس `java.applet.applet` که تهیه شده طبق استاندارد واسط میان اپلت و محیط جستجو گرها
چرخه تهیه یک زیر کلاس اپلت `javax.swing.Japplet` نامیده می‌شود که باید استفاده شود برای تمامی اپلت‌های که جزء چرخه ساختن جی‌یوای با روش فراخوانی معینی چرخه حیات اپلت را مدیریت می‌کند البته اگر اپلت در صفحات وب بارگذاری شده باشد.
چرخه حیات یک اپلت به‌طور اساسی به چهار متد زیر ساخته می‌شود:
* مقداردهی(Init) : این متد هر آنچه را که برای آغاز اپلت نیاز است را داراست. این متد پس از خصوصیت‌های `param` در بر چسب ِاپلت فراخوانی می‌شود.
* آغاز (Start): این متد به صورت خودکار پس از متد init فراخوانی می‌شود و هرگاه کاربر به صفحه‌ای که حاوی اپلت است برگردد، دوباره فراخوانی می‌شود.
* توقف (Stop): این متد به صورت خودکار هر گاه کاربر از صفحه‌ای که دارای اپلت است به صفحه‌ای که فاقد اپلت است می رود، فراخوانی می‌شود از این متد برای توقف انیمیشن هم استفاده می‌شود.
* نابودکردن (Destroy):این متد هنگامی فراخوانی می‌شود که جستجوگر به صورت عادی بسته شود. بنابراین اپلت می‌تواند با یک بار مقدار اولیه گرفتن شروع شود و به دفعات زیاد متوقف شود و برای یک بار خاتمه یابد.
از آنجایی که اپلت‌ها در سمت سرویس گیرنده اجرا می‌شوند محدودیت‌های برای آن‌ها در نظر گرفته شده‌است از جمله این محدودیت ما این است که به منابع سرویس گیرنده دسترسی ندارند و نمی‌توانند فایلی را بخوانند یا بنویسند یا برنامه‌ای را اجرا کنند
اپلت‌ها از سرویس دهنده وب گرفته می‌شوند و جستجوگر آن‌ها را در صفحات وب یا پنجره‌های رابط کاربر با اپلت جاسازی می‌کند.
در مقایسه با صفحات اچ‌تی‌ام‌ال اپلت‌ها می‌توانند رابط گرافیکیقدرتمندتر و پویا تری تولید کنند
## مزایای جاوا اپلت
جاوا اپلت‌ها دارای مزایای زیر هستند :
* ساده ساخته شده و در سیستم‌عامل‌های لینوکس، ویندوز، مکینتاش کار می‌کنند.
* همه اپلت‌ها می‌توانند در همه نسخه‌های جاوا و در هر موقع که اپلت نیاز داشته باشد کار کنند.
* اپلت بیشتر جستجوگرهای وب را پشتیبانی می‌کند.
* کدهای اپلت در هر زمان که در سمت کارساز تغییر کند با اولین مراجعه کاربر به سایت به روز رسانی می‌شود.
* اپلت در صورت موافقت کاربر می‌تواند دسترسی کامل به ماشین در حال اجرا داشته باشد.
* اپلت می‌تواند از کامپایلر (اما معمولاً بسیار کندتر) دیگر زبان‌ها از قبیل سی++ استفاده کند و این کار را بسیار سریعتر از جاوا اسکریپت انجام می‌دهد.

## معایب جاوا اپلت
جاوا اپلت دارای معایب زیر هم می‌باشد :
* همیشه به افزونه‌ی جاوا نیاز دارد که این در بسیاری از جستجوگرها به صورت پیش فرض وجود ندارد.
* پیاده‌سازی افزونه‌ی جاوا در پردازشگرهای ای‌ام‌دی و اینتل نگارش ۶۴بیتی کار نمی‌کند.
* تا وقتی که جی‌وی‌ام راه اندازی نشده‌است نمی‌تواند کار بکند و این در زمان راه اندازی اولیه برای استفاده از جاوا اپلت مهم است.
* خیلی سخت می‌تواند به کاربر دسترسی داشته باشد در موارد خاص دسترسی مستقیم به حافظه سرویس گیرنده ندارد
* بعضی از برنامه‌ها فقط برای مدیران سیستم طراحی و نصب شده‌است. در نتیجه بسیاری از کاربران نمی‌توانند اپلت‌ها را بطور پیش فرض ببینند.
* اپلت‌ها به‌طور خاص به محیط زمان اجرای جاوا(جی‌وی‌ام) نیاز دارند.
## مثال‌هایی ساده
مثالِ پیشِ رو، مثالی ساده را نمایش می‌دهد. این برنامه به بسته‌ی `java.applet` و ابزار انتزاعی پنجره‌ای (ای‌دبلیوتی) برای تولید خروجی نیازمند است.( که در این مثال پیام «*سلام دنیا»* است.)

```java
import java.applet.Applet;
import java.awt.*;

// مثالی از اپلت برای برنامه ''سلام دنیا''.
// این برنامه باید تحت نام "HelloWorld.java" ذخیره شود.
public class HelloWorld extends Applet {
  // این متد اجباری است که البته می‌تواند خالی باشد(جاوی هیچ کدی نباشد).
  public void init() { }

  // این متد وجودش ضروری است ولی می‌تواند خالی باشد
  public void stop() { }

  //این متد عناصر روی اپلت را ترسیم می کند.
  //هر تغییری که بر روی اپلت ایجاد شود این متد با استفاده از دستور
  //repaint() فراخوانی مجدد می شود.
  public void paint(Graphics g) {
    //رنگ قلم را به قرمز تنظیم می کند.
    g.setColor(Color.red);
    //اندازه و نوع قلم را به روش زیر تنظیم کنید.
    g.setFont(new Font("TimesRoman", Font.PLAIN, 10)); 
    //رشته “Hello World”  را در مختصات (20,10) بر روی اپلت می نگارد.
    g.drawString("Hello, world!", 20,10);
  }
}
```


## جستارهای وابسته
اپلت

## منابع

* http://java.sun.com/docs/books/tutorial/deployment/applet/index.html
* http://en.wikipedia.org/wiki/Java_applet

رده:پلت‌فرم جاوا
رده:جاوا (زبان برنامه‌نویسی)
رده:جاوا
رده:جاوااسکریپت
رده:زبان‌های برنامه‌نویسی اسکریپتی
رده:زبان‌های برنامه‌نویسی خانواده سی
رده:زبان‌های برنامه‌نویسی شیءگرا