Difference between revisions of "Advanced-Cpp/C2/Abstract-Class/Bengali"
From Script | Spoken-Tutorial
(5 intermediate revisions by the same user not shown) | |||
Line 11: | Line 11: | ||
|- | |- | ||
| 00:08 | | 00:08 | ||
− | | এই টিউটোরিয়ালে | + | | এই টিউটোরিয়ালে শিখব |
|- | |- | ||
| 00:10 | | 00:10 | ||
− | | '''Abstract | + | | '''Abstract Class''', '''Pure virtual function''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 00:13 | | 00:13 | ||
− | | | + | | এটি উদাহরণের সাহায্যে করব। |
|- | |- | ||
Line 39: | Line 35: | ||
|- | |- | ||
| 00:27 | | 00:27 | ||
− | | | + | | '''Abstract Class''' এর ভূমিকা দিয়ে শুরু করি। |
|- | |- | ||
| 00:31 | | 00:31 | ||
− | | '''Abstract Class''' | + | | '''Abstract Class''' একটি '''base''' ক্লাস। |
|- | |- | ||
Line 50: | Line 46: | ||
|- | |- | ||
| 00:39 | | 00:39 | ||
− | | | + | | '''Abstract Class''' এর ইনস্ট্যান্স তৈরী করতে পারি না। |
|- | |- | ||
Line 58: | Line 54: | ||
|- | |- | ||
| 00:45 | | 00:45 | ||
− | | | + | | এটি বডি ছাড়া একটি ফাংশন। |
|- | |- | ||
Line 66: | Line 62: | ||
|- | |- | ||
| 00:52 | | 00:52 | ||
− | |এটি নিম্নরূপে ঘোষিত | + | |এটি নিম্নরূপে ঘোষিত |
|- | |- | ||
Line 74: | Line 70: | ||
|- | |- | ||
| 01:00 | | 01:00 | ||
− | |একটি ডিরাইভ | + | |একটি ডিরাইভ ফাংশন ওভাররাইড করা আবশ্যক। |
|- | |- | ||
| 01:04 | | 01:04 | ||
− | | | + | | না হলে কম্পাইলার এরর দেবে। |
|- | |- | ||
| 01:07 | | 01:07 | ||
− | | | + | | এটি ডিরাইভ ক্লাসের উপর নির্ভরশীল। |
|- | |- | ||
Line 90: | Line 86: | ||
|- | |- | ||
| 01:13 | | 01:13 | ||
− | |আমি | + | |আমি এডিটরে কোড লিখেছি। |
|- | |- | ||
Line 98: | Line 94: | ||
|- | |- | ||
| 01:18 | | 01:18 | ||
− | | | + | | আমাদের ফাইলের নাম '''abstract''' ডট '''cpp''' |
|- | |- | ||
Line 110: | Line 106: | ||
|- | |- | ||
| 01:30 | | 01:30 | ||
− | | '''iostream''' হিসেবে এটি | + | | '''iostream''' হিসেবে এটি হেডার ফাইল। |
|- | |- | ||
| 01:33 | | 01:33 | ||
− | | | + | | '''std namespace''' ব্যবহার করছি। |
|- | |- | ||
| 01:36 | | 01:36 | ||
− | | | + | | ক্লাসের ঘোষনাকরণ হল '''abstractinterface''' |
|- | |- | ||
| 01:41 | | 01:41 | ||
− | | | + | | এরপর '''public''' রয়েছে। |
|- | |- | ||
| 01:44 | | 01:44 | ||
− | | এখানে | + | | এখানে ভার্চুয়াল ফাংশন ঘোষিত করেছি যা হল '''"numbers"''' |
|- | |- | ||
| 01:49 | | 01:49 | ||
− | | | + | | এর মান হল '''0''' |
|- | |- | ||
| 01:51 | | 01:51 | ||
− | | | + | | এরপর নন-ভার্চুয়াল ফাংশন রয়েছে |
|- | |- | ||
| 01:55 | | 01:55 | ||
− | | | + | | দুটি ইন্টিজার ভ্যারিয়েবল '''a''' এবং '''b''' রয়েছে। |
|- | |- | ||
| 01:59 | | 01:59 | ||
− | | এখানে | + | | এখানে '''input''' ফাংশনে |
|- | |- | ||
| 02:01 | | 02:01 | ||
− | | | + | | আমরা সংখ্যা '''a''' এবং '''b''' গ্রহণ করি। |
|- | |- | ||
| 02:05 | | 02:05 | ||
− | | এটি | + | | এটি '''add''' নামে একটি ডিরাইভড ক্লাস। |
|- | |- | ||
Line 158: | Line 154: | ||
|- | |- | ||
| 02:14 | | 02:14 | ||
− | | এখানে | + | | এখানে '''"numbers"''' ফাংশন ওভাররাইড করি। |
|- | |- | ||
| 02:18 | | 02:18 | ||
− | | | + | | এখানে '''a''' এবং '''b''' যোগ করে |
|- | |- | ||
| 02:21 | | 02:21 | ||
− | | | + | | ফলাফল ইন্টিজার ভ্যারিয়েবল '''"sum"''' এ সংরক্ষণ করি। |
|- | |- | ||
| 02:25 | | 02:25 | ||
− | | | + | | ফলাফল প্রিন্ট করি। |
|- | |- | ||
| 02:27 | | 02:27 | ||
− | | | + | | এরপর '''sub''' নামে ডিরাইভ ক্লাস রয়েছে। |
|- | |- | ||
| 02:31 | | 02:31 | ||
− | | | + | |এটি বেস ক্লাস '''"abstractinterface"''' এর বৈশিষ্ট্য আহরণ করে। |
|- | |- | ||
| 02:35 | | 02:35 | ||
− | | এখানে, | + | | এখানে, '''"numbers"''' ফাংশন ওভাররাইড করি |
|- | |- | ||
| 02:39 | | 02:39 | ||
− | | | + | | এখানে '''a''' এবং '''b''' এর তফাৎ নিরূপণ করে |
|- | |- | ||
| 02:43 | | 02:43 | ||
− | | | + | | ডিফারেন্স প্রিন্ট করি। |
|- | |- | ||
Line 198: | Line 194: | ||
|- | |- | ||
| 02:48 | | 02:48 | ||
− | | এখানে | + | | এখানে '''"add"''' ক্লাসের '''obj1''' হিসাবে অবজেক্ট তৈরী করি। |
|- | |- | ||
| 02:53 | | 02:53 | ||
− | | | + | |এখানে উভয় ফাংশন '''obj1''' অবজেক্ট ব্যবহার করে কল করি। |
|- | |- | ||
| 02:59 | | 02:59 | ||
− | | | + | | এখানে '''"sub"''' ক্লাসের '''obj2''' হিসাবে অবজেক্ট তৈরী করি। |
|- | |- | ||
| 03:04 | | 03:04 | ||
− | | | + | | উভয় ফাংশন '''obj2''' ব্যবহার করে কল করি |
|- | |- | ||
| 03:08 | | 03:08 | ||
− | | | + | | এটি রিটার্ন স্টেটমেন্ট। |
|- | |- | ||
Line 222: | Line 218: | ||
|- | |- | ||
| 03:13 | | 03:13 | ||
− | | | + | | কীবোর্ডে '''Ctrl, Alt''' এবং '''T''' একসাথে টিপে টার্মিনাল উইন্ডো খুলুন। |
|- | |- | ||
Line 230: | Line 226: | ||
|- | |- | ||
| 03:31 | | 03:31 | ||
− | | '''Enter''' টিপুন। | + | | '''Enter''' টিপুন। লিখুন, ডট স্ল্যাশ '''abs''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
Line 242: | Line 234: | ||
|- | |- | ||
| 03:36 | | 03:36 | ||
− | | | + | | '''Enter the numbers''' |
|- | |- | ||
Line 254: | Line 246: | ||
|- | |- | ||
| 03:46 | | 03:46 | ||
− | | | + | | '''Enter the numbers''' |
|- | |- | ||
Line 274: | Line 266: | ||
|- | |- | ||
| 04:01 | | 04:01 | ||
− | | সংক্ষেপে | + | | সংক্ষেপে |
|- | |- | ||
| 04:03 | | 04:03 | ||
− | |এই টিউটোরিয়ালে শিখেছি | + | |এই টিউটোরিয়ালে শিখেছি '''Abstract Class''' যেমন '''class abstractinterface''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 04:09 | | 04:09 | ||
− | | '''Pure Virtual Function''' | + | | '''Pure Virtual Function''' যেমন '''virtual void numbers()=0;''' |
|- | |- | ||
| 04:14 | | 04:14 | ||
− | | এখন, একটি ''' | + | | এখন, একটি '''"student"''' ক্লাস এবং |
|- | |- | ||
| 04:17 | | 04:17 | ||
− | | | + | | '''"Info"''' ফাংশন তৈরী করুন। |
|- | |- | ||
| 04:20 | | 04:20 | ||
− | | ফাংশনে শিক্ষার্থীর নাম এবং | + | | ফাংশনে শিক্ষার্থীর নাম এবং রোল নম্বর লিখুন। |
|- | |- | ||
| 04:25 | | 04:25 | ||
− | | | + | | ক্লাস '''marks''' এবং '''sports''' তৈরী করুন। |
|- | |- | ||
| 04:29 | | 04:29 | ||
− | |'''marks''' এ, তিনটি বিষয়ের মার্কস | + | |'''marks''' এ, তিনটি বিষয়ের মার্কস এবং |
|- | |- | ||
Line 318: | Line 306: | ||
|- | |- | ||
| 04:38 | | 04:38 | ||
− | |তারপর | + | |তারপর '''result''' ক্লাস তৈরী করুন। |
|- | |- | ||
| 04:41 | | 04:41 | ||
− | |এখানে, শিক্ষার্থীর নাম, | + | |এখানে, শিক্ষার্থীর নাম, রোল নম্বর এবং মার্কসের সমষ্টি প্রদর্শিত হয়। |
|- | |- | ||
Line 350: | Line 338: | ||
|- | |- | ||
| 05:14 | | 05:14 | ||
− | | স্পোকেন টিউটোরিয়াল '''Talk to a Teacher''' প্রকল্পের অংশবিশেষ। | + | | স্পোকেন টিউটোরিয়াল প্রকল্প '''Talk to a Teacher''' প্রকল্পের অংশবিশেষ। |
|- | |- | ||
| 05:18 | | 05:18 | ||
− | |এটি ভারত সরকারের '''ICT, MHRD''' এর জাতীয় | + | |এটি ভারত সরকারের '''ICT, MHRD''' এর জাতীয় শিক্ষা মিশন দ্বারা সমর্থিত। |
|- | |- | ||
Line 362: | Line 350: | ||
|- | |- | ||
| 05:30 | | 05:30 | ||
− | | আমি কৌশিক দত্ত টিউটোরিয়ালটি অনুবাদ করেছি। | + | | আমি কৌশিক দত্ত এই টিউটোরিয়ালটি অনুবাদ করেছি। |
Latest revision as of 15:41, 23 February 2017
Time | Narration |
00:01 | C++ এ Abstract Class এবং Pure Virtual Function এর টিউটোরিয়ালে আপনাদের স্বাগত। |
00:08 | এই টিউটোরিয়ালে শিখব |
00:10 | Abstract Class, Pure virtual function |
00:13 | এটি উদাহরণের সাহায্যে করব। |
00:16 | টিউটোরিয়ালটি রেকর্ড করতে |
00:19 | উবুন্টু OS সংস্করণ 11.10 |
00:23 | g++ কম্পাইলার সংস্করণ 4.6.1 ব্যবহার করছি। |
00:27 | Abstract Class এর ভূমিকা দিয়ে শুরু করি। |
00:31 | Abstract Class একটি base ক্লাস। |
00:35 | এতে অন্তত একটি Pure Virtual Function থাকে। |
00:39 | Abstract Class এর ইনস্ট্যান্স তৈরী করতে পারি না। |
00:43 | এখন Pure Virtual Function দেখি। |
00:45 | এটি বডি ছাড়া একটি ফাংশন। |
00:49 | এটি বেস ক্লাসে সংজ্ঞায়িত হয়নি। |
00:52 | এটি নিম্নরূপে ঘোষিত |
00:54 | virtual void virtualfunname()=0; |
01:00 | একটি ডিরাইভ ফাংশন ওভাররাইড করা আবশ্যক। |
01:04 | না হলে কম্পাইলার এরর দেবে। |
01:07 | এটি ডিরাইভ ক্লাসের উপর নির্ভরশীল। |
01:11 | এখন একটি উদাহরণ দেখি। |
01:13 | আমি এডিটরে কোড লিখেছি। |
01:16 | আমি এটি খুলবো। |
01:18 | আমাদের ফাইলের নাম abstract ডট cpp |
01:22 | এই উদাহরণে দুটি সংখ্যার যোগফল এবং বিয়োগফল জড়িত থাকে। |
01:28 | এখন কোড দেখি। |
01:30 | iostream হিসেবে এটি হেডার ফাইল। |
01:33 | std namespace ব্যবহার করছি। |
01:36 | ক্লাসের ঘোষনাকরণ হল abstractinterface |
01:41 | এরপর public রয়েছে। |
01:44 | এখানে ভার্চুয়াল ফাংশন ঘোষিত করেছি যা হল "numbers" |
01:49 | এর মান হল 0 |
01:51 | এরপর নন-ভার্চুয়াল ফাংশন রয়েছে |
01:55 | দুটি ইন্টিজার ভ্যারিয়েবল a এবং b রয়েছে। |
01:59 | এখানে input ফাংশনে |
02:01 | আমরা সংখ্যা a এবং b গ্রহণ করি। |
02:05 | এটি add নামে একটি ডিরাইভড ক্লাস। |
02:09 | এটি বেস ক্লাস "abstractinterface" এর বৈশিষ্ট্য আহরণ করে। |
02:14 | এখানে "numbers" ফাংশন ওভাররাইড করি। |
02:18 | এখানে a এবং b যোগ করে |
02:21 | ফলাফল ইন্টিজার ভ্যারিয়েবল "sum" এ সংরক্ষণ করি। |
02:25 | ফলাফল প্রিন্ট করি। |
02:27 | এরপর sub নামে ডিরাইভ ক্লাস রয়েছে। |
02:31 | এটি বেস ক্লাস "abstractinterface" এর বৈশিষ্ট্য আহরণ করে। |
02:35 | এখানে, "numbers" ফাংশন ওভাররাইড করি |
02:39 | এখানে a এবং b এর তফাৎ নিরূপণ করে |
02:43 | ডিফারেন্স প্রিন্ট করি। |
02:45 | এটি আমাদের main ফাংশন। |
02:48 | এখানে "add" ক্লাসের obj1 হিসাবে অবজেক্ট তৈরী করি। |
02:53 | এখানে উভয় ফাংশন obj1 অবজেক্ট ব্যবহার করে কল করি। |
02:59 | এখানে "sub" ক্লাসের obj2 হিসাবে অবজেক্ট তৈরী করি। |
03:04 | উভয় ফাংশন obj2 ব্যবহার করে কল করি |
03:08 | এটি রিটার্ন স্টেটমেন্ট। |
03:10 | এখন প্রোগ্রাম এক্সিকিউট করি। |
03:13 | কীবোর্ডে Ctrl, Alt এবং T একসাথে টিপে টার্মিনাল উইন্ডো খুলুন। |
03:21 | কম্পাইল করতে লিখুন, g++ স্পেস abstract ডট cpp স্পেস -o স্পেস abs |
03:31 | Enter টিপুন। লিখুন, ডট স্ল্যাশ abs |
03:34 | Enter টিপুন। |
03:36 | Enter the numbers |
03:38 | আমি 9 এবং 4 লিখব। |
03:42 | প্রদর্শিত আউটপুট হল Sum is 13 |
03:46 | Enter the numbers |
03:49 | আমি 8 এবং 3 লিখব। |
03:52 | প্রদর্শিত আউটপুট হল diff is 5 |
03:56 | আমরা টিউটোরিয়ালের শেষে চলে এসেছি। |
03:59 | স্লাইডে ফিরে আসি। |
04:01 | সংক্ষেপে |
04:03 | এই টিউটোরিয়ালে শিখেছি Abstract Class যেমন class abstractinterface |
04:09 | Pure Virtual Function যেমন virtual void numbers()=0; |
04:14 | এখন, একটি "student" ক্লাস এবং |
04:17 | "Info" ফাংশন তৈরী করুন। |
04:20 | ফাংশনে শিক্ষার্থীর নাম এবং রোল নম্বর লিখুন। |
04:25 | ক্লাস marks এবং sports তৈরী করুন। |
04:29 | marks এ, তিনটি বিষয়ের মার্কস এবং |
04:32 | sports এ, খেলায় প্রাপ্ত মার্কস গ্রহণ করুন। |
04:35 | মার্কসের সমষ্টি গণনা করুন। |
04:38 | তারপর result ক্লাস তৈরী করুন। |
04:41 | এখানে, শিক্ষার্থীর নাম, রোল নম্বর এবং মার্কসের সমষ্টি প্রদর্শিত হয়। |
04:47 | এই লিঙ্কে উপলব্ধ ভিডিওটি দেখুন। |
04:50 | এটি প্রকল্পকে সারসংক্ষেপে বোঝায়। |
04:53 | ভাল ব্যান্ডউইডথ না থাকলে ভিডিওটি ডাউনলোড করে দেখুন। |
04:58 | স্পোকেন টিউটোরিয়াল প্রকল্প দল কর্মশালার আয়োজন করে। |
05:03 | অনলাইন পরীক্ষা পাস করলে প্রশংসাপত্র দেয়। |
05:07 | বিস্তারিত তথ্যের জন্য contact@spoken-tutorial.org তে ইমেল করুন। |
05:14 | স্পোকেন টিউটোরিয়াল প্রকল্প Talk to a Teacher প্রকল্পের অংশবিশেষ। |
05:18 | এটি ভারত সরকারের ICT, MHRD এর জাতীয় শিক্ষা মিশন দ্বারা সমর্থিত। |
05:25 | এই বিষয়ে বিস্তারিত তথ্য এই লিঙ্কে প্রাপ্তিসাধ্য। |
05:30 | আমি কৌশিক দত্ত এই টিউটোরিয়ালটি অনুবাদ করেছি। |