Advanced-Cpp/C2/Polymorphism/Malayalam

From Script | Spoken-Tutorial
Jump to: navigation, search
Time Narration
00:02 Polymorphism in C++ എന്ന സ്പോകെൻ ട്യൂട്ടോറിയലിലേക്ക് സ്വാഗതം.
00:07 ഇവിടെ പഠിക്കുന്നത്.
00:10 പോളിമോര്‍ഫിസം. വെര്‍ചല്‍ ഫങ്ഗ്ഷന്‍.
00:13 ഒരു ഉദാഹരണത്തിൻറെ സഹായത്തോടെ നമുക്ക് ഇത് പഠിക്കാം.
00:16 ഇതിനായി ഉപയോഗിക്കുന്നത്, ഉബുണ്ടു OS version 11.10, g++ കമ്പൈലർ  version 4.6.1
00:27 ആദ്യം നമ്മുക്ക് polymorphism എന്താണെന്ന് നോക്കാം.
00:31 വിവിധ അവസ്ഥയിലേക്ക് മാറാനുള്ള കഴിവാണ് Polymorphism .
00:36 ഒരേ ഫങ്ഗ്ഷനെ പലവിധത്തില്‍ ഉപയോഗിക്കുന്ന ഒരു രീതിയാണ് ഇത്.
00:42 ഇനി നമ്മുക്ക് വെര്‍ചല്‍ ഫങ്ഗ്ഷന്‍ എന്താണെന്ന് നോക്കാം.
00:45 ഒരു ക്ലാസ്സിന്‍റെ മെംബര്‍ ഫങ്ഗ്ഷനെയാണ് Virtual ഫങ്ഗ്ഷന്‍ എന്ന് പറയുന്നത്.
00:49 ഇതിനെ ഇതിന്‍റെ derived classല്‍ ഓവര്‍റൈഡിങ് ചെയ്യുന്നു.
00:53 virtual എന്ന കീവേര്‍ഡ്‌ ഉപയോഗിച്ചാണ്‌ ഇത് ഡിക്ലയര്‍ ചെയ്യുനത്.
00:57 ഒരു virtual ഫങ്ഗ്ഷന്‍ call ചെയ്യുമ്പോൾ run-timeല്‍ ആണ് അത് resolve ചെയുന്നത്.
01:01 virtual functionsന് ഒരു ഉദാഹരണം നോക്കാം.
01:06 എഡിറ്ററിൽ ഞാൻ നേരത്തേ എഴുതിയിട്ടുള്ള കോഡ് ആണ് നമ്മൾ ഇപ്പോൾ കാണുന്നതു.
01:10 നമ്മുടെ ഫയലിൻറെ പേര് virtual.cpp.
01:15 ഈ പ്രോഗ്രാമില്‍
01:16 rectangle, parallelogram, triangle എന്നിവയുടെ area നമ്മള്‍ കണ്ടുപിടിക്കുന്നു.
01:22 iostream എന്നത് ഒരു ഹെഡർ ഫയൽ ആണ്.
01:25 ഇവിടെ നാം STD namespace ഉപയോഗിക്കുന്നു.
01:29 parallelogram എന്നത് നമ്മുടെ ഒരു ക്ലാസ്സാണ്.
01:33 ഇതാണ് base class.
01:35 നമ്മള്‍ ഇവിടെ integer ആയി ഡിക്ലയര്‍ ചെയ്ത വാരിയബിള്‍സാണ് width, height, ar.
01:42 ഇത് protected ആയി ഡിക്ലയര്‍ ചെയ്തിരിക്കുന്നു.
01:45 പബ്ലിക്‌ ആയി ഡിക്ലയര്‍ ചെയ്ത ഒരു ഫങ്ഗ്ഷനാണ് set_values.
01:50 ഇവിടെ നമ്മള്‍ a, b എന്നീ രണ്ട് ആര്‍ഗുമെന്‍റ്സ് കൊടുക്കുന്നു.
01:55 പബ്ലിക്‌ മെംബേര്‍സ്നെ ഉപയോഗിച്ച് പ്രൊട്ടെക്ക്റ്റഡ് മെംബേര്‍സ്നെ ആക്ക്സെസ് ചെയ്യുന്നു.
02:00 ഇതാണ് നമ്മുടെ area എന്ന വെര്‍ചല്‍ ഫങ്ഗ്ഷന്‍.
02:04 ഇവിടെ നമ്മള്‍ parallelogramന്‍റെ ഏരിയ കണ്ടുപിടിക്കുന്നു.
02:07 നമ്മുക്ക് Rectangle എന്ന derived class ഉണ്ട്.
02:12 base class ആയ parallelogramന്‍റെ എല്ലാ സവിശേഷതകളും ഇന്‍ഹെറിറ്റ് ചെയ്യുന്നു.
02:17 area എന്ന ഫങ്ഗ്ഷന്‍ ഓവര്‍റൈഡ് ചെയ്യുന്നു.
02:21 rectangleന്‍റെ ഏരിയ കണ്ടുപിടിക്കുന്നു.
02:23 വാല്യൂ പ്രിന്‍റ് ചെയ്യുന്നു.
02:25 ഇവിടെ നമ്മുക്ക് triangle എന്ന ഒരു derived class ഉണ്ട്.
02:29 ഇതും base class ആയ parallelogramന്‍റെ എല്ലാ സവിശേഷതകളും ഇന്‍ഹെറിറ്റ് ചെയ്യുന്നു.
02:35 വീണ്ടും area എന്ന ഫങ്ഗ്ഷന്‍ ഓവര്‍റൈഡ് ചെയ്യുന്നു.
02:39 triangleന്‍റെ ഏരിയ കണ്ടുപിടിക്കുന്നു.
02:41 വാല്യൂ പ്രിന്‍റ് ചെയ്യുന്നു.
02:43 ഇതാണ് നമ്മുടെ main function.
02:46 ഇവിടെ നമ്മള്‍ parallelogram എന്ന ക്ലാസ്സിന് p എന്നൊരു ഒബ്ജെക്റ്റ് നിര്‍മിക്കുന്നു.
02:52 parallel എന്നൊരു pointer ഇവിടെ നിര്‍മിക്കുന്നു.
02:56 ഇത് parallelogram എന്ന ക്ലാസ്സിന്‍റെ pointer ആണ്.
03:00 ഇതിനെ Base pointer എന്ന് പറയുന്നു.
03:03 ബെയ്സ് ക്ലാസ്സിന്‍റെ പോയിന്‍റെര്‍ ഉപയോഗിച്ച് derived classന്‍റെ ഒബ്ജെക്റ്റ് പോയിന്‍റ്റ് ചെയ്യുന്നു.
03:08 ഇവിടെ നമ്മള്‍ Rectangle, Triangle ക്ലാസ്സിന് ഒബ്ജെക്റ്റ് നിര്‍മിക്കുന്നു.
03:14 Parallelനെ pയുടെ അഡ്രെസ്സിലേക്ക് കൊടുക്കുന്നു.
03:18 ആര്‍ഗുമെന്‍റ്സ് ആയി 3ഉം 2ഉം കൊടുക്കുന്നു.
03:23 area എന്ന ഫങ്ഗ്ഷന്‍ കാൾ ചെയ്യുന്നു.
03:26 ഇവിടെ, Parallel rectന്റെ അഡ്രസിലേക്ക് കൊടുത്തിരിക്കുന്നു.
03:30 Rectangle എന്ന ക്ലാസ്സിന്‍റെ ഒബ്ജെക്റ്റാണ് rect.
03:33 വീണ്ടും നമ്മള്‍ 4 , 5 എന്ന രണ്ട് ആര്‍ഗുമെന്‍റ്സ് കൊടുക്കുന്നു.
03:37 area എന്ന ഫങ്ഗ്ഷന്‍ call ചെയ്യുന്നു.
03:40 Parallel നെ Triangleന്‍റെ അഡ്രസിലേക്ക് കൊടുക്കുന്നു.
03:45 trgl ഇത് triangle എന്ന ക്ലാസ്സിന്‍റെ ഒബ്ജെക്റ്റ് ആണ്.
03:51 ഇവിടെ ആര്‍ഗുമെന്‍റ്സ് ആയി 6, 5 എന്നിവ കൊടുക്കുന്നു.
03:54 area എന്ന ഫങ്ഗ്ഷന്‍ വിളിക്കുന്നു.
03:56 ഇത് ഒരു return സ്റ്റേറ്റ്മെന്‍റൊണ്.
03:59 ഇനി നമ്മുക്ക് പ്രോഗ്രാം എക്സിക്യൂട്ട് ചെയ്യാം.
04:02 നിങ്ങളുടെ കീബോർഡിൽ ഒരേസമയത്ത് Ctrl + Alt + T കീകൾ അമർത്തി ടെർമിനൽ വിൻഡോ തുറക്കുക.
04:09 കമ്പൈൽ ചെയ്യാൻ g++ സ്പേസ് virtual ഡോട്ട് cpp സ്പേസ് ഹൈഫൻ o സ്പേസ് vir എന്ന് എഴുതുക. എൻറ്റർ അമർത്തുക.
04:20  ./vir(ഡോട്ട് സ്ലാഷ് vir) എന്ന് ടൈപ്പ് ചെയ്യുക. എൻറ്റർ അമർത്തുക.
04:24 നമ്മുക്ക് കിട്ടുന്ന ഔട്ട്പുട്ട് :
04:27 Area of parallelogram is 6
04:29 Area of rectangle is 20
04:31 Area of triangle is 15
04:34 നമ്മുക്ക് സ്ലൈഡിലേക്ക് തിരിച്ചുപോകാം.
04:36 ചുരുക്കത്തിൽ ഇവിടെ പഠിച്ചത്,
04:39 പോളിമോര്‍ഫിസം.
04:41 Virtual function, ഉദാഹരണം: Virtual int area
04:45 നിങ്ങൾ ചെയേണ്ടത് rectangle, square, triangle എന്നിവയുടെ perimeter കണ്ടുപിടിക്കുക.
04:50 perimeter നെ virtual function ആയി നിര്‍മിക്കുക.
04:54 ഇവിടെ ലഭ്യമായ വീഡിയോ കാണുക.
04:57 ഇത് സ്പോകെന്‍ ടൂടോറിയല്‍ പ്രൊജക്റ്റ്‌നെ സംഗ്രഹിക്കുന്നു.
05:00 നല്ല ബാന്ഡ് വിഡ്ത്ത് ഇല്ലെങ്കിൽ ഡൌണ്‍ലോഡ് ചെയ്ത് കാണാവുന്നതാണ്.
05:04 സ്പോക്കണ് ട്യൂട്ടോറിയൽ പ്രോജക്ട് ടീം,
05:06 സ്പോക്കണ് ട്യൂട്ടോറിയൽസ് ഉപയോഗിച്ച് വർക്ക്‌ ഷോപ്പുകൾ നടത്തുന്നു.
05:09 ഓൺലൈൻ പരിക്ഷ പാസാകുന്നവർക്ക് സർട്ടിഫിക്കറ്റുകൾ നൽകുന്നു.
05:14 കൂടുതൽ വിവരങ്ങൾക്കായി ഈ വെബ്സൈറ്റ് സന്ദർശിക്കുക.
05:21 സ്പോക്കണ് ട്യൂട്ടോറിയല്‍ പ്രോജക്റ്റ് ടോക്ക് ടു എ ടീച്ചർ എന്ന പ്രൊജക്റ്റിന്റെ ഭാഗമാണ്.
05:25 ഇതിനെ പിന്താങ്ങുന്നത്, നാഷണൽ മിഷൻ ഓണ് എഡ്യൂക്കേഷൻ ത്രൂ ICT, MHRD, ഗവണ്മെന്റ് ഓഫ് ഇന്ത്യ.
05:32 ഈ മിഷൻനെ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ഇവിടെ ലഭ്യമാണ്
05:37 ഈ ട്യൂട്ടോറിയല്‍ വിവർത്തനം ചെയ്തത് ജെയിൻ ജോസഫ്‌. ഞാൻ ദേവി സേനൻ, IIT Bombay, നന്ദി.

Contributors and Content Editors

Devisenan, Janejoseph 15, Pratik kamble