අපි මුලින් බලමු මොකක්ද මේ Object Oriented Programming concept එක කියන්නෙ කියලා. OOP කියන concept එක බිහිවෙන්න කලින් අපි භාවිත කලේ Structured Programming කියන concept එක.
නමුත් Structured Programming concept එක භාවිත කරලා මහපරිමාණ software නිර්මාණය කරන කොට programmers ලට නොයෙකුත් ප්රශ්න වලට මුහුණ දීමට සිදුවුණා. ඒ කියන්නේ structured concept එකෙන් මහපරිමාණ software develop කරනකොට එකම class එකක සියළුම codes ලියන නිසා code වල errors , bugs ආවහම errors සහිත coding lines හඳුනාගෙන ඒවා නැවත සකස් කිරීමට විශාල කාලයක් වගේම විශාල වෙහෙසක් programmer ට දරන්න සිදුවෙනවා.
මොහොතකට හිතල බලන්න යාලුවනේ අපි structured programming concept එක use කරලා Foodcity එකකට software එකක් develop කරනවා කියලා. ඒ programme එකේ code lines විශාල ප්රමාණයක් තියෙනවා. ඉතින් ඒ වගේ අවස්ථාවක errors ආවහම , ඒ වගේම programmer develop කරපු software එකට අලුතින් new parts add කරන්න අවශ්යයි කියල අපේ client කීවහම නැවත new parts add කිරීමේදී software එක develop කිරීමේදී වැය වුන කාලය , ඒ සඳහා client ට විශාල මුදලක් ගෙවීමටත් , developer ට දරන්න ඕනේ වෙහෙසත් ගොඩක් වැඩි වෙනවා.
ඉතින් යාලුවනේ ඔන්න ඔය කියන ගැටළු මගහරවා ගන්න තමයි Object Oriented Programming concept එක ඒ කියන්නෙ අපි හෙමෝම හොඳට අහලා තියෙන OOP concept එක බිහි වුනේ.
OOP concept ඒකෙදී සරලව කිව්වොත් වෙන්නේ අපේ program එක Objects ගනනාවක එකතුවක් විදියට තමයි ක්රියා කරන්නේ. එක වෙන්නේ Object අතර වෙන අන්තර් සහභාගීත්වයෙන් (interaction). එක object එකක් තව object එකක තියන method එකක් call කරනවා. ඒ object එක වෙන object එකක method එකක් call කරනවා. මේ අකාරයට එක එක objects අතර අන්තර් සන්නිවේදනය සිද්ද වෙනවා.
තවත් විස්තර කරනවා නම් අපි structured programming concept එකේදී කලේ එකම class එකක ඔක්කොම codes ලියපු එකනේ. OOP concept එකේදී අපි කරන්නේ අපේ program එක අපි classes වලට වෙන් කරලා ඒවා එක main class එකකට සම්බන්ධ කරන එක.
හැම Object එකටම පොදු කරුණු 3ක් තියනවා. අපි දන් බලමු මොනවද ඒ පොදු කරුණු කියලා,
1. Identifier – එක object එකක් තවත් එකකින් වෙන්කර හඳුනාගැනීමට නමක් – name of the object.
2. Attributes – object එකට අදාල ලක්ෂණ – instance variables in that object.
3. Behaviors – object එකට කරන්න පුලුවන් වැඩ තියනවා – methods of that object.
ඔන්න යාලුවනේ මම දැන් ඔයාලට ගොඩක් වැදගත් දෙයක් තමයි කියන්න හදන්නේ. ඒ තමයි ප්රධාන OOP concept 4 ගැන.
ඔය ප්රධාන concept 4 මත තමයි Object oriented programming රැඳී පවතින්නේ. ඔයාල software industrial එකේ interview එකකට ගියත් අනිවාර්යෙන් ඔය oop concepts ගැන අනිවර්යෙන් ප්රශ්න අහනවා . ඔයලට දැන් අදහසක් ඇති OOP කොයි තරම් වැදගත්ද කියන එක. ඉදිරි post වලින් මේ සියලු දේවල් ගෙන coding example සහිතව explain කරන්නම් යාලුවනේ.......
නමුත් Structured Programming concept එක භාවිත කරලා මහපරිමාණ software නිර්මාණය කරන කොට programmers ලට නොයෙකුත් ප්රශ්න වලට මුහුණ දීමට සිදුවුණා. ඒ කියන්නේ structured concept එකෙන් මහපරිමාණ software develop කරනකොට එකම class එකක සියළුම codes ලියන නිසා code වල errors , bugs ආවහම errors සහිත coding lines හඳුනාගෙන ඒවා නැවත සකස් කිරීමට විශාල කාලයක් වගේම විශාල වෙහෙසක් programmer ට දරන්න සිදුවෙනවා.
මොහොතකට හිතල බලන්න යාලුවනේ අපි structured programming concept එක use කරලා Foodcity එකකට software එකක් develop කරනවා කියලා. ඒ programme එකේ code lines විශාල ප්රමාණයක් තියෙනවා. ඉතින් ඒ වගේ අවස්ථාවක errors ආවහම , ඒ වගේම programmer develop කරපු software එකට අලුතින් new parts add කරන්න අවශ්යයි කියල අපේ client කීවහම නැවත new parts add කිරීමේදී software එක develop කිරීමේදී වැය වුන කාලය , ඒ සඳහා client ට විශාල මුදලක් ගෙවීමටත් , developer ට දරන්න ඕනේ වෙහෙසත් ගොඩක් වැඩි වෙනවා.
ඉතින් යාලුවනේ ඔන්න ඔය කියන ගැටළු මගහරවා ගන්න තමයි Object Oriented Programming concept එක ඒ කියන්නෙ අපි හෙමෝම හොඳට අහලා තියෙන OOP concept එක බිහි වුනේ.
OOP concept ඒකෙදී සරලව කිව්වොත් වෙන්නේ අපේ program එක Objects ගනනාවක එකතුවක් විදියට තමයි ක්රියා කරන්නේ. එක වෙන්නේ Object අතර වෙන අන්තර් සහභාගීත්වයෙන් (interaction). එක object එකක් තව object එකක තියන method එකක් call කරනවා. ඒ object එක වෙන object එකක method එකක් call කරනවා. මේ අකාරයට එක එක objects අතර අන්තර් සන්නිවේදනය සිද්ද වෙනවා.
තවත් විස්තර කරනවා නම් අපි structured programming concept එකේදී කලේ එකම class එකක ඔක්කොම codes ලියපු එකනේ. OOP concept එකේදී අපි කරන්නේ අපේ program එක අපි classes වලට වෙන් කරලා ඒවා එක main class එකකට සම්බන්ධ කරන එක.
හැම Object එකටම පොදු කරුණු 3ක් තියනවා. අපි දන් බලමු මොනවද ඒ පොදු කරුණු කියලා,
1. Identifier – එක object එකක් තවත් එකකින් වෙන්කර හඳුනාගැනීමට නමක් – name of the object.
2. Attributes – object එකට අදාල ලක්ෂණ – instance variables in that object.
3. Behaviors – object එකට කරන්න පුලුවන් වැඩ තියනවා – methods of that object.
ඔන්න යාලුවනේ මම දැන් ඔයාලට ගොඩක් වැදගත් දෙයක් තමයි කියන්න හදන්නේ. ඒ තමයි ප්රධාන OOP concept 4 ගැන.
- Abstraction
- Encapsulation
- Inheritance
- Polymorphism
ඔය ප්රධාන concept 4 මත තමයි Object oriented programming රැඳී පවතින්නේ. ඔයාල software industrial එකේ interview එකකට ගියත් අනිවාර්යෙන් ඔය oop concepts ගැන අනිවර්යෙන් ප්රශ්න අහනවා . ඔයලට දැන් අදහසක් ඇති OOP කොයි තරම් වැදගත්ද කියන එක. ඉදිරි post වලින් මේ සියලු දේවල් ගෙන coding example සහිතව explain කරන්නම් යාලුවනේ.......


Nice work!!
ReplyDeleteGreat job!!!
ReplyDeleteGreat work
ReplyDeleteJob done well
ReplyDelete