পড়ার নোট
সমস্যা সমাধান
বাস্তব জীবনে আমরা নানা সমস্যায় পড়ি। সমস্যা সমাধান হলো সমস্যার প্রকৃতি বুঝে তা অতিক্রমের উপায় খুঁজে বের করা। এতে সাধারণত এই ধাপগুলো থাকে:
- সমস্যাটি স্পষ্টভাবে বোঝা ও সংজ্ঞায়িত করা
- সম্ভাব্য সমাধানগুলো ভাবা
- বিকল্প সমাধানগুলো মূল্যায়ন করা
- সেরা সমাধানটি বাস্তবায়ন করা
কম্পিউটার দিয়ে সমাধান করতে হলে সেই ধাপগুলো কম্পিউটারকে বুঝিয়ে দিতে হয়। এটাই প্রোগ্রামিং।
প্রোগ্রামিং ভাষা ও মেশিন কোড
আমরা বাংলা, ইংরেজি ইত্যাদি ভাষায় কথা বলি, কিন্তু কম্পিউটার সরাসরি এগুলো বোঝে না। কম্পিউটার ও যেকোনো ইলেকট্রনিক যন্ত্র শুধু ০ আর ১ বোঝে। এই ০ ও ১ দিয়ে নির্দেশ লেখা আমাদের জন্য কঠিন। তাই এমন কিছু ভাষা আছে, যার নিয়ম মেনে নির্দেশ লিখলে কম্পিউটার তা নিজের বোঝার উপযোগী রূপে রূপান্তর করে নিতে পারে। এগুলো প্রোগ্রামিং ভাষা, যেমন সি, সি++, পাইথন, জাভা।
মেশিন কোড বা মেশিন ভাষা হলো ০ ও ১ দিয়ে তৈরি বাইনারি কোড, যা কম্পিউটার সরাসরি বোঝে। প্রোগ্রামিং ভাষা থেকে মেশিন কোডে রূপান্তরের কাজ করে অনুবাদক (translator) প্রোগ্রাম। অনুবাদক দুই রকম।
কম্পাইলার ও ইন্টারপ্রেটার
- কম্পাইলার (Compiler): সব নির্দেশ নির্ভুল হলে একসঙ্গে মেশিন কোডে রূপান্তর করে। কোথাও ভুল থাকলে রূপান্তর শুরুই করতে পারে না।
- ইন্টারপ্রেটার (Interpreter): একটি একটি করে নির্দেশ ধারাবাহিকভাবে রূপান্তর করে। কোনো নির্দেশে ভুল পেলে সেখানে এসে থেমে যায়।
সহজ উপমা: পুরো বক্তৃতা লিখিত অনুবাদ করে দেওয়া কম্পাইলারের মতো, আর বক্তার সঙ্গে সঙ্গে এক বাক্য করে অনুবাদ করা ইন্টারপ্রেটারের মতো।
কোন ভাষা শিখব
শুরুতে যেকোনো একটি প্রচলিত ভাষা শিখলেই চলে, কারণ সব ভাষার মূল গঠন একই রকম। শুধু লেখার নিয়মে সামান্য পার্থক্য আছে। যেমন সি ভাষায় প্রতিটি স্টেটমেন্টের শেষে সেমিকোলন দিতে হয়, পাইথনে লাগে না। একটি ভাষা শিখলে অন্যগুলো সহজ হয়ে যায়। নতুনদের জন্য পাইথন ভালো শুরু, কারণ এটি শিক্ষানবিশ-বান্ধব, এর সিনট্যাক্স সহজ এবং ওয়েব ডেভেলপমেন্ট, ডেটা সায়েন্স ও অটোমেশনে এর ব্যাপক ব্যবহার আছে।
মনে রাখো: কম্পাইলার সব নির্দেশ একসঙ্গে, ইন্টারপ্রেটার একটি একটি করে মেশিন কোডে রূপান্তর করে।
২০২৬ সালের NCTB পাঠ্যবই অনুসরণ করে লেখা।