C-এর মত বহুমুখী ও উপযোগী প্রোগ্রামিং ভাষা কমই আছে, কিন্তু নতুনদের কাছে এটি ভয়ংকর লাগতে পারে। ভালো খবর হলো C শিখতে उतনা কঠিন নয়, এবং ফ্রি রিসোর্সের অপরিসীম ভাণ্ডার রয়েছে।
C প্রোগ্রামিংয়ের ইতিহাস
১৯৭২ সালে ডেনিস এম. রিচি C প্রোগ্রামিং ডেভেলপ করেন। C-র থেকে C++, Objective C 비롯한 অনেক ভাষা উদ্ভূত হয়েছে। এটি জেনারেল-পারপাস ল্যাঙ্গুয়েজ হিসেবে তৈরি হয়েছিল এবং সফল হয়েছে।
C বিশ্বের সবচেয়ে বেশি ব্যবহৃত প্রোগ্রামিং ভাষাগুলোর একটি। কেন C? এটি B ভাষার উত্তরাধিকারী। আধুনিক যুগে C সিস্টেম প্রোগ্রামিং-এ বেশি ব্যবহৃত হয় সফটওয়্যার প্রোগ্রামিংয়ের চেয়ে।
কেন C শিখবেন?
নতুনরা জাভা বা পাইথন থেকে শুরু করেন। এগুলো জনপ্রিয় আধুনিক ভাষা, কিন্তু C-র ইউটিলিটি কম নয়। অম্যাচুর কোডাররা কয়েকবার বিস্মিত হয়েন C-এর স্ট্রাকচার देखकर — এটি শিখা সহজ। দক্ষ, সুস্পষ্ট প্রোগ্রাম তৈরি করে এবং লো-লেভেল এক্টিভিটি অন্য ভাষা চেয়ে ভালো হ্যান্ডেল করে।
C-এর সবচেয়ে বড় শক্তি: এটি বিভিন্ন প্ল্যাটফর্মে কম্পাইল করা যায়। Unix পুরোপুরি C-তে লেখা।
C প্রোগ্রামিংয়ের বেসিক
এই টিউটোরিয়ালে আরও এগিয়ে যাওয়ার আগে জানুন: প্রোগ্রামিং ভাষা শিখা সহজ, কিন্তু মাস্টার করা কঠিন। একক আর্টিকেলে সব বেসিক কভার করা সম্ভব নয়। এই গাইড আপনাকে রিসোর্স খুঁজে বের করতে এবং কোর কনসেপ্ট শিখতে সাহায্য করবে যাতে আপনি স্বয়ংশিক্ষা নিতে পারেন।
প্রথমে একটি IDE (Integrated Development Environment) লাগবে — যেটা কোড লিখতে ও এডিট করতে দেয়। C-এর জন্য সেরা IDE-গুলো: Visual Studio Code, NetBeans। এগুলো ইন্টুইটিভ, ডাউনলোড-সেটআপ সহজ। আপনার ফোকাস কোডে থাকবে, টুল শিখতে না।
এই টুলগুলো কম্পাইলার ডাউনলোড ও সেটআপ করতে সাহায্য করে যাতে কোড টেস্ট করা যায়।
প্রোগ্রাম লিখুন
বেসিক টুল রেডি হলে প্রথম প্রোগ্রাম লিখুন। C-এ প্রোগ্রামের তিনটি বেসিক এলিমেন্ট:
- Library (লাইব্রেরি): হেডার ফাইলগুলোর সংগ্রহ। প্রোগ্রামে লাইব্রেরি ইম্পোর্ট করতে হয় তার ফাংশন ব্যবহার করতে। উদাহরণ: <stdio.h>। সব C লাইব্রেরি .h দিয়ে শেষ হয়। ইনক্লুড করার সিনট্যাক্স: #include <stdio.h>
- Function (ফাংশন): স্টেটমেন্টের গ্রুপ যা একটি টাস্ক সম্পাদন করে। C-এ সব প্রোগ্রামের প্রাইমারি ফাংশন: main()। উদাহরণ:
int main() {
printf(“Hello, world!”);
return 0;
} - Return statement: int মানে ফাংশন ইন্টিজার রিটার্ন করবে। printf() হলো <stdio.h> লাইব্রেরির ফাংশন। লাইব্রেরি কল না করলে printf() চলবে না। printf()-এর ভেতরের টেক্সট স্ক্রিনে প্রিন্ট হবে। ফাংশন রান হলে ০ রিটার্ন করে — এটি এক্সিট স্টেটমেন্ট, মানে প্রোগ্রামের কাজ শেষ। ব্র্যাকেটগুলো ফাংশন কন্টেইন করে। প্রতিটি লাইন সেমিকোলন দিয়ে শেষ হয় (সিনট্যাক্স)।
সম্পূর্ণ প্রোগ্রাম:
#include <stdio.h>
int main() {
printf (“Hello, world!”);
return 0;
}
এটি বিভ্রান্তিকর লাগলে চিন্তা করবেন না। C-এর কমান্ডগুলো শিখতে একটু সময় লাগে, প্র্যাকটিস করলে সহজ হয়ে যাবে।
C প্র্যাকটিসের জন্য অতিরিক্ত রিসোর্স
C-এ নতুন হলে হ্যands-on প্র্যাকটিস জরুরি। সিনট্যাক্স ও মেকানিক্সে যত বেশি হাত দেবেন, তত সহজ হবে। ফ্রি রিসোর্সগুলো:
- Learn-C.org — ইন্টারেক্টিভ C টিউটোরিয়াল, সাইন আপ বা ডাউনলোড ছাড়া। ওয়েবসাইটে কম্পাইল ও প্রসেস হয়। বেসিক থেকে শুরু করে বিল্ড আপ করে।
- CProgramming.com — C প্রোগ্রামিংয়ের এন্ট্রি-লেভেল কলেজ কোর্সের সমতুল্য। স্টেটমেন্ট পড়া, রিকার্সিভ প্রোগ্রাম, বাইনারি ট্রি বোঝা — সব ডিটেইলড।
- W3Schools Tutorial — প্রায় সব প্রোগ্রামিং ভাষা শিখতে সেরা রিসোর্স। C-র ওপর বিস্তৃত কোর্স এবং প্র্যাকটিস টেস্ট রয়েছে।