সুপ্রিয় পাঠক, আসসালামু আলাইকুম। অনেকদিন ধরেই জাভা নিয়ে কিছু লিখব লিখব করে সময়ের অভাবে আর লিখতে পারিনা। অবশেষে খানিকটা জোর করেই লিখতে বসে পরলাম। 🙂 ইচ্ছা আছে জাভার basic থেকে most advance level পর্যন্ত যতটুকু জ্ঞ্যান সংগ্রহ করেছি তা share করার। Share করার তালিকায় থাকবে-
1. Basic Java
2. OOP
3. Java Web
4. MVC
5. JDBC
6. Socket Programming এবং
7. Java Reporting
পরিচিতিঃ
জাভা কি? জাভা একটি প্রোগ্রামিং ভাষা এবং একটি প্লাটফরম। আর প্রোগ্রামিং ভাষা হল কম্পিউটার নামের বোকা যন্ত্রটিকে মানুষের কল্যাণে লাগানোর জন্য যে বিশেষ instruction ব্যবহার করা হয়। A set of instructions that can be used to control a machine, is said as programming language.
প্লাটফরম কি? জাভাকে কেন প্লাটফরম বলা হচ্ছে?
যেকোনো কিছু সঠিক ভাবে পরিচালনার জন্য যে উপযুক্ত পরিবেশের দরকার হয়, সেটাই প্লাটফরম। আমরা মোটামুটি সবাই জানি যে জাভা হল platform independent. অর্থাৎ যেকোনো operating system (Windows, Linux, Mac) এ এটি run করে। কারন এর নিজস্ব একটি বৈশিষ্ট্য আছে যার কারনে জাভা যেকোনো operating system এ run করতে পারে আর এটি হল JRE (Java Runtime Environment).
জাভার ইতিহাস
জাভার সূচনা ঘটেছিল Green Team এর মাধ্যমে 1991 এর জুন মাসে। তারা একটা বিশেষ ভাষার চিন্তা করছিল যা দিয়ে ডিজিটাল টেলিভিশন এর উদ্ভাবন করা যায়! তাছাড়া ইন্টারনেট ব্যবহার কে আর সুগম করার জন্য জাভা উদ্ভাবন করেন Green Team.
James Gosling, Mike Sheridan, এবং Patrick Naughton Green team এর প্রধান ছিলেন। James Gosling সর্বপ্রথম জাভা ভাষা তৈরি করেন। তখন এর নাম ছিল Greentalk. পরে এর নামকরন করা হয় Oak.
Oak নামকরন কেন করা হয়?
কারন USA, France, Germany, Romania সহ বেশ কিছু europian দেশের জাতীয় গাছের নাম ছিল Oak.
জাভা নামকরন কেন করা হয়? জাভা নামের উদ্দেশ্য কি? এটার অর্থ কি?
1995 সালে Oak এর নাম পরিবর্তন করে জাভা রাখা হয়। oak নামটি পরিবর্তন করতে বাধ্য হয় Green Team কারন নামটি oak technology registration করে ফেলে।
তারপর, Green Team অনেক গুলো নাম বাছাই করেন। এর মধ্যে ছিল dynamic, revolutionary, silk, jolt, DNA ইত্যাদি। অবশেষে silk নামটি মনপুত হল। কিন্তু কিছুদিন যেতে আবার নতুন নামকরন করার ইচ্ছা হল তাদের। James Gosling এর আবার খুব coffee খাওয়ার সখ ছিল। পরে তাই তিনি silk এর নাম পরিবর্তন করে রাখেন জাভা। কারন জাভা Indonesia এর একটি দ্বীপের নাম, যেখানে সর্বপ্রথম coffee আবিস্কার করা হয়।
কেন শিখব?
যারা CSE তে admit হয়েছ, তাদের বেশির ভাগ এর প্রশ্নই হল কোন programming language শিখব? উত্তর টা আসলে তোমার যেটা ভাল লাগবে, সেটাই শিখবে। Object Oriented সকল প্রোগ্রামিং ল্যাঙ্গুয়েজ আসলে মোটামুটি একই ধরনের standard follow করে। বর্তমানে সবচেয়ে বহুল পরিচিত প্রোগ্রামিং ল্যাঙ্গুয়েজ গুলো হচ্ছে Java, JavaScript, C, C#,C++, PHP, Python, visual basic ইত্যাদি। আরও অনেক প্রোগ্রামিং ল্যাঙ্গুয়েজ আছে, যেগুলো ক্ষেত্র বিশেষে use হয় যেমনঃ ruby, groovy, matlab, Objective-C, Perl ইত্যাদি। ২০১৫ এর IEEE এর পরিসংখ্যান অনুযায়ী top 10 লিস্টঃ
Reference: http://relus.com/top-10-programming-languages-to-learn-in-2016/
দেখতে পাচ্ছি যে জাভার অবস্থান একাবারে প্রথমেই। যদিও position তেমন কোন important ব্যাপার না। এটা আসলে নির্ভর করে কার কোনটা ভাল লাগে।
৫ টি কারন আমি শেয়ার করছি।
১. Lots of Job opportunity: আপনার ১ম কারন টা যদি হয় ভাল চাকুরি পাব তো? তাহলে জাভার উপরে ওষুধ নেই। সমগ্র বিশ্বে শুধু জাভা ডেভেলপার দের জন্য অপেক্ষা করছে লাখ লাখ জব। শুধু প্রমান করুন আপনি উপযুক্ত। আপনি নয়, চাকুরি আপনাকে খুজবে। জাভা ভাষা শেখার পর অন্য যেকোনো ভাষা শিখা আপনার কাছে ১ গ্লাস পানি খাওয়ার মত সহজ মনে হবে।
২. Easy to learn:
Google এ অসংখ্য resource আছে জাভা শেখার জন্য। তাছাড়া জাভার বিশাল বড় Community আছে যারা আপনার যেকোনো সমস্যা যেকোনো সময়ে Solve করার জন্য সদা প্রস্তুত। javadoc এ পাবেন জাভার Documentation এর বিশাল ভাণ্ডার। অভাব নেই Library এবং API এর। আপনি যদি C language পারেন, তাহলে জাভার 50% complete করে রেখেছেন বলে মনে করতে পারেন। বাকি 50% এর মাঝে আছে Object Oriented Programming, Web programming, MVC(Model View Controller), Database connection and reporting.
৩. Powerful Deployment Tools:
জাভাতে প্রোগ্রামিং execute করার জন্য আপনি পাবেন NetBeans, Eclipse, IntelIJ এর মত শক্তিশালী IDE.
৪. Platform Independent:
1990 সাল থেকে জাভার জনপ্রিয়তার মুল কারন হল এটি platform independent. অর্থাৎ যেকোনো Operating System এই run করে। জাভার শ্লোগান ছিল:
“Write Once Run Everywhere” [WORA]
৫. Java in Everywhere:
জাভা অ্যাপ্লিকেশান এর প্রকারভেদঃ
মূলত ৪ ধরনের জাভা অ্যাপ্লিকেশান আছে।
1) Standalone Application
এটি desktop application নামেও পরিচিত. এটি মূলত window-based application. AWT এবং Swing standalone applications তৈরিতে ব্যবহার করা হয়।
2) Web Application
যে অ্যাপ্লিকেশান server এ থাকে এবং Client এর request অনুযায়ী Service দান করে, সেগুলই Web application. Servlet, JSP, struts, JSF ইত্যাদি technology জাভাতে ওয়েব অ্যাপ্লিকেশান তৈরিতে ব্যবহৃত হয়।
3) Enterprise Application
বিশাল বড় বড় অ্যাপ্লিকেশান যার অনেক গুলো শাখা আছে এবং Heavy database dependent, সেগুলোই Enterprise যেমনঃ banking applications. এটি High Level security, load balancing এবং clustering নিয়ে কাজ করে। EJB enterprise applications তৈরিতে ব্যবহৃত হয়।
4) Mobile Application
Java based অথবা Android based phone এ যে অ্যাপ্লিকেশান গুলো আমরা দেখি, সেগুলো জাভা দিয়েই বানানো। Mobile Apps এর জন্য জাভার বিশেষ Framework ব্যবহার করা হয় যেমনঃ Java ME এবং Android
Tune টি কেমন লেগেছে অবশ্যই comment করে জানাবেন। ভাল থাকুন, সুস্থ থাকুন।
আমি Salman Srabon। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর 1 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 24 টি টিউন ও 49 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 4 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
সিরিজটা চালিয়ে যাবেন আশা করি 🙂 ।