কম্পিউটার এর মানে এমন এক মেশিন যার সাহায্যে সয়ংক্রিয় ভাবে গননার কাজ করা যায় । কম্পিউটার এর আবিষ্কারের সময় সবাই এটাকে গননার যন্ত্র হিসেবেই জানতো । যদিও এখন আমরা কম্পিঊটার এর মাধ্যমে গান শুনি, ভিডিও দেখি, গেমস খেলি, আরও নানা কাজ করি। এই গননার যন্ত্রটা তার আসল কারুকাজ দেখায় যখন এই যন্ত্রটা আমাদের ভাষা বুঝতে পারে । আসলে কম্পিউটার ০ আর ১ ছাড়া আর কোন কিছু বুঝে নাহ | মানে কম্পিউটারকে কিছু বুঝাতে চাইলে আমাকে ০ অথবা ১ দিয়ে বুঝাতে হত । কম্পিউটারের ব্যবহার এত ব্যাপক হওয়ার পেছনে অন্যতম কারণ হচ্ছে নানা রকম সফটওয়্যার দিয়ে নানা ধরনের কাজ করা যায় কম্পিউটারে। এসব সফটওয়্যার তৈরি করতে হয় প্রোগ্রাম লিখে অর্থাৎ কী হলে কী করবে এটি প্রোগ্রামের সাহায্যে কম্পিউটারকে বোঝাতে হয়। একসময় কিন্তু কেবল 0 আর 1 ব্যবহার করেই কম্পিউটারের প্রোগ্রাম লিখতে হতো। কারণ কম্পিউটার তো 0, 1 ছাড়া আর কিছু বোঝে না, আর কম্পিউটারকে দিয়ে কোনো কাজ করাতে চাইলে তো তার ভাষাতেই কাজের নির্দেশ দিতে হবে। তারপর আসে অ্যাসেম্বলি ল্যাংগুয়েজ যাকে দিয়ে প্রোগ্রামাররা ADD DIV MULL এর ব্যাবহারের সুযোগ পেল । কিন্তু মানুষের ব্যবহারের গন্ডি তো আর থেমে থাকে নি । তারা চেয়েছে আরো ভালো অভিজ্ঞতা । আর এখানেই আসে ১৯৭২ সালে এক যুগান্তকারী আবিষ্কার নিয়ে ডেনিচ রিচি । ১৯৭২ সালে আসে সকল প্রোগ্রামিং ভাষার মা হিসেবে পরিচিত সি ।
সি একটি পদ্ধতিগত প্রোগ্রামিং ভাষা। এটি প্রথমে ডেনিস রিচি ১৯৭২ সালে বিকাশ করেছিলেন আসলে এটি সাধারণত একটি অপারেটিং সিস্টেম লেখার জন্য একটি সিস্টেম প্রোগ্রামিং ভাষা হিসাবে বিকাশ লাভ করেছিল। সি ভাষার প্রধান বৈশিষ্ট্যগুলির মধ্যে অন্যতম মেমরীতে নিম্ন-স্তরের অ্যাক্সেস, কীওয়ার্ডগুলির একটি সহজ সেট এবং পরিষ্কার শৈলীর অন্তর্ভুক্ত রয়েছে, এই বৈশিষ্ট্যগুলি সি প্রোগ্রামিংকে একটি অপারেটিং সিস্টেম বা কম্পাইলারের ডেভেলপমেন্টের মতো কাজের জন্য উপযুক্ত করে তোলে।
কেন সি শিখবেন
সি প্রোগ্রামিং ল্যাংগুয়েজ তাদের জন্য অবশ্যই শিখতে হবে যারা কর্মজীবী হিসেবে সফটওয়্যার প্রকোশলী হতে চায় । যখন তারা সফ্টওয়্যার ডেভলপমেন্ট ডোমেনে কাজ করে বিশেষত দুর্দান্ত সফটওয়্যার ইঞ্জিনিয়ার হতে চায় তার জন্য একটি আবশ্যক ল্যাংগুয়েজ। আমি সি প্রোগ্রামিং শিখার কয়েকটি মুল সুবিধা নিচে বলে দিচ্ছি
১। শিখা অনেক সহজ
২। কাঠামোগত বা Structured language
৩। এটি দক্ষ প্রোগ্রাম তৈরি করে
৪। এটি নিম্ন-স্তরের কাজ পরিচালনা করতে পারে
৫। এটি বিভিন্ন কম্পিউটার প্ল্যাটফর্মে compile করা যায়
সাধারণ সি ল্যাংগুয়েজের গঠন
#include
int main(void) {
printf("Hello, World!");
}
কয়েকটি Resource সি শিখার জন্যে
১। বাংলায় সুবিন ভাইয়ের সি নিয়ে ৩ টি বই আছে সেগুলো ক্রম অনুযায়ী শেষ করতে হবে
২। সুবিন ভাইয়ের YouTube Chanel (https://www.youtube.com/user/subeents) এখানে উনি সাধারণত প্রোগ্রামিং নিয়ে আলোচনা করেন
৩। আনিসুন ইসলাম (https://www.youtube.com/playlist?list=PLgH5QX0i9K3pCMBZcul1fta6UivHDbXvz) এখানে শুধু সি শিখার জন্যি ২৪৫ টা ভিডিও আসে । তাই এই চ্যানেল সম্বন্ধে কিছু আর বলতে চাই নাহ।
৪। C all you need to know (https://www.youtube.com/playlist?list=PL_XxuZqN0xVASsjyqiNzgjUWHbDkN2Scy) এই প্লেলিস্ট টা শেষ করলে মোটামুটি সি এর জন্য যথেস্ট ।
আমি সি নিয়ে যে resource গুলো বললাম তা মুলত বাংলায় সি শিখার জন্য ।
সবশেষে বলব কোন নতুন কিছু শিখার জন্য আপনার সদিচ্ছা সবার আগে । আপনি যদি লজিক ভালোবাসেন আর লজিক নিয়ে খেলা করতে ভালো লাগে তবে আমার মনে হয় প্রোগ্রামিং বিষয় টাকে আপনি ইঞ্জয় করবেন । এটা ছিলো সি নিয়ে ব্যসিক কিছু ধারনা দেওয়ার প্রচেস্টা । ইনশাআল্লাহ পরবতীতে নতুন কোন টপিক নিয়ে আলোচনা করবো ।