সি প্রোগ্রামিং ভাষা শেখার পূর্বশর্ত গুলো কী কী?

সি প্রোগ্রামিং ভাষা শেখার পূর্বশর্ত গুলো কী কী?

সি প্রোগ্রামিং ভাষা শেখার পূর্বশর্ত গুলো কী কী?. আমাদের দেশের বর্তমান অধিকাংশ ছাত্র, বেকার সকলেরই না জেনে একটা পছন্দের বিষয় হল প্রোগ্রামিং। আপনি ভালো স্টুডেন্ট? ইউনিভার্সিটিতে চান্স পেয়েছেন? সিএসই নিন। আপনি বেকার? প্রোগ্রামিং শিখুন। তাদেরকে এই সিএসই পড়া বা প্রোগ্রামিং শিখা বা এই সংক্রান্ত যা আছে তা সম্পর্কে বিশদে না জানিয়ে ছেড়ে দিলে সেটা হবে বেইমানি।

তো আপনি এখানে অত্যন্ত বুদ্ধিমানের মতো একটা কাজ করেছেন যে এর পূর্বশর্ত জানতে চেয়েছেন। শুধু প্রোগ্রামিং ভাষা শেখার পূর্বশর্ত হল পরিশ্রম, অধ্যবসায় আর অনুশীলন। তো বাংলায় বললাম; এ নিয়ে আবার কিছু বলবেন না! কেন শিখবেন, কিভাবে শিখবেন সেটা আপনার হয়তো জানা আছে। কিন্তু অনেকেরই তা জানা নাও থাকতে পারে। তাই উত্তরটা একটু বিশদেই দেয়ার চেষ্টা করবো ইনশাআল্লাহ।

আগে আপনার উত্তরটা দিয়ে নিই। আপনি এখানে নির্দিষ্টভাবে বলেই দিয়েছেন আপনি সি ল্যাঙ্গুয়েজ শিখবেন। তো সি ল্যাঙ্গুয়েজ সম্পর্কে না জেনে শিখতে যাওয়া আমার মতে বোকামি। আগে দেখতে হবে এই ল্যাঙ্গুয়েজ এর পটেনশিয়ালিটি কেমন? কোন কাজের জন্য ব্যবহার করতে চাচ্ছেন?

সি প্রোগ্রামিং ভাষা শেখার পূর্বশর্ত গুলো কী কী?

সি প্রোগ্রামিং ভাষা শেখার পূর্বশর্ত গুলো কী কী?


পূর্বশর্তঃ

১. হার না মানার স্পৃহা থাকতে হবে।

২. একটানা ঘণ্টার পর ঘণ্টা ভিডিও দেখে শিখা যাবে না। এভাবে শিখা যায়ও না। তাই এক বা দুই ঘণ্টা ভালোভাবে শিখলেই সেই দিনের জন্য যথেষ্ট (আমার মতে)

৩. বই পড়তে হবে (এটা পড়ে নিবেন, কাজে লাগবে)

৪. একটা টপিক সম্পর্কে আগে সম্যক জ্ঞান নিবেন, তারপর সেটা অনুশীলন করবেন। একই প্রবলেম (ছোট হলে) দশবার (জানা থাকলেও)

৫. শেখার সময় হতাশা আসবে, তাই ফুরফুরে মেজাজে থাকার চেষ্টা করবেন। এই জন্যই প্রথমে বলেছিলাম হার মানা মানা :)

৬. এবার মূল ল্যাঙ্গুয়েজ এ আসি। আগে ভালো কম্পাইলার নির্বাচন করুন (আমি GCC ব্যবহার করেছিলাম তবে Visual C++ ব্যবহার করলেও সমস্যা হবে না। তবে বিগিনার হিসেবে আমি এটা অপছন্দ করি)।

৭. একটা ভালো আইডিই (Integrated Development Environment) ব্যবহার করতে পারেন অথবা যেকোন টেক্সট এডিটর ব্যবহার করতে পারেন (আমার ব্যক্তিগতভাবে পছন্দ হল Visual Studio Code)।

৮। যদি Visual Studio Code ব্যবহার করেন, তাহলে অবশ্যই ব্যবহারের পূর্বে প্রয়োজনীয় এক্সটেনশনগুলো ডাউনলোড করে নিবেন।

৯. সবচেয়ে গুরুত্বপূর্ণ বিষয় হল ওপেন সোর্স কোড এ অবদান রাখা। তবে সেটা বেসিক ও অনেকগুলো এডভান্স লেভেল পার করার পরের বিষয়।

১০. শেখার সময় কোন প্রবলেমে পড়লে অবশ্যই Stackoverflow ঘাটাঘাটি করতে হবে।

১১. এটা গুরুত্বপূর্ণ মনে না হলেও আমার মতে অত্যন্ত জরুরী বিষয় হল ভালোভাবে গুগলিং শিখতে হবে। এটা অনেকেই জানেন না। যার কারণে একটা সমস্যার সমাধান হতেও সময় বেশি লাগে।

১২. আমার বাস্তব অভিজ্ঞতা থেকে বলতে পারি যে, শিখতে যতো সময় লাগে, কোডিং করতে তার থেকেও কম সময় লাগে। কিন্তু কোড এর এলগরিদ্ম বের করতে তার থেকে অনেক বেশি সময় লাগে। আশা করি সে ধৈর্য আপনার আছে। না থাকলে আপনি শিখতেই পারবেন না।

১৩. সি যেহেতু একটা মিড লেভেল ল্যাঙ্গুয়েজ, তাই আপনাকে একটা মোটামুটি সহজ কাজের জন্যও বেশ বড় কোড লিখতে হতে পারে। তাই এতটুকু মাথায় রাখবেন।

১৪. আগেই ফ্রিল্যান্সিং নিয়ে মাথা ঘামানোর প্রয়োজন নেই। কারণ মানুষ সেই হুজুগে চলতে গিয়ে প্রোগ্রামিং শিখার মূল উদ্দেশ্যই হারিয়ে ফেলে।

১৫. অনেকে আছে ইউনিভার্সিটিতে সি শুধু সেমিস্টার পার করার জন্য শিখে। তাদের জন্য বলি, আপনারা পড়ে সমাজের বোঝা হয়ে যেতে পারেন। কথাটা একটু কড়া হলেও সত্য।

১৬. বেশি বেশি অনুশীলন করুন (কিছু ওয়েবসাইটঃ LeetCode, Google KickStart)

সি ল্যাঙ্গুয়েজ এর ব্যবহারঃ

১. এম্বেডেড সিস্টেম ল্যাঙ্গুয়েজ (এই ধরণের প্রোগ্রামিং ল্যাঙ্গুয়েজ দিয়ে সরাসরি ডিভাইস হার্ডওয়্যার নিয়ন্ত্রণ করা হয় {যেমন কম্পিউটার স্ক্রীন এর যে সফটওয়্যার, আপনার ওয়াইফাই রাউটার এর সফটওয়্যার, মোদ্দা কথা সকল ইলেক্ট্রনিক জিনিসের সফটওয়্যার})

২. ওয়েব ডেভেলপমেন্ট (এটা শুনতে অবাক লাগলেও সত্য। সি মূলত সি++ এবং জাভাস্ক্রিপ্টসহ অধিকাংশ প্রোগ্রামিং ল্যাঙ্গুয়েজ এর জননী। আপনি যে ব্রাউজার ব্যবহার করছেন, তাতেও সি এর একটা বড় ভূমিকা রয়েছে।)

৩. কম্পাইলার ডেভেলপমেন্ট (অধিকাংশ প্রোগ্রামিং ল্যাঙ্গুয়েজ এর জন্যই কম্পাইলার অথবা ইন্টারপ্রেটার প্রয়োজন। সেটা সি ব্যবহার করেই তৈরি করা হয়।)

৪. প্রায় সব আইওটি ডিভাইস (তো আপনার হাতের স্মার্ট ফোন, ড্রোন, স্মার্ট এসি, স্মার্ট রেফ্রিজারেটরসহ অন্যান্য ডিভাইস যা ইন্টারনেট এর সাথে যুক্ত থেকে কাজ করতে সক্ষম)

৫. ডেটাবেজ সিস্টেম (একটা ডেটাবেজের ভিত্তি তৈরি করা হয় সি দিয়ে)

৬. গেম ডেভেলপমেন্ট (একটা গেমকে অত্যন্ত সাশ্রয়ী হতে হয় র‍্যাম কিংবা প্রসেসর ব্যবহারের ক্ষেত্রে। এই জন্য সি এবং সি উপজাত সি ++ ব্যবহার উত্তম (অন্যান্য প্রোগ্রামিং ল্যাঙ্গুয়েজও ব্যবহার করা যায়))

পোটেনশিয়ালিটিঃ

১. সফল হলে বিলিওনেয়ার হতে পারবেন ইনশাআল্লাহ