জাভা প্রোগ্রামিং এর আদি + অন্ত :D

7
678
সবাই আমার সালাম/নমষ্কার গ্রহণ করবেন । আশা করি সবাই ভালো আছেন ???? আজকে হাজির হলাম জাভা প্রোগ্রামিং এর কিছু তথ্য নিয়ে দেখেন আপনার কোন কাজে আসে কিনা।


  • ভূমিকা (Introduction) :অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর জগতে সর্বশ্রেষ্ঠ ও সর্বাধুনিক সংযোজন হচ্ছে জাভা (Java) ভাষা। জাভা একটি সত্যিকারের পূর্ণাঙ্গ অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং  ল্যাংগুয়েজ। কারণ অবজেক্ট অরিয়েন্টেড ল্যাংগুয়েজের প্রধান তিনটি বৈশিষ্ট্য, যেমন-পলিমরফিজম (Polymorphism), ইনহেরিটেন্স (Inheritance) এবং এনক্যাপসুলেশন (Encapsulation) সহ. অন্যান্য যেসব বৈশিষ্ট্য থাকা প্রয়োজন তার সবকিছু জাভাতে আছে। এতে সি ও সি++ ভাষার অনেক জটিল ও বিঘ্ন সৃঘ্নিকারী বিষয় যেমন – পয়েন্টার, অপারেটর ওভারলোডিং, মাল্টিপল ইনহেরিটেন্স ইত্যাদি বাদ দেয়ার পাশাপাশি সি ও সি++ ভাষায় সাপোর্ট করে না এমন অনেক নতুন নতুন বৈশিষ্ট্য যেমন- প্যাকেজ (Package), অ্যাপলেট (Applet)I মাল্টিথ্রেড (Multithread) ইত্যাদি যোগ করা হয়েছে। ফলে জাতা সত্যিকার অর্থে একটি সহজ, সরল, সাবলীল, বিশ্বস্থ ও পূর্ণাঙ্গ অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং ভাষায় পরিণত হয়েছে।

জাভা ভাষার ইতিহাস (History of Java) :

কম্পিউটার আবিষ্কারের গুরু থেকে প্রোগ্রামিং এর বিভিন্ন পদ্ধতির প্রচলন ছিল। যেমন-

-মডুলার (Modular) প্রোগ্রামিং

-টপ ডাউন (Top- down) প্রোগ্রামিং

-বটম আপ (Bottom up) প্রোগ্রামিং

-স্ট্রাকচার্ড (Structured) প্রোগ্রামিং ইত্যাদি।

এসব পদ্ধতিগুলো তখনকার সময় ও চাহিদার প্রেক্ষিতে বেশ জনপ্রিয়ও ছিল। বিশেষত তুলনামূলক সহজ উপায়ে অপেক্ষাকৃত জটিল জটিল সমস্যার সমাধানে স্ট্রাকচার্ড পোপ্েরামিং এর ব্যবহার ছিল খুবই গুরুত্বপূর্ণ। কিন্তু প্রযুক্তিগত উন্নয়ন ও চাহিদার কারণে এক সময়ে এসে সম্পূর্ণ ক্রটিমুক্ত, সহজে রক্ষণাবেক্ষণযোগ্য ও পুনরায় ব্যবহারযোগ্য (Reusable) প্রোগ্রাম তৈরিতে সনাতন পদ্ধতিগুলো খুব বেশি কার্যকরী ভূমিকা পালন করতে পারছিল না। আর এসব সীমাবদ্ধতাতাকে অতিক্রম করার জন্যই নতুন ও যুগোপযোগী “অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং” এর আগমন। সিমূলা ৬৭ (Simula 67) হল প্রথম অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং ল্যাংগুয়েজ যা ১৯৬০ সালে বাজারে আসে। এরপর আসে ভিএইচডিএল  (VHDL) পরবর্তীতে ১৯৮০ সালে যুক্তরাষ্ট্রের এটিএন্ডটি বেল ল্যাবরেটরি (AT & T Bell laboratory) ও জর্ন স্ট্রাউস্ট্রাপ (jarne Stroustrup) এর যৌথ উদ্যোগে সি ভাষার প্রধান বৈশিষ্ট্যের সাথে সিমলা ৬৭ ভাষার  ক্লাস (Class) ধারণার mg¤^‡q এক নতুন ভাষার জন্ম হয়- সি উইথ ক্লাস  (C with class) । পরবর্তীতে একে মডিফাই কর ১৯৮৩ সালে নামকরণ  করা হয় সি++ (C++) , যা একটি জনপ্রিয় অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং ল্যাংগুয়েজ। কিন্তু সি++ ভাষারও কিছু সীমাবদ্ধতা (Limitations) ছিল। যেমন- ইউজার ফ্রেন্ডলি না হওয়া, বিশ্বস্থতা  (Reliability) ও পোর্টেবিলিটি (Portability) ইত্যাদি। এসব অসুবিধার জন্য প্রোগ্রামাুরগণ একটি পূর্ণাঙ্গ অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং ল্যাংগুয়েজ ডেভেলপ করার ক্ষেত্রে  মনোযোগী হন। ফলশ্রুতিতে ১৯৯১ সালে ÔSun Microsystems’ কোম্পানির গবেষক James Gosling এর নেতৃত্বে একদল প্রোগ্রামার ‘Green’ প্রজেক্টের আওতায় সি++ ভাষার উপর ভিত্তি করে ‘Consumer electronic device’ এ ব্যবহার উপযোগী প্ল্যাটফর্ম ইনডিপেন্ডন্ট (Platform independent) একটি ছোটখাট  প্রোগ্রামিং ল্যাংগুয়েজ ডেভেলপ করার গাবেষণা শুরু করেন এবং তারা একটি নতুন ভাষা উদ্ভাবন করেন যার নাম দেন ‘Oak’| সম্ভবত James Gosling এর অফিস রুমের জানালপার ধারে বিদ্যমান ‘Oak’ গাছটির কথা চিন্তা করেই এরূপ নামকরণ করে থাকবেন। কিনু্তু ‘Oak’ নামের আরো একটি  ল্যাংগুয়েজ বাজারে থাকায় এর নাম পরিবর্তন করে দেন জাভা  (Java) এবং তা ১৯৯৪ সাল পর্যন্ত নানাভাবে মার্কেটিং এর চেষ্টা করেন। কিন্তুু তাদের সে চেষ্টা ব্যর্থ হয়।

ইতিমধ্যে ইন্টারনেট ভিত্তিক ওয়াইড ওয়েব (World wide web -www) সিস্টেমের ব্যাপক প্রসার ঘটতে শুরু করে এবং এর জন্য ‘mosaic’ নামে একটি অ-বাণিজ্যিক ব্রাউজার (Browser) ব্যবহার করা হত। ÔSun microsystems’ এর প্রোগ্রামারগণ তখন ল্যাংগুয়েজ হিসেবে জাভার ক্ষমতা প্রদর্শনের লক্ষ্যে জাভা ভাষা ব্যবহার করেই জাভা ভার্চুয়াল মেশিন বা ÔJVM’ ব্যবস্থা সমৃদ্ধ ÔHot Java’ নামে একটি ব্রাউজার নির্মাণ করলেন। ১৯৯৫ সালের ২৩ মে তারিখে এটি ÔSunworld’ নামক অনলাইন ম্যাগাজিনে প্রথম রিলিজ করেন।

ব্রাউজার হিসাবে জাভা সফল হওয়ায় ১৯৯৫ সালেই Netscape এবং পরবর্তীতে IBM, Symantec, Inprise এমনকি Microsoft সহ বহু প্রতিষ্ঠান তাদেও ব্রাউজারে জাভা ব্যবহার করা শুরু করেন। তাই জাভাকে সি++ এর ইন্টারনেট ভার্সনও বলে।

১৯৯৬ সালে জাভার প্রথম ভার্সন প্রকাশিত হয়। প্রথম ভার্সন প্রকাশের কয়েক পরই পরবর্তী ভার্সন (1.02) প্রকাশিত হয়। পরবর্তীতে বড় বড় মাপের প্রোগ্রাম লেখার সুবিধা নিয়ে লাইব্রেরি ফাংশন সমৃদ্ধ ভার্সন (1.1) প্রকাশিত হয়। সময়ের ধারাবাহিকতায় 1.1 ভার্সনের তুলনায় উন্নত এবং অনেক বেশি বিল্ট ইন ক্লাস সমৃদ্ধ ভার্সন 1.2 প্রকাশিত হয় ১৯৯৮ সালে। ভার্সনটি রিলিজ হওয়ার মাত্র তিন দিন পরেই এর নামকরণ করা হয় Java 2| Java 2 রিলিজ হওয়ার পরর্তী সময়ে জাভার আরো কয়েকটি ভার্সন (JDK 1.3, JDK 1.4, JDK 1.5) ইত্যাদি পর্যায়ক্রমে প্রকাশিত হয়।

 

সবাইকে অসংখ্য ধন্যাবাদ ।।।।

……………. {সমাপ্ত} …………….

7 মন্তব্য

একটি উত্তর ত্যাগ