Advanced-Cpp/C2/Classes-And-Objects/Malayalam
From Script | Spoken-Tutorial
Revision as of 17:06, 22 April 2015 by Janejoseph 15 (Talk | contribs)
Time | Narration |
00:01 | സി++ ലെ ക്ലാസുകളും ഒബ്ജേക്ട്കളും എന്ന സ്പോകെൻ ട്യൂട്ടോറിയലിലേക്ക് സ്വാഗതം. |
00:07 | ഈ ട്യൂട്ടോറിയലിൽ നമ്മൾ പഠിക്കുന്നത്. |
00:09 | ക്ലാസ്സ്സ്. |
00:11 | ഒബ്ജെക്ട്സ്. |
00:12 | എൻകാപ്സുലേഷൻ. ഒപ്പം. |
00:14 | ഡാറ്റാ ആബ്സ്റ്റ്റാക്ഷൻ. |
00:16 | ഒരു ഉദാഹരണത്തിൻറെ സഹായത്തോടെ നമുക്ക് ഇത് ചെയ്യാം. |
00:20 | ഈ ടൂട്ടോറിയൽ റെക്കോഡ് ചെയ്യാൻ, ഞാൻ ഉപയോഗിക്കുന്നത്. |
00:23 | ഉബുണ്ടു OS version 11.10 |
00:28 | g++ കമ്പൈലർ version 4.6.1 |
00:32 | ക്ലാസ്സ്സിനെ കുറിച്ചാണ് നമ്മൾ ഇപ്പോൾ കാണുന്നത്. |
00:36 | class എന്ന കീവേഡ് ഉപയോഗിച്ചാണ് ഒരു ക്ലാസ് ഉണ്ടാക്കിയിരിക്കുനത്. |
00:39 | അതിൽ ഡാറ്റയും ഫംഗ്ഷനുകളും അടങ്ങിയിരിക്കുന്നു. |
00:42 | ക്ലാസ്സ് കോഡ്നേയും ഡാറ്റയേയും ബന്ധിപ്പിക്കുന്നു. |
00:45 | ക്ലാസ്സ്ലെ ഡാറ്റയേയും ഫംഗ്ഷനുകളെയും മെംബേർസ് ഓഫ് ക്ലാസ്സ് എന്ന് വിളിക്കുന്നു. |
00:51 | ഇനി ഒബ്ജെക്ട്സ് എന്താണെന് നോക്കാം . |
00:53 | ഒബ്ജെക്ട്സ് എന്നാൽ വെരിയബിൾസ് ആണ്. |
00:55 | അത് ഒരു ക്ലാസ്സ്ൻറെ പകർപ്പാണ് . |
00:58 | ഓരോ ഒബ്ജെക്ട്സ്ന്നും പ്രോപെര്ടീസ്ഉം ബിഹേവ്യർസ്ഉം ഉണ്ട്. |
01:01 | പ്രോപെര്ടീസ്, ഡാറ്റ എലമൻറ്റ്സിലൂടെ നിർവ്വചിച്ചിരിക്കുന്നു കൂടാതെ |
01:06 | മെതഡ്സ് എന്ന് വിളിക്കുന്ന മെംബർ ഫംഗ്ഷൻസ് വഴി ആണ് ബിഹേവ്യർ നിർവചിച്ചിരിക്കുന്നത്. |
01:10 | ഇനി നമ്മുക്ക് ഒരു ക്ലാസ്സ്ൻറെ ഘടന എങ്ങനെയാണ് എന്ന് നോക്കാം. |
01:14 | ഇവിടെ, class എന്നത് ഒരു ക്ലാസ് നിർവചിക്കാൻ ഉപയോഗിക്കുന്ന കീവേഡ് ആണ്. |
01:18 | class name എന്ന് പറയുന്നത് ക്ലാസ്സ്ൻറെ പേരാണ് . |
01:21 | പബ്ലിക്, പ്രൈവറ്റ്, പ്ററ്റെക്റ്റഡ് ഇവ മൂന്നും ആക്സസ് സ്പെസിഫയർകൾ ആകുന്നു. |
01:26 | ഇവിടെ നാം, ഡാറ്റ മെംബേർസ്നേയും മെംബർ ഫംഗ്ഷൻസിനേയും പബ്ലിക്, പ്രൈവറ്റ്, പ്ററ്റെക്റ്റഡ് ആയി നിർവചിച്ചിരിക്കുന്നു. |
01:34 | ഇങ്ങനെയാണ് നമ്മൾ ഒരു ക്ലാസ്സ് അടക്കുന്നത്. |
01:37 | ഇനി നമുക്ക് ഒരു ഉദാഹരണം നോക്കാം |
01:39 | എഡിറ്ററിൽ ഞാൻ മുൻപുതന്നെ എഴുതി വച്ചിട്ടുള കോഡ് ആണ് നമ്മൾ ഇപ്പോൾ കാണുന്നതു . |
01:44 | നമ്മുടെ ഫയലിൻറെ പേര് class-obj.cpp ആണ് |
01:50 | ഈ ഉദാഹരണത്തിൽ ക്ലാസ് ഉപയോഗിച്ച് ഒരു സമചതുരത്തിന്റെ വിസ്തീർണ്ണo കണക്കുകൂട്ടുന്നു. |
01:56 | ഞാൻ കോഡ് വിശദീകരിക്കാം. |
01:58 | iostream എന്നത് ഒരു ഹെഡർ ഫയൽ ആണ്. |
02:02 | ഇവിടെ നാം STD namespace ഉപയോഗിക്കുന്നു. |
02:06 | ഇതു square എന്ന പേരുള്ള ഒരു ക്ലാസ്സിൻറെ ഡെക്ലറേഷൻനാണ് |
02:10 | ഇവിടെ ഞാൻ ആക്സസ് സ്പെസിഫയർ ഡിക്ലെർ ചെയ്തട്ടില്ല. |
02:14 | അതായത് അത് ഡിഫോള്ട്ട് ആയി പ്രൈവറ്റ് ആണ് |
02:17 | അതിനാൽ വേരിയബിൾ "X" square ക്ലാസ്ൻറെ പ്രൈവറ്റ് അംഗമാണ്. |
02:22 | ഇത് ഒരു പബ്ലിക് സ്പെസിഫയർ ആണ് |
02:25 | area ഒരു പബ്ലിക് ഫംഗ്ഷൻ ആണ്. |
02:28 | ഇങ്ങനെയാണ് നമ്മൾ ഒരു ക്ലാസ്സ് അടക്കുന്നത്. |
02:31 | ഇനി നമുക്ക് ആക്സസ് സ്പെസിഫയറുകളെ കൂടുതൽ അറിയാൻ നമ്മളുടെ സ്ലൈഡുകളില്ലേക്ക് വീണ്ടും പോകാം. |
02:36 | പബ്ലിക് സ്പെസിഫയർ |
02:39 | പബ്ലിക് സ്പെസിഫയർ ക്ലാസിന് പുറത്ത് നിന്നും ഡാറ്റ ഉപയോഗിക്കുന്നത് അനുവദിക്കുന്നു. |
02:44 | ഒരു പബ്ലിക് മെംബർനെ പ്രോഗ്രാമിൽ എവിടെയും ഉപയോഗിക്കാൻ കഴിയും |
02:49 | പ്രൈവറ്റ് സ്പെസിഫയർ |
02:51 | പ്രൈവറ്റ് ആയി ഡിക്ലെർ ചെയ്തിട്ടുള്ള മെംബേർസിനെ ക്ലാസിനു പുറത്തുനിന്ന് ഉപയോഗിക്കാനോ ആക്സസ് ചെയാനോ കഴിയില്ല. |
02:57 | പ്രൈവറ്റ് മെംബേർസ്നെ ക്ലാസ്സിലെ അംഗങ്ങൾക്ക് മാത്രമേ ഉപയോഗിക്കാൻ കഴിയൂ. |
03:03 | പ്രൊറ്റെക്റ്റഡ് സ്പെസിഫയർ |
03:05 | പ്രൊറ്റെക്റ്റഡ് മെംബേർസ്ന് ക്ലാസ്സ്ന് പുറത്തു നിന്ന് ആക്സസ് ചെയ്യാൻ കഴിയില്ല. |
03:10 | ഒരു ഡറൈവ്ഡ് ക്ലാസ്സ്ന് പ്ററ്റെക്റ്റഡ് മെംബേർസ്നെ ആക്സസ്സ് ചെയ്യാനാവും. |
03:13 | നമ്മുക്ക് പ്രോഗ്രാംലേക്ക് തിരിച്ച് പോകാം. |
03:16 | ഇവിടെ കാണുന്ന സ്റ്റേറ്റ്മെൻറ്ിൽ ക്ലാസ്സിൻറെ പേരും |
03:21 | സ്കോപ്പ് റെസലൂഷൻ ഓപ്പറേറ്ററും ഫംഗ്ഷൻൻറെ പേരും ആണുളത് |
03:25 | ഈ ഓപ്പറേറ്റർ തീർച്ചയായും ഉപയോഗിക്കണം. |
03:27 | അതു വ്യക്തമാക്കുന്നത് ഏരിയ എന്ന ഫംഗ്ഷൻ ഗ്ലോബൽ ഫംഗ്ഷൻന്നല്ല എന്നാണ് |
03:33 | അതു square എന്ന ക്ലാസ് ലെ ഒരു മെംബർ ഫംഗ്ഷൻ ആണ് |
03:36 | ഇവിടെ നാം int a എന്ന ഒരു ആർഗ്യമൻറ്റ് കൊടുക്കുന്നു. |
03:40 | ഇനി നമുക്ക് സ്കോപ്പ് റെസലൂഷൻ ഓപ്പറേറ്റർനെ കുറിച്ച് കൂടുതൽ അറിയാൻ സ്ലൈഡുകളില്ലേക്ക് മടങ്ങി വരാം . |
03:46 | മറച്ചുവച്ചിരിക്കുന്ന ഡാറ്റ ആക്സസ് ചെയ്യാൻ ഇത് ഉപയോഗിക്കുന്നു. |
03:49 | ഒരേ പേരിലുള്ള വേരിയബിൾ അല്ലെങ്കിൽ ഫംഗ്ഷൻസ് ആക്സസ് ചെയ്യാൻ നമ്മൾ സ്കോപ്പ് റെസലൂഷൻ ഓപ്പറേറ്റർ :: ഉപയോഗിക്കുന്നു. |
03:56 | ലോക്കൽ വേരിയബിളും ഗ്ലോബൽ വേരിയബിളും ഒരേ പേരുള്ളവയാണെന്ന് കരുതുക |
04:01 | ലോക്കൽ വേരിയബിളിനാണ് മുൻഗണന ലഭിക്കുക. |
04:05 | (സ്കോപ്പ് റെസലൂഷൻ ഓപ്പറേറ്റർ.) :: ഉപയോഗിച്ച് നമ്മുക്ക് ഗ്ലോബൽ വേരിയബിൾ ആക്സസ് ചെയ്യാൻ കഴിയും . |
04:10 | ഇനി നമ്മുക്ക് പ്രോഗ്രാമിലേക്ക് പോകാം. |
04:12 | ഇവിടെ "a" യുടെ മൂല്യം "X" ൽ സൂക്ഷിച്ചിരിക്കുന്നു. |
04:17 | അതിന് ശേഷം സമചതുരത്തിന്റെ വിസ്തീർണ്ണo റിട്ടേണ് ചെയുന്നു. |
04:20 | ഇവിടെ "X" ഒരു പ്രൈവറ്റ് മെംബറാണ്. |
04:22 | പ്രൈവറ്റ് പരാമീറ്റർ ആക്സസ് ചെയ്യാൻ നമ്മൾ “a” എന്ന പബ്ലിക് മെംബർ ഉപയോഗിച്ചു. |
04:27 | പ്രൈവറ്റ് അംഗങ്ങൾ എപ്പോഴും അദൃശ്യമായിരിക്കും. |
04:30 | ഇത് നമ്മുടെ മെയിൻ ഫംഗ്ഷൻ ആണ്. |
04:33 | square എന്ന ക്ലാസ്സിന്റെ ഒബ്ജെക്റ്റാണ് sqr. |
04:37 | ഇങ്ങനെയാണ് നമ്മൾ ഒരു ഒബ്ജെക്റ്റ് ഉണ്ടാക്കുന്നത്. |
04:40 | ക്ലാസ്ൻറെ പേരിന് ശേഷം ഒബ്ജെക്റ്റിൻറെ പേര്. |
04:43 | ഇവിടെ നമ്മൾ sqr എന്ന ഒബ്ജെക്റ്റും .( ഡോട്ട്) ഓപ്പറേറ്ററും ഉപയോഗിച്ച് area എന്ന ഫംഗ്ഷനെ വിളിക്കുന്നു |
04:50 | പിന്നീട് നമ്മൾ "4" എന്ന ഒരു ആർഗ്യമൻറ്റ് കൊടുക്കുന്നു. |
04:53 | "X" ൻറെ വില "4" ആയി നിശ്ചയിക്കുന്നു. |
04:57 | ഇത് ഒരു റിട്ടേണ് സ്റ്റേറ്റ്മൻറ്റ് ആണ്. |
04:59 | തുടർന് സേവ് ക്ലിക്ക് ചെയ്യുക |
05:00 | ഇനി നമ്മുക്ക് പ്രോഗ്രാം എക്സിക്യൂട്ട് ചെയ്യാം. |
05:03 | നിങ്ങളുടെ കീബോർഡ് ഒരേസമയത്ത് Ctrl + Alt + T എന്നീ കീകൾ അമർത്തി ടെർമിനൽ വിൻഡോ തുറക്കുക. |
05:11 | കമ്പൈൽ ചെയ്യാൻ g++ സ്പേസ് class ഹൈഫൻ obj ഡോട്ട് cpp സ്പേസ് ഹൈഫൻ o സ്പേസ് class എന്ന് എഴുതുക. |
05:20 | എൻറ്റർ അമർത്തുക. |
05:22 | ./class(ഡോട്ട് സ്ലാഷ് ക്ലാസ്) എന്ന് ടൈപ്പ് ചെയ്യുക. |
05:24 | എൻറ്റർ അമർത്തുക. |
05:25 | നമ്മുക്ക് കിട്ടുന്ന ഔട്ട്പുട്ട് : |
05:28 | area of the square is 16 എന്നായിരിക്കും |
05:30 | നമുക്ക് പ്രോഗ്രമിലേക്ക് തിരിച്ചു പോകാം. |
05:35 | ഇതുവരെ നമ്മൾ കണ്ടത്. |
05:37 | ഒരു ക്ലാസ്സിൽ ഡാറ്റയും ഫംഗ്ഷൻസും ഒന്നിച്ചു ചേർത്തിരിക്കുന്നു. |
05:41 | ക്ലാസ്സ് ഒരു ഏകകം ആണ്. |
05:44 | ആ ക്ലാസ്സിൽ ഉപയോഗിച്ചിട്ടുള്ള എല്ലാ ഡാറ്റയും ഫംഗ്ഷൻസും അതിൽ ഒന്നിച്ചു ചേർത്തിരിക്കുന്നു |
05:49 | ഇതാണ് എൻകാപ്സുലേഷൻ. |
05:53 | പിന്നീട് നമ്മൾ കണ്ടത് പ്രൈവറ്റ് അതുപോലെതന്നെ പബ്ലിക് മെംബേർസ് ഉള്ള ക്ലാസ്സാണ് |
05:59 | പ്രൈവറ്റ് ഡാറ്റ എപ്പോഴും മറഞ്ഞിരിക്കുന്നു |
06:02 | അതു ക്ലാസ്സിന് പുറത്തുനിന്നും ആക്സസ് ചെയ്യാൻ കഴിയില്ല. |
06:05 | ഇതിനെ ഡാറ്റ ആബ്സ്റ്റ്റാക്ഷൻ എന്ന് പറയുന്നു. |
06:09 | ഇൻറ്റർഫേസ് നമ്മുക്ക് കാണാം പക്ഷേ ഇതിൻറെ പ്രവർത്തനം മറച്ച് വച്ചിരിക്കുന്നു. |
06:14 | ഈ ടൂട്ടോറിയൽ ഇവിടെ അവസാനിക്കുന്നു. |
06:17 | നമ്മുക്ക് സ്ലൈഡ്ിലേക്ക് മടങ്ങി പോകാം. |
06:19 | ചുരുക്കത്തിൽ |
06:20 | ഈ ട്യൂട്ടോറിയലിൽ നമ്മൾ പഠിച്ചത്, |
06:23 | എൻകാപ്സുലേഷൻ |
06:24 | ഡാറ്റാ അബ്സ്ട്രാക്ഷൻ |
06:25 | പ്രൈവറ്റ് മെംബർസ് |
06:27 | int x; |
06:29 | പബ്ലിക് ഫംഗ്ഷൻസ് |
06:30 | int area(int); |
06:32 | ക്ലാസുകൾ |
06:33 | class square |
06:35 | ഒബ്ജക്റ്റ് സൃഷ്ടിക്കാൻ |
06:37 | square sqr; |
06:39 | ഒരു ഫംഗ്ഷൻ വിളിക്കാൻ ഒബ്ജെക്റ്റ് sqr.area(); ഉപയോഗിക്കുന്നു. |
06:43 | നിങ്ങൾ ചെയേണ്ടത് |
06:44 | തന്നിരിക്കുന്ന സർക്കിൾിൻറെ ചുറ്റളവ് കണ്ടെത്താൻ ഒരു പ്രോഗ്രാം എഴുതുക. |
06:49 | താഴെ കാണിച്ചിരിക്കുന്ന ലിങ്കിൽ ലഭ്യമായ വീഡിയോ കാണുക. |
06:52 | നല്ല ബാന്ഡ് വിഡ്ത്ത് ഇല്ലെങ്കിൽ, നിങ്ങൾക്ക് അതു ഡൌണ്ലോഡ് ചെയ്ത് കാണാം. |
06:55 | നല്ല ബാന്ഡ് വിഡ്ത്ത് ഇല്ലെങ്കിൽ, നിങ്ങൾക്ക് അതു ഡൌണ്ലോഡ് ചെയ്ത് കാണാം. |
07:00 | സ്പോക്കണ് ട്യൂട്ടോറിയൽ പ്രോജക്ട് ടീം, |
07:02 | സ്പോക്കണ് ട്യൂട്ടോറിയൽസ് ഉപയോഗിച്ച് വർക്ക് ഷോപ്സ് നടത്തിവരുന്നു. |
07:05 | ഓൺലൈൻ പരിക്ഷ പാസാകുന്നവർക്ക് സർട്ടിഫിക്കറ്റുകൾ നൽകുന്നു. |
07:09 | contact@spoken-tutorial.org |
07:16 | സ്പോക്കണ് ട്യൂട്ടോറിയല് പ്രോജക്റ്റ് ടോക്ക് ടു എ ടീച്ചർ എന്ന പദ്ധതിയുടെ ഭാഗമാണ്. |
07:20 | ഇതിനെ പിന്തുണയ്ക്കുന്നത്, നാഷണൽ മിഷൻ ഓണ് എഡ്യൂക്കേഷൻ ത്രൂ ICT, MHRD, ഗവണ്മെന്റ് ഓഫ് ഇന്ത്യ. |
07:26 | ഈ മിഷൻനെ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ചുവടെ കാണിച്ചിരിക്കുന്നു ലിങ്കിൽ ലഭ്യമാണ് |
07:31 | ഇത് ജെയിൻ ജോസഫ്. ഞങ്ങളോടൊപ്പം ചേർനതിന് നന്ദി. |