জাভা প্রোগ্রামিং এ সূচনা

জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজ অনেক সহজ একটা ল্যাঙ্গুয়েজ। সহজ সহজ এবং সহজ। কোডিং করার জন্য বা সফট তৈরির জন্য সবই তৈরি করা রয়েছে, এখন শুধু আপনি ব্যবহার করবেন আর সফট তৈরি করবেন। আবার আমাকে জিজ্ঞেস করবেন না আপনি কয়টি তৈরি করেছেন।জাভা শেখাও অনেক সহজ। ইন্টারনেটে হাজার হাজার টিউটোরিয়াল রয়েছে। আপনি শুধু এখন শেখার বাকি।

শেখার জন্য কিছু বুদ্ধি, পরামর্শ মনে করলে ভুল হবে। ছোট খাট জিনিস নিয়ে স্যারদের বিরক্ত না করাই ভালো। যদি নিজে নিজে পারা যায় তাতে অনেক মজাও পাওয়া যায়। নিজে নিজে না পারলে হাতের কাছের বইটির সাহায্য নেওয়া যেতে পারে। তারপরও যদি না পারা যায় তাহলে একটু গুগলে সার্চ দেওয়া যেতে পারে, বিং ও খারাপ না। সবাই গুগলের কথা বলে কেউ বিলগেটস বেচারার বিং এর কথা বলে না। যাই হোক। আসল কথা বলে নি, যেহেতু আমার এ লেখাটা আপনি পড়ছেন তাই ধরে নেওয়া যায় আপনার ইনটারনেট রয়েছে। যদি দূর্ভাগ্য ক্রমে না থাকে যে কোন ভাবেই বাসায় ইন্টারনেট রাখবেন। প্রয়োজনে যুদ্ধ। একদিন দেরি করে ইন্টারনেট ব্যবহার করলে একদিনেই অনেক কিছু হারাবেন, আর আশাকরি ইন্টারনেটকে শেখার কাজে ব্যবহার করবেন। ইন্টারনেটে আপনি সার্চ দিলে তো অনেক কুটি কুটি [অসংখ্য] রেজাল্ট আসবে, তার থেকে সমাধান পাওয়া অনেক জামেলার, তখন মনে হবে স্যারের কাছে যাওয়াই ভালো। সহজেই সব কিছু বুজে আসা যাবে, কিন্তু তখন চিন্তা করতে হবে টাইম। পোগ্রামারদের কাছে সময় খুবি গুরুত্ত্ব পূর্ন। সময় সময় এবং সময়। হ্যা আর তাই সময় বাচাতেই স্যারের কাছে যাওয়ার কথা চিন্তা মাথা থেকে বাদ দিতে হবে যদি সমস্যাটা বেশি বড় না হয়। যদিও তখন সকল সমস্যাই বড় মনে হবে। কিন্তু স্যারের কাছে যাওয়া আসা, স্যারের দেখা পাওয়া অনেক সময় এবং জামেলার ব্যাপার তাই না? আর সে জন্যই গুগলের অসংখ্য রেজাল্টের কাছ থেকে সমাধান বের করতে হবে। একটা লিঙ্ক থেকে শুরু করলে অল্প কয়েকটা ঘাটলেই সমাধান পাওয়া যাবে আর এতে অনেক বাড়টি কিছু জ্ঞান ও অর্জিত হবে। কিছুদিনের মধ্যে দেখতে পারবে আপনি সহজেই কোন সমস্যার সমাধান ইন্টারনেট থেকে বের করতে পারছেন। আপনার মনে যাই আসেনা কেন সার্চ দিয়ে দেখতে ভুল করবেন না।

বই থেকে পড়তে গেলে অনেক টার্মই বুঝতে অসুবিধা হবে। তখন ইউটিউবে গিয়ে ঐ টার্মটা নিয়ে সার্চ দিন। কি আসে তা দেখুন। দুই তিনটা ভিডিও দেখলে আপনার কনসেপ্ট গুলো পরিষ্কার হয়ে যাবে। ভিডিও দেখা বা অপরিচিত কোন কিছু পড়া/দেখার প্রধান সমস্যা হচ্ছে ঘুম চলে আশা। কিছুক্ষন পড়া বা দেখার পর দেখবেন ঘুম চলে আসবে। যদি বেশি ঘুম আশে তাহলে ঘুমিয়ে নিবেন। তাহলে আপনি ঘুমানোর আগে কি দেখেছেন/পড়েছেন তা মস্তিস্কে সুন্দর ভাবে সংরক্ষিত থাকবে, এটা একটা জরিফের ফল যে কোন কঠিন বিষয় শেখার সময় ঘুম আসলে যদি ঘুমিয়ে নেওয়া যায় তাহলে ঐ বিষয়টা মস্তিকে স্থায়ি ভাবে থেকে যায় মানে ভুলে যাওয়া প্রবনতা কমে যায়।

বই হিসেবে Herbert Schildt এর Complete Reference অনেক বিশাল কিন্তু অনেক ভালো। তাই পারলে বইটা কিনে নিলে ভালো হবে। বইটা ইন্টারনেটে খুজলে সহজেই ফ্রীতে চুরি করে ডাউনলোড করা যাবে, তবে মনে হয়না তা শেখার জন্য কাজে দিবে। তাই পারলে বইটা কিনে নিবেন। আমি আজও এটাই পড়ছি আর বাড়তি কোন বই নেই, সাথে রয়েছে ইন্টারনেট, আর কোন বই লাগবে মনেও হয় না। লাগলে অবশ্যই নীলক্ষেতে একবার ঘুরে আসব।

জাভা যেহেতু শিখবেন সেহেতু এটা সম্পর্কে কিছু জেনে আসছেন, যদি না জেনে থাকেন সমস্যা নেই। কারন জাভা অনেক সমৃদ্ধ একটা ল্যাঙ্গুয়েজ। তারচেয়ে মজার ব্যপার হচ্ছে এটা প্লাটফরম Independent, মানে হলো আপনি যদি একটি প্রোগ্রাম তৈরি করেন তা যে কোন ধরনের অপারেটিং সিস্টেমে যেমন ম্যাক, উইন্ডোজ বা লিনাক্স যে কোন জাগায় চলবে। তাই কোন সফট তৈরি করলে ভালো প্রফিট ও তৈরি করতে পারবেন। এটাকে আবার ক্রস প্লাটফরম ও বলা হয়।

উইকিপিডিয়াতে কি লেখা আছে দেখিঃ

cross-platform, or multi-platform, is an attribute conferred to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms.

আপনি যদি আপনার কোড উইন্ডোজে লিখে থাকেন তা আপনাকে আবার লিনাক্সে বা ম্যাক অপারেটিং সিস্টেমে আর লিখতে হবে না, একই কোড আপনি সকল অপারেটিং সিস্টেমে চালাতে পারবেন। এটা হচ্ছে জাভার সুন্দর একটি বৈশিষ্ট। অনেকে এটাকে বলে WORA যার মানেঃ “Write Once Run Anywhere”

আর জাভাতে এটা সম্ভব হচ্ছে বাইট কোড এর কারনে। বাইট কোড আবার কি, তাই তো?
জাভাতে যখন কোন প্রোগ্রাম লেখা হয় জাভা কম্পাইলার[javac] তখন তা একধরনের কোডে পরিনত করে, আর তার নাম হচ্ছে বাইট কোড। নিচের ছবিটা ভালো ভাবে দেখুন। আপাতত বাম পাশেরটা দেখুন। Phython Source file >>jython এর ধাপ গুলো আরেকদিন আলোচনা করা যাবে।File:Java virtual machine architecture.svgছবি সোর্স – উইকিপিডিয়া

Java source file (example.java) কম্পাইল করলে পাওয়া যায় জাভা বাইট কোড। যা .class ফাইলে সেভ হয়। এ ক্লাস ফাইলটা বা বাইট কোড গুলো হচ্ছে মেশিন ল্যাঙ্গুয়েজে লেখা অর্থাৎ বাইনারীতে লেখা। এবার ক্লাস ফাইলটা যেখানেই রান করানো হোক না কেন তা রান হবে। এ ক্লাস ফাইলটা রান হয় জাভা ভার্চুয়াল মেশিনের সাহায্যে। যা তৈরি করে অবজেক্ট [.obj] ফাইল। এ অবজেক্ট তৈরি করতে JVM  [Java virtual machine] Java Interpreter এবং JIT Compiler [just-in-time compilation] এর সাহায্য নেয়। পোগ্রামের আউটফুট পাওয়ার জন্য এই অবজেক্ট [.obj] ফাইল ব্যবহৃত হয়। একেকটা সিস্টেমের জন্য এক এক ধরনের JVM রয়েছে, যেমন উইন্ডোজের জন্য Windows JVM, ইন্টেলের জন্য IBM JVM ওরাকলের জন্য SUN JVM ইত্যাদি। এই ভিবিন্ন JVM এর সাহায্যে একই বাইট কোড [.class file] বিভিন্ন সিস্টেমে রান করানো যায়। আর এ জন্য ব্যবহৃত হয় JIT Compiler যা সোর্স কোড গুলোকে Native মেশিন কোডে পরিনত করে।

জাভাতে একটা জিনিস রয়েছে যার নাম ক্লাস [class]। আরেকটি সহজ জিনিস। ক্লাস জিনিসটা হচ্ছে তাদের জন্য যারা মনে করে আমার ইচ্ছে আমি যেভাবে ইচ্ছে প্রোগ্রাম লিখব তাতে তোমার কি টাইপের পোগ্রামার। আসলে প্রোগ্রামাররাই এমন। আর তাই জাভাতে এ জিনিসটা। আপনার নিজের ইচ্ছে মত সব কাজ করার জন্যই ক্লাস। ক্লাস নিয়ে আরেক দিন বকর বকর করা যাবে। আপাতত ক্লাসবেটাকে শান্তি মত ঘুমুতে দি।

জাভা শেখার জন্য আপনাকে আগে JDK[Java Development Kit] ডাউনলোড করতে হবে। সাথে একটা এডিটর, সব চেয়ে ভালো হয় যদি একটা IDE ব্যবহার করেন আর তার জন্য আমি বলব NetBeans। যেহেতু JDK এবং NetBeans দুটিই লাগবে তাহলে এক সাথে ডাউনলোড করা ভালো নয় কি? আর তার জন্য এখানে ক্লিক করে JDK 7u4 + NetBeans নামক লেখাটার উপরে ক্লিক করে আপনার ব্যবহৃত অপারেটিং সিস্টেমের জন্য ডাউনলোড করে নিন। ফাইল সাইজ একটু বড়। আমরা যেহেতু বাংলাদেশে বসবাস করি, তাই আমাদের নেটের গতি একটু কম হবে এটাই স্বাভাবিক। আর এ জন্য ডাউনলোড হতেও একটু সময় লাগবে। এখন আপনি যদি অন্যকোন কাজ পেলে কম্পিউটারের সামনে বসে থাকেন জাভা শেখার জন্য তাহলে বাকি কাজ গুলো সেরে আসতে পারেন। এদিকে দিয়ে জাভা JDK এবং আপনার NetBeans IDE ডাউনলোড হতে থাকুক।

ডাউনলোড হলে ইনস্টল করুন।NetBeans খুলুন। হয়তো একটু সময় নিতে পারে, ধৈর্য্য ধরুন। এবার File মেনু থেকে New Project সিলেক্ট করুন। Choose প্রজেক্ট এ অনেক গুলো অপশন পাবেন। Java তে ক্লিক করুন এবং ডান পাশ থেকে Java Application সিলেক্ট করে নেক্স এ জান। Project এর যে কোন একটা নাম দিন। তারপ Finish করুন। সব কিছু ঠিক থাকলে আপনি কোড করার অপশন পেয়ে যাবেন।


3 thoughts on “জাভা প্রোগ্রামিং এ সূচনা

  1. ন্যাটিভ এ্যান্ড্রইড অ্যাপ ডেভেলপমেন্ট শেখার ইচ্ছা প্রায়ই ১ বছর থেকে। বাট সময় করে উঠতে পারছি না। 🙁 দেখা যাক আপনার টুটস থেকে জাভা কতদূর শিখতে পারি। তারপর অ্যাপে হাত দেবো! 😉

  2. নীলক্ষেত এ কি হার্বাট শিল্ড এর বইটা পাওয়া যাবে?

Leave a Reply

Your email address will not be published. Required fields are marked *