জাভা দিয়ে অ্যাপলেট তৈরি ও ওয়েবপেজে সংযোজন
মো: আবদুল কাদের
জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজের জনপ্রিয়তার কেন্দ্রেই রয়েছে অ্যাপলেট। প্রথম দিকে জাভা দিয়ে শুধু ছোট ছোট প্রোগ্রাম বানানো হতো, যেগুলো দিয়ে হস্তচালিত ডিভাইস যেমন রিমোট কন্ট্রোল, ওভেন ইত্যাদি পরিচালনা করা যেত। সে সময় জাভার বিভিন্ন ডিভাইসে কাজ করার সক্ষমতার কথা চিন্তা করে এর ¯্রষ্টা জেসম গসলিং ল্যাঙ্গুয়েজটিকে আরো বড় পরিসরে ব্যবহারের চেষ্টা করেন। সে সময় মানুষ শুধু ইন্টারনেট সম্পর্কে স্বল্প পরিসরে ধারণা পেয়েছিল এবং ইন্টারনেটের মাধ্যমে ইনফরমেশন টেকনোলজির সঠিক ব্যবহার করে কীভাবে সহজেই বিশ্বের বিভিন্ন প্রান্ত থেকে তথ্য শেয়ার করা যায়, সে বিষয়ে জানতে থাকে এবং ধীরে ধীরে ওয়েব জনপ্রিয় হওয়া শুরু করে।
সেই সময়ে উইন্ডোজের মাইক্রোসফট, নেটসক্যাপ নেভিগেটর ইত্যাদি দিয়ে উইন্ডোজ, লিনআক্সসহ বিভিন্ন অপারেটিং সিস্টেমে ইন্টারনেটের ব্যবহার হতে থাকে। তবে সমস্যা দেখা দেয় যখন কোনো নির্দিষ্ট সিস্টেমের জন্য প্রোগ্রাম লেখা হয়, তা অন্য সিস্টেমে রান করে না। যেমন উইন্ডোজনির্ভর প্রোগ্রাম লিনআক্স বা ইউনিক্সে সাপোর্ট করে না। ফলে প্রতিটি সিস্টেমের জন্য আলাদা আলাদা কোড লিখতে হয়, যাতে সময়ের সাথে সাথে খরচও বেড়ে যেত। ফলে অবাধ তথ্য শেয়ারিং ধারণাটি কিছু কিছু ক্ষেত্রে বাধাগ্রস্ত হতে থাকে এবং নতুন একটি ল্যাঙ্গুয়েজের প্রয়োজন দেখা দেয়। প্রোগ্রামেরা এমন একটি পদ্ধতি তৈরি করতে উদ্যত হন, যাতে ল্যাঙ্গুয়েজটি হবে প্লাটফরম ইনডিপেনডেন্ট অর্থাৎ একটি প্রোগ্রাম লিখলে যাতে সব অপারেটিং সিস্টেমেই সমানভাবে চলে। এই বাস্তবতায় জেমস গসলিং জাভা ল্যাঙ্গুয়েজকে একটু পরিবর্তন করে ইন্টারনেটের উপযোগী প্রোগ্রাম তৈরি করেন, যেটি হলো অ্যাপলেট। অ্যাপলেট হলো ছোট একটি প্রোগ্রাম, যা ব্রাউজারের মধ্য থেকে যেকোনো সিস্টেমে রান করতে সক্ষম। জাভার জাস্ট ইন টাইম (ঔওঞ) কম্পাইলার এবং ইন্টারপ্রেটর এ কাজে সহায়তা করে।
এ পর্বটিতে জাভা দিয়ে একটি অ্যাপলেট তৈরি করে তা ওয়েবপেজে সংযোজন করা এবং একইভাবে ওয়েবপেজ ছাড়া কমান্ড লাইনের মাধ্যমে কীভাবে রান করা যায় এ দুটি পদ্ধতিই দেখানো হয়েছে।
অ্যাপলেট তৈরি
নিচের প্রোগ্রামটি নোটপ্যাডে টাইপ করে Applet1.java নামে সেভ করতে হবে।
import javax.swing.*;
import java.awt.*;
//Applet code here
public class Applet1 extends JApplet
{
public void init() { getContentPane().add(nwe JLabel(ÒThis is an Applet!Ó));
}
}
ওয়েবপেজ তৈরি
নিচের প্রোগ্রামটি নোটপ্যাডে টাইপ করে ‘Applet with browser.html’ নামে সেভ করতে হবে।
Applet1
This is running from Applet
রান করার পদ্ধতি
০১. প্রথমে জাভা ফাইলটিকে নিচের চিত্রের মতো কম্পাইল করতে হবে। ফলে Applet1.class ফাইল তৈরি হবে।
০২. এবার ‘Applet with browser.html’ ফাইলটির ওপর ডবল ক্লিক করলে অ্যাপলেটসহ প্রোগ্রামটি রান করবে। ফলে নিচের ছবির মতো আউটপুট দেখা যাবে।
চিত্র-ওয়েবপেজে আউটপুট
ওয়েবপেজ ছাড়া অ্যাপলেট
রান করার পদ্ধতি
যদিও আগের পর্বগুলোতে অ্যাপলেট রান করার পদ্ধতি দেখানো হয়েছে, তবুও অ্যাপলেট সম্পর্কে একটি পরিপূর্ণ ধারণা পেতে আবার দেয়া হলো। Applet1.java প্রোগ্রামটি নিচের মতো রান করাতে হবে।
চিত্র-কমান্ড লাইনে প্রোগ্রাম রান করার পদ্ধতি
ফাইলটি রান করলে কোনো আউটপুট দেখা যাবে না। কারণ, জাভা ফাইলটিতে উইন্ডোর সাইজ উল্লেখ করা হয়নি। তাই কমান্ড লাইনের মাধ্যমে জাভা ফাইলটিকে রান করার জন্য নিচের কোডটুকু //Applet code hereএর স্থলে সংযোজন করতে হবে।
*/
এরপর আবার ওপরের চিত্রের মতো রান করলে নিচের ছবির মতো আউটপুট দেখা যাবে।
চিত্র-প্রোগ্রাম রান করার পর আউটপুট
লক্ষণীয়, সব ফাইল যাতে একই ফোল্ডারে থাকে। একই ফোল্ডারে না থাকলে ওপরের চিত্রের মতো আউটপুট দেখা যাবে না। সেই সাথে ইন্টারনেট এক্সপ্লোরারে অষষড়ি নষড়পশ পড়হঃবহঃ-কে একসেপ্ট করতে হবে। তবে মজিলাতে এ রকম কোনো কিছুর প্রয়োজন নেই।
আরেকটি অ্যাপলেট তৈরি করার কোড নিচে দেয়া হলো। এই ফাইলটিকেও একইভাবে ওয়েবপেজে সংযোজন এবং কমান্ড লাইনের মাধ্যমে রান করানো যাবে।
AppletCode.java
import java.awt.*;
import java.applet.*;
import java.net.*;
/*
*/
public class AppletCode extends Applet
{
public void init()
{
setSi“e(100,100);
}
public void start() {}
public void repaint()
{
showStatus(ÒStatus Changed!Ó);
}
public void paint()
{
showStatus(ÒPainted!Ó);
}
public void update()
{
showStatus(ÒUpdated!Ó);
}
public void dispose()
{
System.out.println(ÒApplet to be shut down!Ó);
}
public void stop()
{
System.out.println(ÒApplet Stopped!Ó);
}
public void destroy()
{
System.out.println(ÒApplet Destroyed.Ó);
}
public void paint(Graphics g)
{
String Code_Base;
String Doc_Base;
URL addurl = getCodeBase();
URL addurl1 = getDocumentBase();
Code_Base = addurl.toString();
Doc_Base = addurl1.toString();
g.drawString(Code_Base,10,10);
g.drawString(Doc_Base,10,20);
System.out.println(ÒThe height of the applet is Ò + getParameter(ÒheightÓ));
System.out.println(ÒThe width of the applet is Ò + getParameter(ÒwidthÓ));
showStatus(ÒWe are showing aonther Applet example.Ó);
paint();
System.out.println(getSi“e());
}
}