একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ শিখতে কীভাবে শুরু করা উচিত ?

প্রোগ্রামিং ল্যাঙ্গুয়েজ শেখার রোডম্যাপঃ https://youtu.be/8Fs_3FsP-DQ

প্রোগ্রামিং ল্যাঙ্গুয়েজ নির্বাচনের ক্ষেত্রে নতুন করে আর বলার কিছু নেই। ইতিমধ্যে গ্রুপে এ নিয়ে একটি বিস্তারিত পোস্ট রয়েছে। লিঙ্কঃ https://cutt.ly/zUO7RdD

প্রোগ্রামিং এর মূল বিষয়গুলো বোঝার আগে আমাদের খুঁজে বের করতে হবে প্রোগ্রামিং কি। এ সম্পর্কে জানতেঃ https://cutt.ly/nUO7Bur এই স্টেজে এসে আসলে জানা উচিত প্রোগ্রামিং এর বেসিক জিনিসগুলো কি কি, একটি প্রোগ্রাম কিভাবে কাজ করে ইত্যাদি। বেসিক বলতে মূলত Variable, Operators, Statements, Condition, Loop, Array, Function। এই ধাপে আমাদের জানা দরকার নেই যে এগুলো কিভাবে কাজ করে। আমাদের শুধু জানা উচিত এর বংশ পরিচয় টুকু । বিস্তারিত জানার জন্য এই পোস্টটি পড়তে পারেনঃ https://cutt.ly/wUO7UsI

এই ধাপে বেসিক ম্যাথ বলতে আহামরি তেমন কিছু নেই। আমরা যে ক্লাস ফাইভ পর্যন্ত শিখেছিলাম সমান(=), বড়(>), ছোট(<), ভাজ্য, ভাজক, ভাগশেষ, যোগ, বিয়োগ এসব একটু ভালো করে মাথায় সেট করে নেয়া। এটি শুধুমাত্র একটি উদাহরণ দিলাম। অর্থাৎ আমাদের কিছু বেসিক ক্যালকুলেশন জানা উচিত। আপনি অবশ্যই ক্লাস ৯-১০ এর পর্যায়ে যেসব শিখেছেন তা নিয়ে হালকা ঘাটাঘাটি করতে হবে। জটিল না হলেও সহজ বিষয় নিয়ে তো অবশ্যই জানতেই হবে।

এবারে আমাদের নির্বাচন করা প্রোগ্রামিং ল্যাঙ্গুয়েজ এর শুরু থেকে সব শেখা শুরু করা উচিত। ল্যাঙ্গুয়েজ এর ইতিহাস, টাইপ, বেসিক সিনট্যাক্স, কন্ট্রোল ফ্লো, লুপ ইত্যাদি।

একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ এর বেসিক কাঠামো লিখতে পারা এবং তার বিস্তারিত বলতে পারাও এক ধরনের যোগ্যতা। কোথা হতে শুরু হয়, কেন শুরু হয়, এর কাজ কি, কেন রিটার্ন হয়। এসব বিষয় সম্পর্কে অল্প হলেও আমাদের জানা উচিত। আমরা একটি নতুন ঘর তুললাম অথচ জানলাম না যে ঘরের কোন জিনিসটি কি দ্বারা বানানো হয়েছে, তা কিভাবে কাজ করবে তবে তা রডের বদলে বাঁশ ব্যবহারের সমতুল্য।

আমরা যখন ল্যাঙ্গুয়েজ এর একটা করে টপিক শিখবো, তা ভালো করে বোঝার জন্য অবশ্যই ঐ টপিক রিলেটেড কিছু সমস্যা সমাধান করার চেষ্টা করবো। এতে করে ঐ টপিক সম্পর্কে আমাদের একটি মোটামুটি ধারণা চলে আসবে। যেমনঃ if - else শিখলাম। ভালো কথা। তারপর এই জিনিসটা কিভাবে কাজ করে তা জানার জন্য অন্তত ১০ টা সমস্যা নিয়ে মাথা খাটানো উচিত। কোন আপেল বড় না ছোট, একজনের বয়স জেনে নিয়ে বের করলাম সে বড় নাকি আমি। কিছু সংখ্যা দেয়া আছে, আমি ভাবলাম যে, ওখান থেকে ৩ দ্বারা বিভাজ্য কোনগুলো। এমনই হালকা সমস্যা সমাধান।

এবারে আমি মনে করি আমাদের বেসিক কিছু আইডিয়া নেয়া ও শেখা শেষ। এসবের মধ্যে কি কি ছিল ? data type, operators, statements, loops(basic), array(basic)। এখন আমাদের সবচেয়ে গুরুত্বপূর্ণ কাজটি হলো URI (beecrowd.com.br) অনলাইন জাজে একটি একাউন্ট খোলা এবং বিগিনার লেভেলে যেকোনো ৩০ টি সমস্যা সমাধান করা। সমাধানে অবশ্যই খেয়াল রাখতে হবে যেন কিছু আটকে গেলে আমরা সমাধান না খুজি। আমরা যেকারো হেল্প আশা করবো। দরকার হলে “কোড আলাপ” গ্রুপে পোস্ট করব। প্রোগ্রামিং এ একটি প্রবলেম কিভাবে সমাধান করা উচিত ? তা জানতেঃ https://cutt.ly/7UO7L4s

এ পর্যায়ে আমাদের শিখতে হবে কিভাবে nested loop কাজ করে, multi-dimensional array কি, pointer কি, string কি, function কি কেন কিভাবে, libraries, files ইত্যাদি । এসবের বেসিক টু ইন্টারমিডিয়েট লেভেল পর্যন্ত শেখা।

এই ধাপে আমাদের URI থেকে বিগিনার লেভেলের অন্তত ১০০ টি প্রবলেম এবং অন্যান্য লেভেল বা ক্যাটেগরির কিছু কিছু প্রবলেম সলভ করতে হবে। হয়েত এরপর আমরা মোটামুটি অনেক কিছুই শিখে যাবো। সেই সাথে আমাদের ম্যাথমেটিকেল জিনিসগুলো সম্পর্কে আরো ধারণা লাভ করতে হবে। একটু হার্ড লেভেলই বলা যায়।

এর পর ডাটা স্ট্রাকচার এলগরিদম এবং আরো বিভিন্ন কিছু শিখবেন। যেকোনো টপিক বুঝতে সমস্যা হলে বা কোনো প্রশ্ন থাকলে অবশ্যই ফেসবুক গ্রুপে পোস্ট করতে বলা হবে। বা কমেন্ট সেকশন তো আছেই।

ধন্যবাদ।

Written by

Published on