C++ শুরুর আগে যত কথা
কম্পিউটার সম্পর্কে যদি তোমার সাধারণ ধারনা থেকে থাকে , না থাকলেও সমস্যা নাই ! বলোতো আমরা কম্পিউটার কেন ব্যবহার করবো / করি ? উত্তর হবে - এটি আমাদের দৈনন্দিন জীবনে নানা চাহিদা ও সমস্যার সমাধান দিয়ে থাকে।
তাহলে কি কম্পিউটার ছাড়া সমস্যার সমাধান হবে না ? উত্তর হবে - হ্যাঁ !
তাহলে কেন কম্পিউটার ব্যবহার করবো ? উত্তর হবে - এটি আমাদের তুলনায় অনেক বেশি গতিশীল , অর্থাৎ এটি যেকোনো কাজ মানুষের তুলনায় অনেক কম সময়ে করতে পারে । তবে আমরা যদি কোন নির্দেশনা না দেই তাহলে কি এটি কাজ করতে পারবে ? উত্তর হবে - না !
তোমরা যেনে রাখো যে কম্পিউটার 0, 1 ছাড়া অন্য কোন ভাষা বুঝে না! 1010, 10111, 11001101 এগুলো হচ্ছে বাইনারি সংখ্যা । এগুলো কম্পিউটার বুঝবে । এইবার মাথা ঘুরলো তো...? তাহলে কিভাবে আমরা কম্পিউটার কে নির্দেশনা দিবো ? ভয়ের কোন কারণ নাই !
প্রোগ্রামিং ভাষা
কম্পিউটারের কিছু ভাষা আছে ,তুমি আমি যেমন বংলায় কথা বলি ধরে নাও তেমন । কিন্তু কম্পিউটার তো আর বাংলা / হিন্দি বুঝবে না আছে। এখানেই চলে আসলো c++ । এটি মূলত কম্পিউটারের একটি ভাষা ,যাকে প্রোগ্রামিং ভাষা বলে । প্রোগ্রামিং ভাষা হচ্ছে এক ধরনের ভাষা যা দিয়ে কম্পিউটার প্রোগ্রাম লেখা যায়। অর্থাৎ যে ভাষা দিয়ে প্রোগ্রাম (যেমন- সফটওয়্যার, অ্যাপস এবং গেমস) তৈরি করা যায় তাকে প্রোগ্রামিং ভাষা বলে। এমন আরও অনেক ভাষা আছে । যেমন - c, python, java, javascript .... আরও অনেক । এখন প্রশ্ন হচ্ছে এসব ভাষা গুলোও কি 0,1 লিখতে হবে? উত্তর হচ্ছে - না ! কি এবার ভয় কমলো ?
আমি জানি তোমার ভয় এখনো কমে নাই !এখনো ভাবছো কম্পিউটার কিভাবে বুঝবে? কিভাবে লিখবো? সে তো 0,1 ছাড়া কিছু বুঝে না ! প্রশ্ন? প্রশ্ন? প্রশ্ন?
কাজের পরিবেশ তৈরি
তুমি ঝটপট তোমার ল্যাপটপ / ডেস্কটপ চালু করে ফেলো । করছো তো ? যদি করে থাকো তাহলে এবার যে কোন একটি ব্রাউজার খুলে ফেলো । সার্চ / অনুসন্ধান করতে পারোত নাকি? যদি পারো তবে সার্চবারে লিখে ফেলো "VS CODE DOWNLOAD" অথবা "https://code.visualstudio.com/download" এই লিংকে চলে যাও । এরপর কি করা লাগবে বলতো ? হা... করে বসে থাকবা না নিশ্চয় । ঝটপট ডাউনলোড করে ফেলো । কি ভাবছো ? প্রশ্ন করলাম কি উত্তর পাইলাম কি ! সব উত্তরই পারা ধর্য ধরো । প্রোগ্রামার হতে হলে সর্ব প্রথম তোমাকে ধর্যশীল হতে হবে বুঝছো ? না বুঝলে আবার শোনো -" প্রোগ্রামার = ধর্য " ।
Visual Studio Code হচ্ছে আইডিই (IDE) । (IDE) এর পূর্ণ অর্থ Integrated Development Environment. যদি সহজ ভাষায় বলি তাহলে বলতে হয় প্রোগ্রামিং এর বিভিন্ন টুলস এর সমষ্টি এটি। এতে সাধারণত এক বা একাধিক কম্পাইলার থাকে, একটি টেক্সট এডিটর থাকে, ডিবাগার থাকে ।
এখন কথা হচ্ছে সবই তো বুঝলাম ! কিন্তু এই IDE দিয়ে করবো কি?
সব প্রশ্নের উত্তরই পেয়ে যাবা । তার আগে আরও একটি কাজ করে ফেলো । আবার ব্রাউজারে গিয়ে VS CODE এর ওয়েব সাইট এ গিয়ে Docs ট্যাবে যাও । এরপর একটু নিচে বাপ পাশে C++ লেখা আছে । C++ এর উপর ক্লিক করলে GCC on Linux , GCC on Windowns, Clang on MacOS এসব অপশন আসবে । এখন তোমার কাজ হচ্ছে তোমার যে অপারেটিং সিস্টেম সেইটা তে ঢুকে পরো । এরপর Prerequisites অনুযায়ী ধাপে ধাপে দেখে দেখে যে যে নির্দেশনা দেওয়া আছে সেই অনুয়ায়ী ইনস্টল করে ফেলো । যদি করে ফেলো তাহলে তোমার কাজ আপাতত শেষ । আর যদি করতে না পারো Youtube এ গিয়ে দেখে নাও কিভাবে windows/linux/macOS এ C++ ও VS CODE ইনস্টল করে ।
এবার সামনের দিকে আগানো যাক ।
ভাষার বিবর্তন
একে বারে শুরুর দিকে , সাল 1945 । তখন কম্পিউটারে মেশিন ভাষায় (Mechine Language) প্রোগ্রাম লেখা হত । মেশিন ভাষা কি বলতো ? 0 আর 1 ই হলো মেশিন ভাষা । কিন্তু মেশিন ভাষায় প্রোগ্রাম রচনা করা অত্যন্ত কষ্টসাধ্য এবং সময়সাপেক্ষ ছিল । আর প্রোগ্রাম রচনায় ভুল হবার সম্ভাবনাও বেশি। তার উপর আবার , এক কম্পিউটারে লেখা প্রোগ্রাম অন্য কম্পিউটারে ব্যবহার করা যায় না। এই কষ্ট সহ্য করতে না পেরে 1950 সালের দিকে নিয়ে আসলো " অ্যাসেম্বলি ভাষা "(Assembly language)।
ঘটনাটা কি ঘটাছে দেখো ! প্রথম বউয়ের জালা সহ্য করতে না পেরে আবার দ্বিতীয় বিয়ে করছে । কিন্তু তারপর ও নিস্তার নাই । এইটাতেও নানান ঝামেলা । বিভিন্ন রকমের সংকেত ব্যাবহার করে প্রোগ্রাম লেখা লাগতিছিলো ।
এখন উপায় ? উপায় কিন্তু একটা আছে, বলো তো কি? তৃতীয় বিবাহ !
1960 সালের দিকে ঘরে নিয়ে আসা হলো তিন নাম্বার বউ । আর এই তিন নাম্বার বউয়ের নাম হলো উচ্চতর ভাষা (High level language) । এখন এই উচ্চতর ভাষার মানুষের ভাষার (যেমন ইংরেজি) সাথে মিল আছে। আবার এই ভাষায় লিখিত প্রোগ্রাম বিভিন্ন ধরনের মেশিনে ব্যবহার করা যায় , তাড়াতাড়ি প্রোগ্রামও লেখা যায়। আহা কি শান্তি তাই না? এই তিন নাম্বার বউয়ের বাচ্চা কাচ্চা হলো - c, c++, python, java, c# ......
কিন্তু কম্পিউটার তো সরাসরি এই ভাষা বুঝতে পারে না। তাহলে কাজটা কি হইলো ! বউয়ের কথা স্বামী যদি না বুঝে তাহলে কথা কিভাবে বলবি ? ভয়ের কিছু নাই সেটাও বলে দিচ্ছি !
একটু আগে কী জানি ডাউইনলোড করছিলা মনে আছে? VS CODE / IDE . আর এই IDE এর কি কি জানি ছিলো ? কম্পাইলার, টেক্সট এডিটর এবং ডিবাগার । এখন তিন নাম্বার বউয়ের একটা বাচ্চা C++ , ধরো তুমিই C++ । এখন তুমি তোমার VS CODE চালু করো । কি করছো তো? এরপর উপরে বাম কোণায় File মেনুতে গিয়ে New Text File ক্লিক করো এবং ফাইলটি Main.cpp নামে save করো । এবার "টেক্সট এডিটর (Text Editor)" লেখো -
#include <iostream>
int main(){
std::cout < "Hello World";
return 0;
}
যা লিখছো বুঝার দরকার নাই । আপাতত তুমি File টি save করো ctrl+s চেপে এবং তোমার কম্পিউটারের কিবোর্ডের f5 বাটনে একটা চাপ দাও । এরপর নিচে / ডানে / বামে যে বক্স ওপেন হবে, সেই বক্সের মধ্যে Terminal ট্যাবে গিয়ে দেখতো কিছু দেখা যাচ্ছে কি না ? Hello World লেখা দেখা যাচ্ছে কি? যদি দেখা যায় তাহলে তুমি ঘটনা ঘটায় ফেলছো ! তোমাকে অভিনন্দন !
কিন্তু কাজটা কিভাবে কি হলো কিছুই তো বুঝলা না । চিন্তার কিছু নাই সব জানতে ও বুঝতে পারবা ।
কম্পাইলার কি
তুমি যখন f5 এ চাপ দিছো তখন VS CODE এর কম্পাইলার ( Compiler ) করছে কি তোমার চোখের আড়ালে তোমার লেখা প্রোগ্রামকে মেশিন ভাষায় রূপান্তর করে ফেলছে ! তারপর পুনরায় আবার তোমার ভাষায় রূপান্তর করে আউটপুট দিয়ে দিছে ।
ধরো তুমি পাতিলে পানি,চাল দিয়ে চুলা জালায় দিছো একটু পর ভাত পাচ্ছ ।
অর্থাৎ কম্পাইলার বা সংকলক এমন এক ধরনের কম্পিউটার প্রোগ্রাম বা প্রোগ্রাম-সমষ্টি যা কোন কম্পিউটারে রচিত উচ্চ ভাষার প্রোগ্রামকে, মেশিন ভাষায় অনুবাদ করে।
আশা করি বুঝে গেছো ! অনেক জ্ঞান দিয়ে ফেলছি এবার C++ এর জগতে প্রবেশ দ্বার তোমার জন্য খোলা ।

0 Comments