Object Oriented Programming ( OOP )
ගොඩක් කාලෙකින් මේ පැත්තෙ එන්න බැරි වුන නිසා සමහර අයට හිතෙන්න ඇති මේ කුප්පියත් web එකේ තියෙන අනිත් sinhala කුප්පි වගේම නැවතිලා ගියා කියලා.. අපොයි නෑ.. කවදාවත්ම එහෙම වෙන්න දෙන්නෙත් නෑ.. වැඩ හැමදේම තියෙන විදියට balance කරන්න ඕන නිසා පොඩ්ඩක් පරක්කු වෙන්න පුළුවන්.. ඒත් කවදාවත් මේ වැඩේ නවතින්නනම් දෙන්නෙ නෑ.. මොකද මේ කුප්පියෙ ප්රධානම අරමුණ ලංකාවේ විශ්වවිද්යාල වල ඉන්න පිටින් course කරන්න තරම් වත්කමක් නැති ළමයින්ට අසරණ වෙන්න නොදී එයාලට අවශ්ය දැනුම තේරෙන සිංහලෙන් ලබා දෙන එක.. ඒක නිසා මේ වැඩේ කවදාහරි නවතිනවනම් නවතින්නෙ campus වල දැනට තියෙන computer science syllabus එකෙන් සැලකිය යුතු මට්ටමකට basic ටික හරි ලබා දුන්නට පස්සෙයි.. ඒක නිසා වැඩේ නැවතුනා කියලා හිතුන අයට ආපහු කියන්නම් මේක අතෑරලා යන්නෙ නෑ කවදාවත්...
OOP කියන්නෙ මොකක්ද?
ගොඩක් අය හිතාගෙන ඉන්නෙ මේ OOP කියන්නෙ java වගේ language එකක් කියලා.. ඒත් මේක language එකක් නෙවෙයි.. මුලින්ම අපි ඒක තේරුම් ගමු.. එහෙනම් මොකක්ද මේ Object Oriented Programming, OOP කියලා කියන්නේ?? ඇත්තටම මේක Concept එකක්.. Programming ලේසි කරගන්න හදාගත්තු concept එකක් තමයි මේ OOP කියලා කියන්නෙ.. ඉතින් මුලින්ම කියන්නම් මේක industry එකේ ගොඩක්ම use වෙන concept එකක් නිසා මුල ඉඳල හොඳටම තේරුම් ගත්තොතින් job එකකට යන කාලෙකටත් ඒක ගොඩක් වටීවි..
ඇයි අපිට OOP අවශ්ය වුනේ?
අපි දැන් කිව්වනේ මේ OOP කියන්නෙ concept එකක් කියලා.. එහෙනම් අපි බලමු මෙහෙම concept එකක් අපේ programming field එකට ආවෙ ඇයි කියලා.. නිකමට හිතලා බලන්නකො අපි දැනට කොහොමද program එකක් ගහන්නෙ කියලා... ඇත්තටම අපි දැනට කරන්නෙ එකම file එකක අවශ්ය හැමදේම ලියාගෙන ලියාගෙන යන එක නේද? දැනටනම් අපිට කිසිම ප්රශ්නයක් ඇවිත් නෑ.. ඒ අපි ලොකු ලොකු program ලියලා නැති නිසයි.. අපි මේ දේ හරියටම තේරුම් ගන්න පොඩි උදාහරණයක් ගමු..
අපි හිතමු අපිට තොග කඩේකට software එකක් ගහන්න දුන්නා කියලා.. දැන් එතකොට අපිට අපේ program එක ලියපු file එකේ coding පේලි කීයක් විතර එයිද?? නිකමට හිතන්න පේළි 80 000 ක් විතර කියලා.. (ඊට වැඩියි හොඳද.. )
දැන් මේ code පේළි 80 000 මැද එක error එකක් ආවොතින් අපිට ඒක හොයාගන්න කොච්චර වෙලාවක් යයිද? කොච්චර අමාරු වෙයිද?
මෙහෙම හිතන්නකෝ.. අපි ඔන්න කඩේ software එක කොහොම හරි කරලා හදලා ඉවරයි.. දැනට මේ software එකෙන් කඩේ තියෙන stock එක ගැන details තියාගන්නෙ නෑ කියලත් හිතන්නකෝ.. ටික දවසකින් මේ කඩේ අයිතිකාරයට හිතෙනවා ඒකත් system එකට දාගන්න ඕන කියලා.. දැන් මේ code පේළි 80 000 ක program එකක අවශ්ය තැන් වෙනස් කර කර අළුතින් කොටසක් එකතු කරන්න කොච්චර ගේමක් දෙන්න වෙයිද??
මෙන්න මේ නිසා OOP concept එක එන්න කලින් computer system හදන්න ගිය වියදමට වඩා දහස් ගුණයකින් යනවලු ඒවා නඩත්තු කරන්න.. ඉතින් ඒ වගේ system එකක් දුවන එක කොච්චර පාඩු වෙයිද කියලා තේරෙනවනේ.. මේ හේතුව නිසා තමයි නඩත්තුව පහසු කරවන අළුත් ක්රමයක් ඒ කාලෙ ඕන වෙලා තියෙන්නෙ.. අන්න ඒ අවශ්යතාවය උඩ තමයි ලෝකෙට OOP කියලා concept එකක් එන්නෙ..
කොහොමද OOP ලේසි වෙන්නෙ??
මෙන්න මෙහෙම සිද්ධියක් තමයි OOP වලදි වෙන්නෙ.. අර software එකම හදනවා.. හැබැයි එකම file එකක නෙවෙයි දැන් අපි හදන්නෙ.. මුලින්ම software එකේ කොටස් කොටස් වෙන් කරගන්නවා.. වෙන් කරගෙන එක කොටසක් එක file එකක ගානෙ කලින් software එකම කොටස් ගොඩකට හදලා අන්තිමට ඒක එකතු කරන එක තමයි මේකෙදි කරන්නෙ..
මෙතනදි තව දෙයක් අපි කරනවා.. ඒ තමයි අපිට තියෙන එක වගේ වැඩ කොටස් වල පොදු ආකෘතියක් මුලින් එක කොටසක් විදියට හදාගන්නවා.. ඊට පස්සෙ අපි අවශ්ය වෙලාවට ඒ කොටස අරගෙන modify කරලා අපිට අවශ්ය දේ හදාගන්නවා.. මේ ක්රමේ නිසා අපිට programming වල එකම වගේ code නැවත නැවත යෙදෙන එක නවත්තලා අවශ්ය දේවල් එකම තැනක තියලා නැවත නැවත භාවිතා කිරීමේ හැකියාව ලැබෙනවා..
ඉතින් දැන් කෙනෙක්ට හිතෙන්න පුළුවන් මෙහෙම කරා කියලා කොහොමද නඩත්තුව ලේසි වෙන්නෙ කියලා නේද? එහෙනම් නිකමට හිතලා බලන්නකො කලින් අමාරු වුනේ ඇයි කියලා.. කලින් අමාරු වුනේ එකම file එකක තියෙන නිසා තියෙන කොටසක් වෙනස් කරන්න හරි අළුතින් කොටසක් එකතු කරන්න හරි ගියාම ලොකූ code එකක් පුරාම ඔලුව මහන්සි කරන්න වුන නිසා නේද? දැන් කොහොමද තියෙන්නෙ? දැන් පොඩි පොඩි කොටස් විදියට තියෙන්නෙ.. ඉතින් දැන් කොටසක් වෙනස් කරන්න වුනොත් අදාළ කොටස විතරක් වෙනස් කරගන්න පුළුවන් ලේසියෙන්ම.. ඊටත් අමතරව අළුතින් කොටසක් එකතු කරන්න ඕන වුනොත් දැනට තියෙන ටිකම ආකෘතියක් විදියට අරගෙන ලේසියෙන්ම modify කරලා අළුත් වැඩ කෑලි අනිත් තැන් වලට බලපෑමක් නොවෙන්න එකතු කරන්න පුළුවන්.. දැන් ලේසියි කියලා හිතෙනවා නේ... :-p
තේරෙනවා මෙහෙම කිව්වා කියලා OOP ගැන ලොකු IDEA එකක් එන්නෙ නෑ කියලා.. ඒත් කලින් තිබුනට වඩා චූටිම චූටි IDEA එකක් හරි ආවානම් ඒ හොඳටම ඇති.. ඒක නිසා උඩ කියපු හැමදේම තේරුනේ නෑ කියලා නම් දුක් වෙන්න එපා.. පොඩි IDEA එකක් ගත්තනම් අපිට දැනට ඇති.. මොකද අපි OOP වල කොටසින් කොටස ඉස්සරහට හොඳටම ඉගෙන ගන්න නිසා දැන් ඔක්කොම තේරුම් ගන්න ඕනත් නෑ.. එහෙනම් අපි ඉක්මනටම OOP වල කොටස් එක්ක එකතු වෙමු.. ආ.... අපි මේ concept එක ගැන ඉස්සරහට ඉගෙන ගන්නෙ java language එක use කරලා.. ඉතින් දැන් හිතන්න එපා OOP කියන්නෙ java වල කොටසක් කියලා හොඳද.. අපිට ලේසි නිසා අපි java use කරලා OOP ඉගෙන ගන්නෙ.. එහෙනම් ඉක්මනටම හමුවෙමුකෝ..
මතුසම්බන්ධයි...
a good work :)
ReplyDeleteමම ආයෙත් කියනවා ඔය කියන ඒවා සුප්රියට තේරෙනවා දිගටම ලියන්න අපි කියවනවා
ReplyDeleteHelp me...watina kiyana blog aka but mata sabara akuru kotu penne mokda use karan one fount aka?
ReplyDeleteunicode use karala tiyenne.. (iskolapota dammanam hari yai..)
DeleteSupiri machan
ReplyDeletesupiri ayya
ReplyDeletepatta aiye.mata godak watinawa
ReplyDelete