আসুন শিখি পরিপূর্ণ জাভা [পর্ব-৩] :: আসুন শিখি hello java প্রোগ্রাম আর মেইন মেথড ডিক্লেয়ারের কিছু নিয়ম

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

আজকে আমরা হেল জাভা প্রোগ্রাম রান করবো। কিন্তু রান করার  জন্য তো কিছু লাগবে তাই না? আচ্ছা আজকে আমরা আপাতত JdK ইনস্টল করে কম্পিউটার এর নোট প্যাড দিয়েই কাজ চালিয়ে দিবো। কিন্তু পরবর্তীতে কিন্তু আমরা eclips ইন্সটল করে কাজ করবো। তো হেল জাভা রান করানোর জন্য আমাদের যা করতে হবে ...

  • প্রথমে এই লিংক থেকে JDK ডাউনলোড করে ইনস্টল করতে হবে।
  • JDk এর জন প্যাথ সেট করে দিতে হবে jDk/bin ডিরেক্টরিতে। কিভাবে করবেন?
    প্রথমে আপনি যেখানে jDk ইনস্টল করেছেন সেই ফুল্ডারে যান।সাধারণত ডিফল্ট ভাবে program files এর ভিতরে java নামে একটা ফুল্ডার দেখতে পাবেন। এরপর jdk...তে যান। এরপর bin এ ঢুকুন। এরপর পুরো লোকেশন টা কপি করুন। এরকম পাবেন। C:\Program Files\Java\jdk1.6.0_23\bin
    এইবার command promt বা cmd ওপেন করুন।নিচের ছবি অনুসরণ করুন।
    নিচের লাইনের মত set path= এর পর ঐ লোকেশন টা পেস্ট করুন...

    জানি অনেকের কাছেই এটা বিরক্তিকর হবে যারা নতুন। যাইহোক এটা টেম্পোরারিও। এর থেকে পার্মানেন্টলি সেট করে নিন।যদি পার্মানেন্টলি  করতে চান তাহলে নিচের পদ্ধতি অনুসরণ করুন।

  • MyComputer এ গিয়ে  properties -> advanced tab -> environment variables -> new tab এ  user variable এ new ক্লিক করুন  -> veriable name এ লিখুন path  -> variable value তে bin ফোল্ডার এর লোকেশন টা পেস্ট করুন -> ok -> ok -> ok চাপুন। না বুঝলে নিচের স্ক্রিনশট দেখুন।

    কোনো কিছু বুঝতে সমস্যা হলে টিউমেন্টে জানাবেন।

যাইহোক তো চলুন এইবার Hello java program টি লিখেই ফেলি।

class Simple{
public static void main(String args[]){
System.out.println("Hello Java");
}
}

তবে এখানে লক্ষনীয় বিষয় হচ্ছে আপনার মেইন ক্লাসের নাম আর আপনি যেই নামে ফাইলটা সেভ করবেন সেটা একই হতে হবে। যেমনঃ এখানে মেইন ক্লাস Simple দিয়েছি তাই আমাকে সেভ করতে হয়েছে Simple.java নামে। 
আমি প্রথমেই ডেক্সটপে javapro নামে একটা ফোল্ডার তৈরি করলাম। আপনার যা খুশি দিতে পারেন। এরপর সেখানে Simple.java নামে ফাইলটা সেভ করলাম। মনে রাখবেন ক্লাসের নামের প্রথম অক্ষর সব সময় বড় হাতের দিতে হয়। এবার আউটপুট পাওয়ার জন্য আপনাকে নিচের মত কমান্ড প্রোমট অন করতে হবে। এটা অন করতে প্রথমে windows button+r একসাথে চাপুন। এরপর cmd লিখে ইন্টার দিলেই অন হয়ে যাবে। এবার আপনাকে যেটা করতে হবে সেটা হচ্ছে প্রথমে আমাদেরকে desktop এর ভিতরে javapro নামের ফুল্ডারে ঢুকতে হবে। তাই নিচের মত কমান্ড দিন।

cd desktop\javapro

এবার আমরা এই ফুল্ডারে চলে গিয়েছি। এখন আমদেরকে Simple.java ক্লাসকে কম্পাইল করতে হবে। এর জন্য আমাদেরকে কমান্ড দিতে হবে

javac Simple.java

এন্টার দিন।

বেস। কম্পাইল হয়ে গেছে। এবার রান করার পালা। রান করার জন্য লিখুন

java Simple

দেখুন আউটপুট দেখাচ্ছে "Hello java".

যারা প্রথম বার জাভা করলেন তাদের কাছে বিষয়টা কিন্তু অনেক মজার তাই না? কিন্তু আমরা যে কোডটা লিখেছি। ঐটা সম্পর্কে তো কিছু জেনে নেওয়া দরকার তাই না। ঐ কোডগুলো কেন লিখলাম বা ঐ কোডগুলোর অর্থই বা আসলে কি? তো চলুন জেনে নিই।

আমরা এখন জানবো, class, public, static, void, main, String[] এবং System.out.println() সম্পর্কে।

  • class: এই কিওয়ার্ডটি জাভার ক্লাস ডিক্লেয়ার করার জন্য ব্যবহৃত হয়।
  • public: পাবলিক একারণেই রাখা হয়েছে যেন এটাকে সবাই এক্সেস করতে পারে।কারণ এটা হচ্ছে মেইন মেথড।
  • static: এটি একটি কিওয়ার্ড। যদি আমরা কোনো মেথডকে static ডিক্লেয়ার করি তাহলে সেটাকে স্ট্যাটিক মেথোড বলা হবে। এর সব থেকে বড় সুবিধা হচ্ছে, কোনো ম্যাথোড কে স্ট্যাটিক ঘোষনা করা হলে অবজেক্ট তৈরি করে আর ঐ মেথডকে কল করতে হয় না।মেইন মেথডটি jvm এ এক্সিকিউট হয় তাই অব্জেক্ট তৈরি করে মেইন মেথডকে কল করতে হয় না। আর যেহেতু সাময়িকভাবে মেমরি বাফার করে।তাই এতে মেমরি খরচ অনেক কম হয়।
  • void: এটা হচ্ছে একটি মেথডের রিটার্ণ টাইপ। এর মাধ্যমে বুঝায় যে, উক্ত মেথডটি কোনো ভেলু রিটার্ণ করবে না।
  • main : এর মাধ্যমে প্রোগ্রামের শুরু বুঝায়। কারণ প্রতিটি প্রোগ্রামই মেইন মেথড থেকে এক্সিকিউট হয়।
  • String[] args: এটা কমান্ডলাইন আর্গুমেন্ট এর জন্য ব্যবহৃত হয়। এর সম্পর্কে আমরা পরে আরও বিস্তারিত জানবো।
  • System.out.println(): এটা মুলত প্রিন্ট স্ট্যাটমেন্ট যেটা আউটপুট দেখানোর জন্য ব্যবহৃত হয়। এরপর কোনো টিউনে সময় পেলে আমরা এই স্যাটমেন্ট আসলে ভিতরে কি কি কাজ করে সে সম্পর্কে জানবো।

আসুন আমরা এখন দেখবো যে, আমরা ঠিক কতভাবে একটা জাভা প্রোগ্রাম লিখতে পারি

আসলে আমরা অনেকেই মনে করি যে, আমি উপরে যেই সিনটেক্স দেখালাম জাভাকে ঠিক ঐভাবেই লিখতে হবে। এর একটু পরিবর্তন হলেও জাভা কাজ করবে না। কিন্তু ধারণাটা ভুল। আসুন দেখি কি কি পরিবর্তন হলেও আপনার প্রোগ্রামে কোনো প্রভাব পড়বে না।

  • আপনি মডিফায়ারগুলোর সিকুয়েন্স চেঞ্জ করলেও প্রোগ্রামে কোনো প্রভাব পড়বে না।
    যেমনঃ static public void main(String args[])
  • সাবস্ক্রিপ্ট কে চাইলে আপনি আর্গুমেন্টের আগে বা পড়ে বা এর আগে স্পেস ব্যবহার করতে পারবেন। (প্রোগ্রামিং থার্ড ব্র্যাকেটকে সাবস্ক্রিপ্ট বলা হয়।)
    যেমনঃ public static void main(String[] args)  
                public static void main(String []args)  
                public static void main(String args[])  
  • আপনি চাইলে সাবস্ক্রিপ্ট এর জায়গায় var-args ব্যবহার করতে পারেন মেইন মেথডে তিনটি ডট এর মাধ্যমে।
    উদাহারণঃ public static void main(String... args) 
  • জাভা ক্লাস এর শেষে চাইলে আপনি সেমিকোলন দিতেও পারেন আবার নাও দিতে পারেন।
     

class A{
static public void main(String... args){
System.out.println("hello java4");
}
};

আসুন দেখি কি ধরণের মেইন মেথড আমরা জাভা প্রোগ্রামে ব্যবহার করতে পারি

আমরা নিম্নোক্ত মেইন  মেথডগুলো জাভা প্রোগ্রামে ব্যবহার করতে পারি।

public static void main(String[] args)

public static final void main(String[] args)

final public static void main(String[] args)

public static void main(String args[])

public static void main(String... args)

static public void main(String[] args)

public static void main(String []args)

final strictfp public static void main(String[] args)

এগুলো সম্পর্কে পরে বিস্তারিত জানা যাবে যখন আমরা প্রোগ্রামিং এ চলে যাবো। আপাতত শুধু জানিয়ে রাখলাম যেন আপনারা একটা গন্ডির মধ্যে আটকে না থাকেন।

যেধরনের ভুল সাধারণত আমরা করতে পারি ভবিষ্যতে কিন্তু মেইন মেথডে এগুলো কখনো গ্রহনযোগ্য নয়, চলুন সেগুলোও একটু জেনে নি... 

public void main(String[] args)

static void main(String[] args)

public void static main(String[] args)

abstract public static void main(String[] args)

কেন এগুলো গ্রহনযোগ্য নয় তা আপনারা একটু লক্ষ করলেই বুঝতে পারবেন। প্রথমটায় static অনুপস্থিত.২য়টায় পাব্লিক হারিয়ে গেছে, তৃতীয়টায় main এর টাইপ static এর আগে চলে গেছে। আর ৪নাম্বারটার উপর বজ্রপাত হয়েছে।হা হা হা। কারণ শুরুতে abstract ব্যবহার করা হয়েছে।

যাইহোক চেষ্টা করেছি আপনাদেরকে খুঁটিনাটি বিষয়গুলি জানানোর জন্য। প্রোগ্রামিং তখনই আপনার কাছে সহজ মনে হবে যখন আপনার খুঁটিনাটি প্রশ্নগুলোর সঠিক উত্তর থাকবে। তাই আপনাদেরকে আগে এগুলো জানানোর চেষ্টা করতেছি। ইনশাআল্লাহ এগুলো শেষ হলেই আমরা সবাই মিলে প্রোগ্রামিং এর দুনিয়ায় ঝাপ দিবো।

আজকের মত বিদায়। দেখা হবে ইনশাআল্লাহ পরবর্তী টিউন।

আল্লাহ হাফিজ।

ফেসবুকে আমি

আমার ওয়েবসাইট

Level 1

আমি মোঃ আশিকুর রহমান সরল। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 8 বছর 9 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 83 টি টিউন ও 102 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 12 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।

আমি একজন প্রযুক্তি প্রেমী।কম্পিউটার ইঞ্জিনিয়ারিং এ লেখাপড়া করছি।পৃথিবীকে নতুন কিছু করে দেখাতে চাই। My Website


টিউনস


আরও টিউনস


টিউনারের আরও টিউনস


টিউমেন্টস

gd post,,,,ami c ektu pari…..java o sikhte cai…..apni calea jan

সুন্দর পোষ্ট । আমি এই সাইট থেকে filetheme.com PHP Script free ডাউনলড করেছিলাম। এবং সেটা দিয়ে একটা ওয়েব সাইট বানিয়েছি। ভালোই চলছে। এক ভাই আমাকে বলল। এটা নাকি নাল স্ক্রিপ্ট। কিন্তু আমি সেটা নাল পাইনি। আমাকে সেটার সামান্য কডিং করা লেগেছে।
আমার কথা হলো নাল থিম বলতে কি কোন থিম আছে? আর থাকলে কেনোই বা Envato ফ্রী ডাউনলোড করতে দেয়?