প্রোগ্রামিং শেখার প্রথম সপ্তাহ

The shortest path for ফাঁকিবাজ

স্টাডি প্ল্যানের মূল পাত

প্রোগ্রামিং শেখার প্রতিযোগিতা সম্পর্কে বিস্তারিত এইখানে

দ্বিতীয় সপ্তাহের স্টাডি প্ল্যান এইখানে

তৃতীয় সপ্তাহের স্টাডি প্ল্যান এইখানে

শুরু করার আগে:

প্রথমেই প্রমিজ করতে হবে- নেক্সট এক মাস প্রতিদিন দুই ঘন্টা (মিনিমাম এক ঘন্টা) প্রোগ্রামিংয়ের পিছনে ব্যয় না করলে আমি রাতের খাবার খাবো না। খাবো না তো, খাবোই না।

আজকের মধ্যে প্রোগ্রামিংয়ের যেকোন বই, ওয়েবসাইট বা টিউটোরিয়াল ঠিক করতে হবে। সেখানে যে প্রোগ্রামিং ল্যাঙ্গুয়েজ আছে সেটা দিয়েই শুরু করতে হবে।


দুইটা জিনিস ঠিক করে নিতে হবে

  1. তুমি কোন বই বা কোন ওয়েবসাইট বা কোন টিউটোরিয়াল দেখে শিখবা, সেটা আগে থেকে ঠিক করে নিতে হবে।
  2. কই থেকে শিখবা সেটা ঠিক করা না থাকলে, কারো কাছ থেকে প্রোগ্রামিংয়ের বই জোগাড় করো। অথবা কোন প্রোগ্রামিং ল্যাঙ্গুয়েজ শিখবা সেটা ঠিক করা থাকলে, সেটার জন্য বই, টিউটোরিয়াল ঠিক করো। আর সেটাও ঠিক করা না থাকলে, হাবলুদের জন্য প্রোগ্রামিংপ্রোগ্রামিংয়ের বলদ টু বস এই দুইটা বই থেকে শিখতে পারো।
  3. মনে রাখবে কোন কিছুতে আটকে গেলে তোমার একটাই ফ্রেন্ড দরকার- সেটা হচ্ছে গুগল। গুগলে সব কিছু আছে। তুমি যে জিনিস বুঝতে পারবে না বা খুঁজে পাবে না সেটা পাঁচবার গুগলে সার্চ দিলে ঠিকই পেয়ে যাবে।
  4. পাঁচবার গুগলে সার্চ দেয়ার পরেও সুবিধা করতে না পারলে, আমাকে ইনবক্স করো বা ইমেইল করো [email protected]

প্রথম দিন: মার্চ ১ (বুধবার)

সময় দিবা: ২ ঘন্টা

ভেরিয়েবল:যে জিনিসগুলো শিখতে হবে

  1. ভেরিয়েবল কি জিনিস।
  2. ভেরিয়েবল ডিক্লেয়ার করার উপায়।
  3. ভেরিয়েবলের মান চেইঞ্জ করা।
  4. ভেরিয়েবলের মান সংখ্যা, স্ট্রিং (কারো নাম), boolean (সত্য, মিথ্যা) এগুলো সম্পর্কে লেখা যায়।
  5. ভেরিয়েবলকে আউটপুট হিসেবে দেখা যায়

শেখা শেষ হলে নিচের প্রশ্নগুলো দিয়ে প্রাকটিস করবে (এগুলা প্রতিযোগিতার প্রশ্ন না, প্রাকটিসের প্রশ্ন)

  1. চায়ের দাম (teaPrice) নামে একটা ভেরিয়েবল ডিক্লেয়ার করে সেটার মান সেট কর।
  2. সিঙ্গারার দাম (saingaraPrice) নামে আরেকটা ভেরিয়েবল ডিক্লেয়ার করে সেটার মান সেট কর।
  3. এখন চায়ের দাম আর সিঙ্গারার দাম মিলে মোট কত টাকা হয় সেটা মোট দাম (totalPrice) নামে নতুন একটা ভেরিয়েবলের রাখ। সবশেষে totalPrice ভেরিয়েবলকে আউটপুট হিসেবে দেখিয়ে দে।
  4. গুট্টুবাবু (guttuBabu) নামে একটা ভেরিয়েবল ডিক্লেয়ার কর এবং সেটার মান সেট কর।
  5. মামা যাবেন (mamaJaben) নামে একটা ভেরিয়েবল লিখ এবং সত্য বা মিথ্যা দিয়ে mamaJaben ভেরিয়েবলের মান সেট কর।
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

দ্বিতীয় দিন: মার্চ ২ (বৃহস্পতিবার)

সময় দিবা: ২ ঘন্টা

if-else: যে জিনিসগুলো শিখতে হবে

  1. একটা শর্ত সাপেক্ষে ডিসিশন কিভাবে নিতে হয়।
  2. if-else এর মধ্যে শর্ত কিভাবে কাজ করে।
  3. দুইটা জিনিসের মধ্যে তুলনা করে কোন একটা জিনিস ছোট হলে এক ধরনের কাজ করবে আবার না হলে অন্য ধরণের কাজ করবে।
  4. একইভাবে বড় তুলনা করা, বড় বা সমান , ছোট বা সমান করে কিছু প্রোগ্রামিং করা
  5. দুইটা শর্তের দুইটাই পূরণ করা, দুইটা শর্তের যেকোন একটা শর্ত পূরণ করলে নতুবা আরেকটা শর্ত।

শেখা শেষ হলে নিচের প্রশ্নগুলো দিয়ে প্রাকটিস করবে

  1. যদি রিক্সা ভাড়া 30 টাকার কম হয়, তাহলে রিক্সায় যাবো না হলে হেঁটে যাবো।
  2. স্যালারি ৫০ হাজার টাকার বেশি হলে বিয়ে করবো, নচেৎ পিছে ঘুরাবো।
  3. বয়স ১৮ এর বেশি বা সমান হলে ভোট দিতে পারবে।
  4. ডেটিংয়ে ৩ ঘন্টার সমান বা কম সময় লাগলে ডেটিং এ যাবো নচেৎ বসে বসে প্রোগ্রামিং শিখবো।
  5. আইসক্রিমের দাম (iceCreamPrice) 50 টাকার কম হলে এবং গরম লাগলে (isHot) আইসক্রিম খাবো, নচেৎ ফিল্টারড পানি খাবো, এমন একটা প্রোগ্রাম লিখ।
  6. তানিমের কাছ থেকে ১৫০ টাকার বেশি অথবা আবিরের কাছ থেকে ১৫০ টাকার বেশি খসাতে পারলে সবাই সমুচা খাবো। নচেৎ খালি পেটে বাড়ি চলে যাবো।
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

তৃতীয় দিন: মার্চ ৩ (শুক্রবার)

সময় দিবা: ৪ ঘন্টা

শুক্রবার ছুটির দিন তাই একটু বেশি সময় দিতে হবে। ২ ঘন্টা নতুন জিনিস পড়বা আর ২ ঘন্টা আগের দুইদিনের জিনিস রিভাইজ দিবা

array: যে জিনিসগুলো শিখতে হবে

  1. একাধিক জিনিস একসাথে রাখার উদাহরণ
  2. array কিভাবে ডিক্লেয়ার করে।
  3. কোন একটা array এর মধ্যে কয়টা উপাদান আছে সেটা কিভাবে জানা যাবে
  4. কিভাবে নতুন উপাদান যোগ করা যায়
  5. কিভাবে কোন একটা নিদৃষ্ট পজিশনের কোন উপাদান আছে সেটা জানা যায়
  6. কোন একটা উপাদান array এর কোন পজিশনে আছে সেটা বের করা
  7. কিভাবে array থেকে সর্বশেষ উপাদানকে কে বের করা যায়

শেখা শেষ হলে নিচের প্রশ্নগুলো দিয়ে প্রাকটিস করবে

  1. তোর বন্ধুদের নাম দিয়ে একটা array ডিক্লেয়ার কর
  2. সেই array তে কয়টা উপাদান আছে সেটা বের কর
  3. তোর বন্ধুদের array এর মধ্যে নতুন একটা বন্ধু যোগ কর
  4. সেই array তে দ্বিতীয় পজিশনে কে আছে সেটা বের কর
  5. তোর বন্ধুদের array এর সবার শেষে যে আছে তাকে বের করে দে
  6. তোর array এর যেকোন একটা উপাদান এর মান দিয়ে সেটার পজিশন বের কর
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

রিভাইজ: রিভাইজ দেয়া কঠিন কিছু না। জাস্ট, ভেরিয়েবল, if-else, array এর প্রশ্নগুলো নিজে নিজে প্রাকটিস করবি। কোথাও আটকে গেলে, সেটা আগে যেখানে কোড লিখছিলি সেটা দেখে নিবি। তাহলেই যা যা শিখছস সেগুলা অনেকদিন মনে থাকবে।

রিভাইজ দেয়ার সময়, নিচের কাজগুলি করবি

  1. যা যা শিখছস সব গুছিয়ে ছোট করে লিখে ফেল। লেখাটা ইম্পর্টান্ট (লিখতে গেলে এখন একটু বেশি সময় লাগলেও, জিনিসগুলা আরো অনেক অনেক বেশি ক্লিয়ার হবে। আরো বেশিদিন মনে থাকবে।)
  2. ভেরিয়েল কি জিনিস কিভাবে ডিক্লেয়ার করতে হয়। উদাহরণসহ ১০ থেকে ২০ লাইনের মধ্যে লিখে ফেল
  3. if-else কিভাবে লেখা হয়। কয়েকটা উদাহরণসহ ২০ থেকে ২৫ লাইনের মধ্যে লিখে ফেল
  4. array কিভাবে লিখতে হয়। কিভাবে উপাদান যোগ, বের করা, পজিশন বের করতে হয়।

while লুপ: মার্চ ৪ (শনিবার)

সময় দিবা: ২ ঘন্টা

while লুপ:যে জিনিসগুলো শিখতে হবে

  1. প্রোগ্রামিং করার সময়, কিভাবে একই কাজ একাধিকবার করা যায়
  2. কিভাবে while লুপ লেখা হয়
  3. while লুপ কিভাবে কাজ করে (এই জিনিসটা তিনবার দেখবি। ভালো করে বুঝার চেষ্টা করবি)।

শেখা শেষ হলে নিচের প্রশ্নগুলো দিয়ে প্রাকটিস করবে

  1. একশবার লিখবি- 'আমি আর কারো প্রোফাইলে গিয়ে বসে থাকবো না'। এখন একশবার লিখার এই প্রোগ্রামটা while লুপ দিয়ে লিখ।
  2. 'দোস, আজকে কিছু খাওয়া'- এই কথাটা while লুপ দিয়ে ১৭ বার লিখ
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

for লুপ: মার্চ ৫ (রবিবার)

সময় দিবা: ২ ঘন্টা

for লুপ:যে জিনিসগুলো শিখতে হবে

  1. কিভাবে for লুপ লেখা হয়
  2. for লুপ কিভাবে কাজ করে (এই জিনিসটাও তিনবার দেখবি। ভালো করে বুঝার চেষ্টা করবি)।
  3. for লুপ দিয়ে কিভাবে কোন একটা array এর সবগুলা উপাদানকে আউটপুট হিসেবে দেখানো যায়

শেখা শেষ হলে নিচের প্রশ্নগুলো দিয়ে প্রাকটিস করবে

  1. for লুপ দিয়ে 1 থেকে 10 পর্যন্ত সবগুলা সংখ্যা আউটপুট হিসেবে দেখা
  2. for লুপ ব্যবহার করে 1 থেকে 10 পর্যন্ত সবগুলা সংখ্যার যোগফল বের কর
  3. যে যে ফ্রেন্ড তোকে খাওয়াবে বলছে কিন্তু এখনো খাওয়াই নাই তাদের নাম দিয়ে বাদাইম্মা (badaymmas) নামে একটা array ডিক্লেয়ার কর। তারপর একটা for লুপ দিয়ে badaymmas নামক array এর সব বাদাইম্মার নাম আউটপুট হিসেবে দেখা।
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

function লুপ: মার্চ ৬ (সোমবার)

সময় দিবা: ২ ঘন্টা

function: যে জিনিসগুলো শিখতে হবে

  1. ফাংশন কী জিনিস। এইটা কি খায় পিন্দে না মাথায় দেয়
  2. ফাংশন কিভাবে ডিক্লেয়ার করতে হয়
  3. ইনপুট প্যারামিটার কি জিনিস, সেটা কিভাবে লিখে
  4. আউটপুট কিভাবে রিটার্ন করা হয়
  5. ফাংশনকে কিভাবে কল করতে হয়
  6. কিভাবে ফাংশনের রিটার্নকে একটা ভেরিয়েবলের মান হিসেবে রাখা যায়

শেখা শেষ হলে নিচের প্রশ্নগুলো দিয়ে প্রাকটিস করবে

  1. দুইটা সংখ্যার যোগ করার একটা ফাংশন লিখো। সেই ফাংশনকে কল করে দুইটা সংখ্যা যোগ কর।
  2. তিনটা সংখ্যা যোগ করার একটা ফাংশন লিখো। সেই ফাংশনকে কল করে তিনটা সংখ্যা যোগ কর।
  3. দুইটা সংখ্যা গুন করার একটা ফাংশন।
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

রিভিশন দেয়ার দিন: মার্চ ৭ (মঙ্গলবার)

সময় দিবা: ৪ ঘন্টা

নতুন নতুন প্রেমের হইলে, ঘন ঘন কথা বলতে হয়। ঘন ঘন ঘন ডেটিং এ যাইতে হয়। যত বেশি ডেটিং তত বেশি রিলেশন পোক্ত। প্রোগ্রামিংও একই রকমের। প্রথম প্রথম শিখতে শুরু করলে, ঘন ঘন রিভিশন দিতে হবে। কয়েকদিন পরে, রিলেশন পার্মানেন্ট হয়ে গেলে, তখন রিভিশন কম দিলেও চলবে।

এখন গত ছয়দিন যা যা শিখছস সেগুলা রিভিশন দিয়ে নে। রিভিশন দেয়ার সময় নিচের কাজগুলা করবি

  1. শুক্রবারে ভেরিয়েবল, if-else এবং array সম্পর্কে সামারি লিখছিলি। এখন সেগুলা পড়ে দেখ।
  2. রিভিশন দেয়ার সময় যে কোডিং প্রাকটিস করছিলি, সেগুলো প্রাকটিস কর
  3. while লুপ বলতে কি শিখছস। সেটার দুইটা উদারহণসহ একটা ছোট সামারি লিখে ফেল।
  4. এখন for লুপ এ কি কি শিখছস সেটাও লিখে ফেল।
  5. ফাংশন কি জিনিস। এইটা কিভাবে লিখে। এবং দুইটা সংখ্যার যোগ করার ফাংশন কিভাবে লিখছস সেটা নিয়ে ৩০ লাইনের একটা সামারি লিখকে ফেল।
  6. তোর সবগুলা সামারি একসাথ করে তোর নিজের জন্য একটা পিডিএফ বানিয়ে রাখ
  7. এই যে সামারিগুলা লিখছস। এইগুলা তোর অর্জন। এইগুলা তোর সম্পত্তি। প্রথম কয়েক সপ্তাহ এইগুলা রিভিশন দিলে, জীবনেও প্রোগ্রামিংয়ের বেসিক জিনিসগুলা ভুলবি না।
এইখানে গিয়ে উপরের সামারিগুলা লিখতে পারো বা অন্যদের সামারি দেখতে পারো।

FB post




Question or Feedback:

যদি লোকসম্মুখে প্রশ্ন জিগ্গেস করতে বা উপদেশ, বকাঝকা, গালাগালি, হুমকি দিতে সংকোচ লাগে তাইলে ইমেইল করে দেন [email protected]