Skip to main content

OOP -Introduction

අපි මුලින් බලමු මොකක්ද මේ 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 ගැන.


  • Abstraction 
  • Encapsulation 
  • Inheritance 
  • Polymorphism



ඔය ප්‍රධාන concept 4 මත තමයි  Object oriented programming රැඳී පවතින්නේ. ඔයාල software industrial එකේ interview එකකට ගියත් අනිවාර්යෙන් ඔය oop concepts ගැන  අනිවර්යෙන් ප්‍රශ්න අහනවා . ඔයලට දැන් අදහසක් ඇති OOP කොයි  තරම් වැදගත්ද කියන එක.  ඉදිරි post වලින් මේ සියලු දේවල් ගෙන coding example සහිතව explain කරන්නම් යාලුවනේ.......




Comments

Post a Comment

Popular posts from this blog

Object Oriented Programming Lessons - Part 1 topics

ඉතින් යාලුවනේ ඔයාලට මම දැන් මම ඔයලට පැහැදිලි කිරිමට බලාපොරොත්තු වෙන OOP පාඩම් මාලාව ඔයාලට කියනම්. මම හිතනවා එක ඔයාලට පහසුවක් වෙයි කියල. මම කොටස් 2ක්ත තමයි මේ පාඩම් මාලාව ඉදිරිපත් කරන්න හිතන් ඉන්නේ. පලවෙනි කොටස මං දන් ඔයලට ඉදිරිපත් කරන්නම්. OOP -Introduction OOP -What is class & object OOP - What is constructor OOP - What is abstraction  OOP - What is encapsulation OOP - Default values and declaration Values OOP - What is method overloading OOP - What is constructor overloading OOP - What is method call by values OOP - What is method call by reference OOP - What is key word "this" OOP - What is static methods OOP - What is static attributes OOP - What is static initilizer OOP - What is static object initilizer OOP - What is object blocks OOP - What is inheritance rules OOP - What is multiple inheritance using interface OOP - What is super keyword vs this key word OOP - What is method overriding OOP - What is overriding rules OOP - What is polymop...

Welcome to my blog

ආයුබෝවන් මේක කියවන  හැම කෙනාටම... මම කැළුම් පෙරේරා , දැනට IIT Campus එකේ Software Engineering degree එක කරන ගමන් තමා මං ඉන්නේ. ඒ අතර මටත් හිතුනා blog එකක් කරන්න ඕනා කියලා. මේක technical blog එකක්. blog නම් හැමතැනම ඇති... හැමදෙනාටම හම්බ වෙලා ඇති.. හැමෝම කියවලත් ඇති . .. එත් මේක විශේෂ එකක්. දිගටම මේකේ posts කියවනකොට ඔයාලටම එක තේරේවි.. මේකෙදි මම ඔයාලට කියලා දෙන්න හිතන් ඉන්නේ Java, C#  ගෙන ප්‍රදාන වශයෙන්. එත් හැමෝම දන්නා දේවල් ගෙන නෙමෙයි. ගොඩක් අය දන්නා , දන්නව වුනාට වැඩක් කරගන්න තරම් දැනුමක් නැති , එත් industry එකේ වැඩ වලට ගොඩක් ප්‍රයෝජනවත් වෙන දේවල් කොහොමද කරන්නේ කියන එක තම මං සරලවම කියලා දෙන්න යන්නේ. OOP(Object Oriented Programming) concepts ඔයලා හැමෝම දන්නවා,ඉගෙනගෙන තියෙනවා. එත් ගොඩක් අයට OOP වල ප්‍රශ්න තියෙනවා. ඒ නිසා OOP concept  ඔක්කොම වගේ ඇතුලත් වෙන විදිහට coding examples එක්කම පැහැදිළි කරනම්. ඔයාල අහල ඇතිනේ  design patterns ගැන ? අහලා ඇති ගොඩ දෙනෙක් , එත් දන්නේ නැ මොනවද , කොහොමද ඒවා use කරලා real world  project එක කරන්නේ කි...