প্যাকেজ বলতে সাধারণত একটি বান্ডেলের মতো বোঝায়, যেখানে একই রকম কাজ করার জন্য বিভিন্ন ধরনের আইটেম একসাথে সন্নিবেশিত থাকে। জাভা ল্যাঙ্গুয়েজেও প্যাকেজ রয়েছে। প্যাকেজগুলোতে নির্দিষ্ট কাজের ধরন অনুসারে ইন্টারফেস, ক্লাস, ইনার ক্লাস (ক্লাসের ভেতর ক্লাস), মেথড, কনস্ট্রাক্টর আলাদাভাবে সন্নিবেশিত করা হয়েছে; যাতে জাভার প্রোগ্রামারেরা তাদের প্রয়োজনমতো নির্দিষ্ট প্যাকেজের মেথডসহ অন্যান্য তথ্যাদি ব্যবহার করতে পারেন। একটি প্রোগ্রাম লিখতে যে প্যাকেজগুলো দরকার শুধুমাত্র সেই প্যাকেজগুলোকে ইম্পোর্ট করে প্রোগ্রামটি সম্পূর্ণ করা যায়। প্রোগ্রামটি রান করার সময় জাভা তার লাইব্রেরি থেকে প্রোগ্রামে ব্যবহৃত প্যাকেজগুলো নিয়ে প্রোগ্রাম রান করে। ফলে জাভার সব মেথড ইম্পোর্ট করার বা মেমরিতে লোড করার প্রয়োজন হয় না। এতে প্রোগ্রাম দ্রুত রান করে। সেই সাথে জাভা ফাইলের আকারটিও হয় ছোট। মেমরি ম্যানেজমেন্টের কাজটিও এর মাধ্যমে সহজেই হয়ে যায়। অ্যাপলেট ছাড়া জাভার ছোট প্রোগ্রাম লিখতে প্যাকেজের প্রয়োজন না হলেও একটু বড় কাজ করতে হলেই প্যাকেজ প্রয়োজন হয়। তাই যারা জাভা নিয়ে কাজ করতে আগ্রহী তাদের জাভা প্যাকেজ সম্বন্ধে জানা জরুরি। এই পর্বে জাভার গুরুত্বপূর্ণ প্যাকেজ নিয়ে সংক্ষেপে আলোচনা করা হলো।
প্যাকেজ : java.awt
উইন্ডোভিত্তিক প্রোগ্রাম তৈরি করার জন্য এই প্যাকেজের প্রয়োজন হয়। প্যাকেজটিতে উইন্ডোর সব কম্পোনেন্ট যেমন টেক্সটবক্স, বাটন, চেকলিস্ট, রেডিও বাটন, ডায়ালগ বক্স, মেন্যু, মেন্যুবার, স্ক্রলবার, ফন্ট (ফন্টের কালার, টাইপ, স্টাইল), কার্সর, পেইন্টিং এবং গ্রাফিক্সের সব কাজ করার জন্য প্রয়োজনীয় মেথড এবং ইন্টারফেস রয়েছে। এসব কাজ করার জন্য awt প্যাকেজ ইম্পোর্ট করতে হয়। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.awt.*;
যা সাধারণত প্রোগ্রাম লেখার শুরুতেই লিখতে হয়।
প্যাকেজ : java.awt.event
ইভেন্ট প্যাকেজে বিভিন্ন ইভেন্ট নিয়ে কাজ করা হয় যেমন মাউস ক্লিক করলে বা মাউস আপ বা ডাউনে কী কাজ করবে, কিবোর্ডের ডিলিট বাটনে বা ফাংশনাল বাটনগুলোতে চাপ দিলে কী কাজ হবে, উইন্ডো ক্লোজ বা মুভ করার সময় কী হবে সে সংক্রান্ত ক্লাস আছে। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.awt.event.*;
প্যাকেজ :java.awt.print
পেপার সাইজ নির্ধারণ, মার্জিন সেটিংসহ প্রিন্ট সংক্রান্ত কাজ করার এই প্যাকেজটি ব্যবহার হয়। এই প্যাকেজের গুরুত্বপূর্ণ ক্লাসের মধ্যে PageFormat, Paper, PrinterJob এবং ইন্টারফেসগুলোর মধ্যে Pageable, Printable অন্যতম। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.awt.print.*;
প্যাকেজ : java.awt.image
জাভা প্রোগ্রামে ইমেজ নিয়ে কাজ করার জন্য এই প্যাকেজটি ব্যবহার হয়। এই প্যাকেজের মাধ্যমে ইমেজ তৈরি ও মডিফাই করা যায়। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.awt.image.*;
প্যাকেজ : java.net
জাভা প্রোগ্রামে নেটওয়ার্কিং সংক্রান্ত কাজ করার জন্য এই প্যাকেজটি ব্যবহার হয়। এই প্যাকেজের সকেট ক্লাস দিয়ে ইন্টারনেটের মাধ্যমে সার্ভারের সাথে সংযুক্ত হওয়া যায়। ইন্টারনেট থেকে ডাটা সংগ্রহ করার জন্য এখানে URL নামে একটি ক্লাস রয়েছে। এই প্যাকেজের গুরুত্বপূর্ণ ক্লাসের মধ্যে DatagramPacket, DatagramSocket, InetAddress, ServerSocket, URLConnection, URLDecoder, URLEncoder অন্যতম। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.net.*;
প্যাকেজ : java.rmi
Remote Method Invocation (RMI) প্যাকেজটি ব্যবহার হয় রিমোট কমপিউটারের সাথে সংযোগ স্থাপন ও তাতে বিভিন্ন ধরনের কাজ করার জন্য। এই প্যাকেজের মাধ্যমে একটি কমপিউটারের জাভা ভার্চুয়াল মেশিনের মধ্য থেকে আরেকটি কমপিউটারের জাভা ভার্চুয়াল মেশিনের প্রোগ্রামের সাথে কমিউনিকেট করা যায়। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.rmi.*;
প্যাকেজ : java.security
এই প্যাকেজের মাধ্যমে সিকিউরড প্রোগ্রাম তৈরি করা যায়। এখানে jar কমান্ড ব্যবহার করে কমপ্রেসড ফাইল তৈরি করা যায় এবং এতে সিকিউরিটি হিসেবে জার সাইনার ব্যবহার করা হয়। ফলে অনেক নিরাপত্তার সাথে ফাইলসমূহ নেটওয়ার্কের মাধ্যমে পাঠানো সম্ভব হয়। Public key এবং private key ব্যবহার করে এই নিরাপত্তা আরো বাড়ানো হয়েছে।
প্যাকেজ : java.sql
ডাটাবেজ সংক্রান্ত প্রোগ্রাম তৈরি করতে এই প্যাকেজ ব্যবহার করা হয়। Structured Query Language (SQL) ব্যবহার করে কোডের মাধ্যমে ডাটাবেজে টেবিল তৈরি, ডাটা সম্পাদন, ইনসার্ট বা ডিলিট করা যায়। জাভা প্রোগ্রামে এই প্যাকেজটি ইম্পোর্ট করে ডাটাবেজের সাথে কাজ করার সক্ষমতা অর্জন করা যায়। ওয়েব অ্যাপ্লিকেশনে এই প্রোগ্রাম ব্যবহার করে ডাটাবেজ থেকে ডাটা প্রেজেন্টেশন এবং সেই সাথে ব্রাউজারের মাধ্যমে ব্যবহারকারীর প্রদানকৃত ডাটা ইন্টারনেটের মাধ্যমে সার্ভার কমপিউটারে অবস্থিত ডাটাবেজে সংরক্ষণ করা সম্ভব। যেহেতু জাভা একটি ওয়েব বেজড প্রোগ্রাম, সেহেতু ডাটাবেজের সাথে সংযোগ সাধন এর ব্যবহার আরো বহুগুণে বৃদ্ধি করেছে। এই প্যাকেজের গুরুত্বপূর্ণ ইন্টারফেসগুলোর মধ্যে Connection, DatabaseMetaData, ResultSet, ResultSetMetaData, SQLInput, SQLOutput অন্যতম। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.sql.*;
প্যাকেজ : java.io
জাভা ইনপুট আউটপুট প্যাকেজকে java.io হিসেবে নামকরণ করা হয়েছে। এই প্যাকেজে সিস্টেমের ইনপুট ও আউটপুট এবং ফাইল সিস্টেমে ইনপুট ও সেখান থেকে আউটপুট নেয়ার জন্য প্রয়োজনীয় ক্লাস, মেথড ও ইন্টারফেস রয়েছে। রান টাইমে সিস্টেমে ইনপুট দেয়া, কোনো ফাইল তৈরি করা, প্রোগ্রামের মাধ্যমে ওই ফাইলে লেখা ও ফাইল থেকে কোনো তথ্যাদি নেয়ার কাজগুলো এই প্যাকেজের মাধ্যমে করা সম্ভব হয়। এর উল্লেখ্যযোগ্য ক্লাসগুলো হলো File, FileInputStream, FileOutputStream, BufferedInputStream, BufferedOutputStream ইত্যাদি। এই প্যাকেজকে ইম্পোর্ট করার কোড
import java.io.*;
প্যাকেজ : java.lang
জাভা ল্যাঙ্গুয়েজকে ডেভেলপ করার জন্য যে ফান্ডামেন্টাল ক্লাসগুলো দরকার তা এই প্যাকেজে রয়েছে। এই প্যাকেজের ক্লাসগুলো ব্যবহার করে ডাটা টাইপকে স্টিং, ইন্টিজার, ফ্লোট, ডাবলসহ অন্যান্য ডাটাতে পরিণত করা যায়। যেহেতু জাভার ভিত্তিই এই প্যাকেজের ক্লাসসমূহ, তাই স্বয়ংক্রিয়ভাবে জাভা এই প্যাকেজকে ইম্পোর্ট করে। এজন্য কোড লেখার প্রয়োজন হয় না।
প্যাকেজ : java.util
ল্যাঙ্গুয়েজ প্যাকেজের পর আরেকটি গুরুত্বপূর্ণ প্যাকেজ হলো এই প্যাকেজ। অ্যারে, ক্যালেন্ডার, ডেট, টাইম মেথড নিয়ে কাজ করার জন্য এই প্যাকেজ ব্যবহার হয়। এই প্যাকেজ ইম্পোর্ট করার কোড
import java.util.*;
প্যাকেজ : java.applet
ওয়েব অ্যাপ্লিকেশনের জন্য বিশেষভাবে তৈরি প্রোগ্রাম হলো অ্যাপলেট, যা ব্রাউজার এবং ব্রাউজারের সাহায্য ছাড়াই রান করতে পারে। অ্যাপলেট তৈরি করার জন্য মূলত এই প্যাকেজ ব্যবহার হয়। এই প্যাকেজকে ইম্পোর্ট করার জন্য প্রোগ্রামের শুরুতেই import java.applet.*; লিখতে হয়।
প্যাকেজ : java.beans
উইন্ডোজনির্ভর অ্যাপ্লিকেশনের জনপ্রিয়তার পেছনে মূল কারণ হলো কোনো প্রোগ্রামিং জ্ঞান না থাকলেও উইন্ডোর বিভিন্ন কম্পোনেন্ট ব্যবহার করে সহজেই যেকোনো কাজ করা যায়। এই ধারণাকে জাভায় প্রয়োগ করার পদ্ধতিই হলো beans। বিনের মাধ্যমে বিভিন্ন ইভেন্ট, বাটন, টেক্সটবক্স ইত্যাদি তৈরি করা যায় কোনো প্রোগ্রাম কোড করা ছাড়াই শুধুমাত্র ড্রাগ অ্যান্ড ড্রপ কৌশলের মাধ্যমে। এই প্যাকেজকে ইম্পোর্ট করার জন্য কোড import java.beans.*;
০ টি মন্তব্য