Advanced-Cpp/C2/Polymorphism/Kannada

From Script | Spoken-Tutorial
Revision as of 16:53, 21 November 2014 by Vasudeva ahitanal (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
00:02 C++ ನಲ್ಲಿಯ Polymorphism (ಪಾಲಿಮಾರ್ಫಿಸಮ್) ಎನ್ನುವುದರ ಕುರಿತು ಇರುವ ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್ ಗೆ ಸ್ವಾಗತ.
00:07 ಈ ಟ್ಯುಟೋರಿಯಲ್ ನಲ್ಲಿ,
00:10 ಪಾಲಿಮಾರ್ಫಿಸಮ್ ಹಾಗೂ
00:11 ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ ಗಳ ಬಗೆಗೆ ನಾವು ಕಲಿಯುವೆವು,
00:13 ನಾವು ಇದನ್ನು ಒಂದು ಉದಾಹರಣೆಯ ಮೂಲಕ ಮಾಡುವೆವು.
00:16 ಈ ಟ್ಯುಟೋರಿಯಲ್ ಅನ್ನು ರೆಕಾರ್ಡ್ ಮಾಡಲು,Ubuntuಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ನ 11.10 ಆವೃತ್ತಿ ಮತ್ತು g++ compiler ನ 4.6.1 ನೇ ಆವೃತ್ತಿಯನ್ನು ಬಳಸುತ್ತಿದ್ದೇನೆ.
00:27 ನಾವು ಪಾಲಿಮಾರ್ಫಿಸಮ್ ಎನ್ನುವುದರ ಪರಿಚಯದೊಂದಿಗೆ ಆರಂಭಿಸೋಣ.
00:31 ಪಾಲಿಮಾರ್ಫಿಸಮ್ ಎಂದರೆ ವಿಭಿನ್ನ ರೂಪಗಳನ್ನು ಪಡೆಯಬಲ್ಲ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿರುವುದು.
00:36 ಇದು, ಒಂದೇ ಹೆಸರನ್ನು ಹೊಂದಿರುವ ಫಂಕ್ಶನ್ ಅನ್ನು ವಿವಿಧ ರೀತಿಯಲ್ಲಿ ಬಳಸುವ ಯಾಂತ್ರಿಕರಚನೆಯಾಗಿದೆ.
00:42 ನಾವು ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ ಗಳನ್ನು ನೋಡೋಣ.
00:45 ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ ಎನ್ನುವುದು ಕ್ಲಾಸ್ ನ ಮೆಂಬರ್ ಫಂಕ್ಷನ್ ಆಗಿದೆ.
00:49 ಇದನ್ನು ಅದರದೇ ಡಿರೈವ್ಡ್ ಕ್ಲಾಸ್ ನಲ್ಲಿ ಓವರ್ ರೈಡ್ ಮಾಡಲು ಸಾಧ್ಯವಿದೆ.
00:53 ವರ್ಚುವಲ್ ಎನ್ನುವ ಕೀವರ್ಡನೊಂದಿಗೆ ಇದನ್ನು ಡಿಕ್ಲೇರ್ ಮಾಡಲಾಗುತ್ತದೆ.
00:57 ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ ಕಾಲ್ ಅನ್ನು ರನ್-ಟೈಮ್ ನಲ್ಲಿ ಬಗೆಹರಿಸಲಾಗುತ್ತದೆ.
01:01 ಈಗ, ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ಸ್ ಎನ್ನುವುದರ ಒಂದು ಉದಾಹರಣೆಯನ್ನು ನಾವು ನೋಡೋಣ.
01:06 ನಾನು ಕೋಡನ್ನು ಈಗಾಗಲೇ ಬರೆದಿದ್ದೇನೆ.
01:08 ನಾವು ಅದನ್ನು ಅನುಸರಿಸೋಣ.
01:10 ನಮ್ಮ ಫೈಲ್ ನ ಹೆಸರು virtual.cpp ಆಗಿದೆ ಎಂಬುದನ್ನು ಗಮನಿಸಿರಿ.
01:15 ಈ ಪ್ರೊಗ್ರಾಂನಲ್ಲಿ:
01:16 ಆಯತ, ಸಮಾಂತರ ಚತುರ್ಭುಜ ಹಾಗೂ ತ್ರಿಕೋನಗಳ ವಿಸ್ತೀರ್ಣವನ್ನು ನಾವು ಕಂಡುಹಿಡಿಯುವೆವು.
01:22 iostream ಎನ್ನುವುದು ನಮ್ಮ ಹೆಡರ್ ಫೈಲ್ ಆಗಿದೆ.
01:25 ಇಲ್ಲಿ ನಾವು std namespace ಅನ್ನು ಬಳಸುತ್ತಿದ್ದೆವೆ.
01:29 ನಾವು Parallelogram ಎನ್ನುವ ಕ್ಲಾಸ್ ಒಂದನ್ನು ಹೊಂದಿದ್ದೇವೆ.
01:33 ಇದು ಬೇಸ್ ಕ್ಲಾಸ್ ಆಗಿದೆ.
01:35 ಇದರಲ್ಲಿ width, height ಮತ್ತು ar ಎನ್ನುವ ಇಂಟೀಜರ್ ವೇರಿಯಬಲ್ ಗಳನ್ನು ಡಿಕ್ಲೇರ್ ಮಾಡಿದ್ದೇವೆ.
01:42 ಇವುಗಳನ್ನು ಪ್ರೊಟೆಕ್ಟೆಡ್ ಎಂದು ಡಿಕ್ಲೇರ್ ಮಾಡಲಾಗಿದೆ.
01:45 ನಂತರ set_values ಎನ್ನುವ ಪಬ್ಲಿಕ್ ಫಂಕ್ಷನ್ ಪಡೆದಿದ್ದೇವೆ.
01:50 ಇಲ್ಲಿ 'a' ಮತ್ತು 'b' ಎನ್ನುವ ಎರಡು ಆರ್ಗ್ಯುಮೆಂಟ್ ಗಳನ್ನು ಪಾಸ್ ಮಾಡಿದ್ದೇವೆ.
01:55 ನಂತರ ನಾವು ಪಬ್ಲಿಕ್ ಮೆಂಬರ್ ಗಳನ್ನು ಬಳಸಿ ಪ್ರೊಟೆಕ್ಟೆಡ್ ಮೆಂಬರ್ ಗಳನ್ನು ಆಕ್ಸೆಸ್ ಮಾಡುತ್ತೇವೆ.
02:00 ಇದು area ಎನ್ನುವ ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ ಆಗಿದೆ.
02:04 ಇಲ್ಲಿ ನಾವು ಪ್ಯಾರಲೆಲೊಗ್ರ್ಯಾಮ್ ನ ವಿಸ್ತೀರ್ಣವನ್ನು ಕಂಡುಹಿಡಿಯುತ್ತೇವೆ.
02:07 ಆಮೇಲೆ, ನಾವು Rectangle ಎನ್ನುವ ಡಿರೈವ್ಡ್ ಕ್ಲಾಸ್ ನ್ನು ಪಡೆದಿದ್ದೇವೆ.
02:12 ಇದು, Parallelogram ಎನ್ನುವ ಬೇಸ್ ಕ್ಲಾಸ್ ನ ಗುಣಗಳನ್ನು ಇನ್ಹೆರಿಟ್ ಮಾಡುತ್ತದೆ.
02:17 area ಎನ್ನುವ ಫಂಕ್ಷನ್ ಅನ್ನು ಇಲ್ಲಿ ನಾವು ಓವರ್ ರೈಡ್ ಮಾಡುತ್ತೇವೆ.
02:21 ನಂತರ ನಾವು ಆಯತಾಕಾರದ ವಿಸ್ತೀರ್ಣವನ್ನು ಕಂಡುಹಿಡಿಯುತ್ತೇವೆ.
02:23 ಮತ್ತು ಅದನ್ನು ಪ್ರಿಂಟ್ ಮಾಡುತ್ತೇವೆ.
02:25 ಇಲ್ಲಿ ನಾವು triangle ಎನ್ನುವ ಇನ್ನೊಂದು ಡಿರೈವ್ಡ್ ಕ್ಲಾಸ್ ನ್ನು ಪಡೆದಿದ್ದೇವೆ.
02:29 ಇದೂ ಸಹ ಬೇಸ್ ಕ್ಲಾಸ್ ಆಗಿರುವ Parallelogram ನ ಗುಣಗಳನ್ನು ಇನ್ಹೆರಿಟ್ ಮಾಡುತ್ತದೆ.
02:35 ಇಲ್ಲಿ area ಎನ್ನುವ ಫಂಕ್ಷನ್ ಅನ್ನು ನಾವು ಮತ್ತೊಮ್ಮೆ ಓವರ್ ರೈಡ್ ಮಾಡುತ್ತೇವೆ.
02:39 ನಂತರ ನಾವು ತ್ರಿಕೋನದ ವಿಸ್ತೀರ್ಣವನ್ನು ಕಂಡುಹಿಡಿಯುತ್ತೇವೆ.
02:41 ಮತ್ತು ಅದನ್ನು ಪ್ರಿಂಟ್ ಮಾಡುತ್ತೇವೆ.
02:43 ಇದು ನಮ್ಮ main ಎನ್ನುವ ಫಂಕ್ಶನ್ ಆಗಿದೆ.
02:46 ಇಲ್ಲಿ, Parallelogram ಎನ್ನುವ ಕ್ಲಾಸ್ ನ p ಎನ್ನುವ ಒಬ್ಜೆಕ್ಟ್ ಅನ್ನು ನಾವು ಕ್ರಿಯೇಟ್ ಮಾಡುತ್ತೇವೆ.
02:52 parallel ಎನ್ನುವ pointer ಅನ್ನು ಇಲ್ಲಿ ನಾವು ನೋಡಬಹುದು.
02:56 ಇದು Parallelogram ಎನ್ನುವ ಕ್ಲಾಸ್ ನ pointer ಆಗಿದೆ.
03:00 ಇದನ್ನು ಬೇಸ್ ಪಾಯಿಂಟರ್ ಎಂದು ಕರೆಯುತ್ತಾರೆ.
03:03 ಬೇಸ್ ಕ್ಲಾಸ್ ನ ಪಾಯಿಂಟರ್, ಡಿರೈವ್ಡ್ ಕ್ಲಾಸ್ ನ ಒಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಪಾಯಿಂಟ್ ಮಾಡಲು ಸಾಧ್ಯವಿದೆ.
03:08 ಇಲ್ಲಿ Rectangle ಮತ್ತು Triangle ಕ್ಲಾಸ್ ನ ಒಬ್ಜೆಕ್ಟ್ ಗಳನ್ನು ನಾವು ಕ್ರಿಯೇಟ್ ಮಾಡುತ್ತೇವೆ.
03:14 ಇಲ್ಲಿ parallel ಅನ್ನು p ಎನ್ನುವುದರ ಅಡ್ಡ್ರೆಸ್ ಗೆ ನಿಗದಿಪಡಿಸಲಾಗಿದೆ.
03:18 ಆಮೇಲೆ ನಾವು 3 ಮತ್ತು 2,ಇವುಗಳನ್ನು ಆರ್ಗ್ಯುಮೆಂಟ್ ಗಳೆಂದು ಪಾಸ್ ಮಾಡುತ್ತೇವೆ.
03:23 ಆಮೇಲೆ area ಎನ್ನುವ ಫಂಕ್ಶನ್ ಅನ್ನು ಕಾಲ್ ಮಾಡುತ್ತೇವೆ.
03:26 ಇಲ್ಲಿ, parallel ಅನ್ನು rect ಎನ್ನುವುದರ ಅಡ್ಡ್ರೆಸ್ ಗೆ ನಿಗದಿಪಡಿಸಲಾಗಿದೆ.
03:30 rect ಎನ್ನುವುದು Rectangle ಎನ್ನುವ ಕ್ಲಾಸ್ ನ ಒಬ್ಜೆಕ್ಟ್ ಆಗಿದೆ.
03:33 ಮತ್ತೊಮ್ಮೆ ನಾವು 4 ಮತ್ತು 5, ಇವುಗಳನ್ನು ಆರ್ಗ್ಯುಮೆಂಟ್ ಗಳೆಂದು ಪಾಸ್ ಮಾಡುತ್ತೇವೆ.
03:37 ಮತ್ತು area ಎನ್ನುವ ಫಂಕ್ಶನ್ ಅನ್ನು ಕಾಲ್ ಮಾಡುತ್ತೇವೆ.
03:40 ಮತ್ತು ಕೊನೆಯದಾಗಿ parallel ಅನ್ನು Triangle ಎನ್ನುವುದರ ಅಡ್ಡ್ರೆಸ್ ಗೆ ನಿಗದಿಪಡಿಸಲಾಗಿದೆ.
03:45 trgl,
03:47 ಇದು Triangle ಎನ್ನುವ ಕ್ಲಾಸ್ ನ ಒಬ್ಜೆಕ್ಟ್ ಆಗಿದೆ.
03:51 ಇಲ್ಲಿ ನಾವು 6 ಮತ್ತು 5, ಇವುಗಳನ್ನು ಆರ್ಗ್ಯುಮೆಂಟ್ ಗಳೆಂದು ಪಾಸ್ ಮಾಡುತ್ತೇವೆ.
03:54 ಮತ್ತು area ಎನ್ನುವ ಫಂಕ್ಶನ್ ಅನ್ನು ಕಾಲ್ ಮಾಡುತ್ತೇವೆ.
03:56 ಇದು ನಮ್ಮ return ಸ್ಟೇಟಮೆಂಟ್ ಆಗಿದೆ.
03:59 ಈಗ ನಾವು ಈ ಪ್ರೋಗ್ರಾಮನ್ನು ಎಕ್ಸೀಕ್ಯೂಟ್ ಮಾಡೋಣ.
04:02 ನಿಮ್ಮ ಕೀಬೋರ್ಡ್ ಮೇಲಿನ Ctrl, Alt ಮತ್ತು T ಎನ್ನುವ ಕೀಗಳನ್ನು ಒಟ್ಟಿಗೇ ಒತ್ತಿ ಟರ್ಮಿನಲ್ ಅನ್ನು ಓಪನ್ ಮಾಡಿರಿ.
04:09 ಕಂಪೈಲ್ ಮಾಡಲು,
04:10 g++ space virtual.cpp space hyphen o space vir ಎಂದು

ಟೈಪ್ ಮಾಡಿರಿ. Enter ಅನ್ನು ಒತ್ತಿರಿ.

04:20 ./ vir (ಡಾಟ್ ಸ್ಲ್ಯಾಷ್ vir) ಎಂದು ಟೈಪ್ ಮಾಡಿರಿ. Enter ಅನ್ನು ಒತ್ತಿರಿ.
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:37 ಈ ಟ್ಯುಟೋರಿಯಲ್ ನಲ್ಲಿ,
04:39 ಪಾಲಿಮಾರ್ಫಿಸಮ್,
04:41 ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ ಉದಾ. virtual int area(), ಇವುಗಳನ್ನು ನಾವು ಕಲಿತೆವು.
04:45 ಒಂದು ಅಸೈನ್ಮೆಂಟ್ ಎಂದು,
04:46 ಆಯತಾಕಾರ, ಚೌಕೋನ ಮತ್ತು ತ್ರಿಕೋನಗಳ ಸುತ್ತಳತೆಯನ್ನು ಕಂಡುಹಿಡಿಯಿರಿ.
04:50 perimeter ಎನ್ನುವ ವರ್ಚುವಲ್ ಫಂಕ್ಷನ್ ಅನ್ನು ಕ್ರಿಯೇಟ್ ಮಾಡಿರಿ.
04:54 ಕೆಳಗೆ ತೋರಿಸಿದ ಲಿಂಕ್ನಲ್ಲಿ ಲಭ್ಯವಿರುವ ವೀಡಿಯೋವನ್ನು ನೋಡಿರಿ. http://spoken-tutorial.org/What_is_a_Spoken_Tutorial
04:57 ಅದು ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್ ಪ್ರಕಲ್ಪವನ್ನು ಸಾರಾಂಶಗೊಳಿಸುತ್ತದೆ.
05:00 ನೀವು ಉತ್ತಮವಾದ ಬ್ಯಾಂಡ್ವಿಡ್ತ್ ಅನ್ನು ಹೊಂದಿಲ್ಲದಿದ್ದರೆ, ಡೌನ್ಲೋಡ್ ಮಾಡಿ ನೋಡಬಹುದು.
05:04 ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್ ಪ್ರಕಲ್ಪದ ತಂಡವು,
05:06 ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್ಸ್ ಬಳಸಿಕೊಂಡು ಕಾರ್ಯಶಾಲೆಗಳನ್ನು ನಡೆಸುತ್ತದೆ.
05:09 ಹಾಗೂ ಆನ್-ಲೈನ್ ಪರೀಕ್ಷೆಯಲ್ಲಿ ಉತ್ತೀರ್ಣರಾದವರಿಗೆ ಪ್ರಮಾಣಪತ್ರವನ್ನು ಕೊಡುತ್ತದೆ.
05:14 ಹೆಚ್ಚಿನ ವಿವರಗಳಿಗೆ ದಯವಿಟ್ಟು contact [at] spoken hyphen tutorial dot org ಈ ಈ-ಮೇಲ್ ಗೆ ಬರೆಯಿರಿ.
05:21 ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್ ಪ್ರಕಲ್ಪವು ‘ಟಾಕ್ ಟು ಎ ಟೀಚರ್’ ಎನ್ನುವ ಪ್ರಕಲ್ಪದ ಒಂದು ಭಾಗವಾಗಿದೆ.
05:25 ಈ ಟ್ಯುಟೋರಿಯಲ್ ರಾಷ್ಟ್ರೀಯ ಸಾಕ್ಷರತಾ ಮಿಶನ್, ICT , MHRD, ಭಾರತ ಸರ್ಕಾರದ ಆಧಾರವನ್ನು ಹೊಂದಿದೆ.
05:32 ಇದರ ಬಗ್ಗೆ ಹೆಚ್ಚಿನ ಮಾಹಿತಿಯು ಕೆಳಗೆ ತೋರಿಸಿದ ಲಿಂಕ್ ಗಳ ಮೇಲೆ ಲಭ್ಯವಿದೆ. http://spoken-tutorial.org/NMEICT-Intro
05:37 ಇದರ ಅನುವಾದಕಿ ಐ ಐ ಟಿ ಬಾಂಬೆ ಯಿಂದ ಸಂಧ್ಯಾ ಪುಣೇಕರ್ ಹಾಗೂ ಪ್ರವಾಚಕ ಐ ಐ ಟಿ ಬಾಂಬೆ ಯಿಂದ ವಾಸುದೇವ. ಧನ್ಯವಾದಗಳು.

Contributors and Content Editors

PoojaMoolya, Vasudeva ahitanal