প্রোগ্রামিং শেখার তৃতীয় সপ্তাহ

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

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

প্রথম সপ্তাহের স্টাডিপ্ল্যান:এইখানে

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

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

এইটা প্রাথমিক স্টেজের শেষ সপ্তাহ। এরপরে শুরু হবে প্রাকটিস। এই সপ্তাহে জিনিসগুলা বেশি কঠিন কিছু না। রবং বিভিন্ন জিনিস সম্পর্কে ধারণা নেয়া।

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


অবজেক্ট: মার্চ ১৫ (বুধবার)

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

অবজেক্ট: যে জিনিসগুলো শিখতে হবে

  1. প্রোগ্রামিংয়ে অবজেক্ট কি জিনিস
  2. অবজেক্টের প্রপার্টি কি জিনিস
  3. কিভাবে অবজেক্ট ডিক্লেয়ার করা যায়
  4. কিভাবে অবজেক্টের প্রপার্টি যোগ করা হয়
  5. একাধিক প্রোপার্টি যোগ করা
  6. প্রোপার্টির মান চেইঞ্জ করা
  7. প্রপার্টির মান ভেরিয়েবলে রেখে সেটা আউটপুট হিসেবে দেখা

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

  1. আশেপাশে খুঁজে যেকোন একটা অবজেক্টের নাম লিখ
  2. তোর নিজের নাম দিয়ে একটা অবজেক্ট ডিক্লেয়ার কর।
  3. তোর নিজের নামে ডিক্লেয়ার করা অবজেক্টে সেখানে তিনটা প্রপার্টি লিখবি। যার মধ্যে একটা প্রপার্টির নাম হবে জান পাখি (jaanPakhi) এবং সেই প্রপার্টির মান হবে তোর প্রিয়জনের নাম।
  4. ধর কিছুদিন পরে তোর আগের রিলেশন ভেঙ্গে নতুন আরেকজনের সাথে সিস্টেম হয়ে গেছে। তাই তুই তোর jaanPakhi প্রপার্টির মান চেইঞ্জ করে নতুন নাম সেট করে ফেল। যাতে তোর নতুন প্রিয়জন আগেরজনের নাম না জেনে যায়।
  5. কাক (crow) নাম একটা অবজেক্ট ডিক্লেয়ার কর। সেখানে যেকোন দুইটা প্রপার্টি যোগ কর
  6. একটা ভেরিয়েবল ডিক্লেয়ার কর। সেই ভেরিয়েবলের মান হবে, তোর কাক অবজেক্টের যেকোন একটা প্রপার্টি এর মান।
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

ক্লাস: মার্চ ১৬ (বৃহস্পতিবার)

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

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

  1. প্রোগ্রামিংয়ে ক্লাস কি জিনিস
  2. যদি অবজেক্ট দিয়েই কাজ হয় তাহলে ক্লাস লাগবে কেন
  3. ক্লাস কিভাবে ডিক্লেয়ার করা হয়।
  4. কিভাবে ক্লাস থেকে অবজেক্ট বানানো হয়
  5. ক্লাসের মধ্যে মেথড বা ফাংশন দিয়ে কি করা হয়
  6. কিভাবে মেথড ডিক্লেয়ার করে

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

  1. পাখি (Bird) নামে একটা ক্লাস ডিক্লেয়ার কর
  2. তোর Bird নামক ক্লাস থেকে জানপাখি(jaanPakhi) নামে একটা অবজেক্ট বানা
  3. স্টুডেন্ট (Student) নামে একটা ক্লাস ডিক্লেয়ার কর। সেখানে রোল নং(rollNumber), নাম (name) এবং রেজাল্ট(result) নামে কমপক্ষে তিনটা প্রপার্টি রাখবি।
  4. স্টুডেন্ট ক্লাস থেকে তোর নামে একটা অবজেক্ট বানা
  5. তোর স্টুডেন্ট ক্লাস থেকে তোর ফ্রেন্ডের নামে আরেকটা অবজেক্ট বানা
  6. এখন student ক্লাসে রেজাল্ট দে (getResult) নামে একটা মেথড যোগ কর। যেটা result প্রপার্টির মান আউটপুট হিসেবে দিয়ে দিবে
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং(OOP) ও রিভিশন: মার্চ ১৭ (শুক্রবার)

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

শুক্রবার ছুটির দিন তাই একটু বেশি সময় দিবা। কোন ডেটিং-ফেটিং রাখবি না। সলিড ৩ ঘন্টা নতুন জিনিস প্রোগ্রামিং শিখবি আর ২ ঘন্টা আগের দুইদিনের জিনিস রিভাইজ দিবা।

অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং: যে জিনিসগুলো শিখতে হবে

  1. অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং কি জিনিস
  2. Inheritance কি জিনিস
  3. কিভাবে inheritance ব্যবহার করে একাধিক ক্লাসের মধ্যে কিছু কমন এবং কিছু আনকমন বৈশিষ্ট্য রাখা যায়
  4. Encapsulation সম্পর্কে প্রাথমিক ধারণা। এইটা কি জিনিস সেটা গুগল করে জানলেই চলবে
  5. Polymorphism সম্পর্কে প্রাথমিক ধারণা। এইটা কি জিনিস সেটা গুগল করে জানলেই চলবে

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

  1. অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং কি জিনিস
  2. Inheritance কি জিনিস
  3. সহজ করে লিখ Encapsulation কি জিনিস।
  4. Polymorphism সম্পর্কে গুগলে সার্চ দিলে কি পাওয়া যায়।
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

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

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

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

প্রোগ্রামিংয়ের হাবিজাবি জিনিসপত্র: মার্চ ১৮ (শনিবার)

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

প্রোগ্রামিংয়ের হাবিজাবি জিনিসপত্র:যে জিনিসগুলো শিখতে হবে

  1. টাইম কমপ্লেক্সিটি সম্পর্কে হালকা ধারণা। কোথাও খুঁজে না পাইলে এইখানে দেখ
  2. Recursive Function সম্পর্কে খুচরা ধারণা। কোথাও খুঁজে না পাইলে এইখানে দেখ
  3. প্রোগ্রামিং করার সময় কমেন্ট করার প্রয়োজনীয়তা কি। কোথাও খুঁজে না পাইলে এইখানে দেখ
  4. What is software bug লিখে গুগুলে সার্চ দিলে কি বুঝা যায়
  5. www.stackoverflow.com নামে একটা ওয়েবসাইট কি। সেখানে কি পাওয়া যায় এই বিষয়ে ধারণা নাও

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

  1. সহজ করে লিখ- টাইম কমপ্লেক্সিটি কি জিনিস।
  2. রিকারসন ফাংশন কি জিনিস।
  3. প্রোগ্রামিং ল্যাঙ্গুয়েজের সিস্টেম অনুসারে একটা কমেন্ট কর।
  4. What is software bug লিখে গুগুলে সার্চ দিলে কি দেখায়
  5. www.stackoverflow.com ওয়েবসাইট প্রোগ্রামাররা গিয়ে কি করে
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

ডাটাবেইজ বেসিক: মার্চ ১৯ (রবিবার)

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

ডাটাবেইজ বেসিক:যে জিনিসগুলো শিখতে হবে

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

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

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

সোর্স কন্ট্রোল: মার্চ ২০ (সোমবার)

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

সোর্স কন্ট্রোল: যে জিনিসগুলো শিখতে হবে

  1. সোর্স কন্ট্রোল বা ভার্সন কন্ট্রোল কি জিনিস
  2. গিটহাব কি জিনিস। না জানলে এই ভিডিও দেখ
  3. গিটহাবে একাউন্ট না থাকলে এইখানে গিয়ে একাউণ্ট খোল
  4. আরো বেশি জানতে চাইলে এই ভিডিও দেখতে পারো।

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

  1. সোর্স কন্ট্রোল (source control) থাকার দরকার কি।
  2. গিটহাবে একাউন্ট এর লিংক দাও। যদি আগে থেকে একাউন্ট খোলা না থাকে। তাহলে নতুন একাউন্ট খুলে নিচে তোমার একাউন্টের লিংক দাও।
এইখানে গিয়ে উপরের প্রশ্নগুলার উত্তর লিখতে পারো বা অন্যদের উত্তর দেখতে পারো।

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

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

প্রথম প্রথম অচেনা রাস্তা দিয়ে যাওয়া শুরু করলে, রাস্তা ভুল করে অন্য রাস্তা দিয়ে চলে যাওয়াটা খুবই স্বাভাবিক। তবে চার-পাঁচবার একই রাস্তা দিয়ে যাওয়া আসা করলে, আর ভুল হয় না। প্রোগ্রামিং জিনিসটাও একই রকমের। প্রথম প্রথম বুঝতে পারবে না। কঠিন লাগবে। ভুল করে বসবে। কিন্তু বেশ কয়েকবার রিভিশন দিলে- সব পানির সোজা হয়ে যাবে।

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

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

FB post




Question or Feedback:

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