Object Oriented Programming

Mal Baba

Well-known member
  • Apr 26, 2009
    106,262
    5,596
    113
    Blob Storage
    www.37innovate.com
    Object Oriented Programming | වස්තු පාදක ක්‍රමලේඛනය


    What Is Object Oriented Programming ?
    වස්තු පාදක ක්‍රමලේඛනය කියන්නේ මොකක්ද?


    Object Oriented Programming කියන්නේ අපි යම්කිසි Real World Problem එකකට පරිගනකයක් ආශ්‍රයෙන් විසදුමක් ලබා ගන්න ඕනි උනා ම Real World එකේ Problem එකට අදාල සියලුම වස්තුන් (Object ) වලට අනූරූපව හා අංගසමව පරිගනකය තුල Object ලෙසට නිර්මානය කරලා අපි පරිගනකය තුල නිර්මානය කල Objects අතර අන්තර්ක්‍රියාරිත්වය මගින් ගැටලුව පරිගනකය තුල නැවත නිර්මානය කර විසදුමක් ලබාගෙන අප Real World Object වලට ඇති අංග සමතාවයෙන් Real World Problem එකට විසදුමක් ලබා ගැනීමයි


    What Is An Object?
    වස්තුව යනු කුමක්ද ?


    Object එක තමා OOP වල කොදු නාරටිය ..මම පැහැදිලි කිරීමේ පහසුවට අපේ වට පිටාවෙ තියෙන Objects වලට Real World Object කියලත් අපි පරිගනකය තුල නිර්මානය කරන ඒ වට Software Object කියලත් භාවිතා කරන්නම් ..මේක පැහැදිලි කරන්න විතරයි ... ඇත්ත වශයෙන්ම එහෙම දෙවර්ගයක් නෑ Object නම් Object
    ඔබගේ මේසය දෙස බලන්න අනිවාර්යෙන්ම පහසුවෙන්ම දකින්න පුලුවන් Real World Object කොච්චර තියෙනවද ?

    මම Table Fan එක ගන්නම් .. ඒකට පාටක් තියෙනවා ..මේ වෙලාවෙ ඒක Off කරලයි තියෙන්නේ .. මට ඕනිනම් ඒක On කරන්න පුලුවන් ..ආයෙ Off කරන්නත් පුලුවන් ඒවගේම Mobile Phone එක ..ඒකටත් පාටක් තියෙනවා ...ඒකෙ SMS ,MP3 Enable , Services Provider කෙනෙක් ඉන්නවා .. දැනට ඒක තියෙන්නේ Standby Mode එකේ ..ඕනිනම් මට ඒකෙන් Call එකක් ගන්න පුලුවන් .. Table Fan එකට වඩා හුගක් වැඩ Mobile Phone එකත් එක්ක කරන්න පුලුවන්

    මේ උදාහරන දෙක දිහා බැලුවහම Real World Object වල ගතිලක්ෂන එහෙමත් නැත්නම් Characteristics දෙකක් තියෙනවා වත්කම් (State ) හා හැසිරීම (Behavior)
    Software Object වලත් මේ Characteristics එහෙම්මම තියෙනවා අපි State නිරූපනය කරන්න Variables සහ Behavior නිරූපනය කරන්න Functions යොදා ගන්නවා

    අපිට Software Object එකක State එකක් වෙනස කරන්න ඕනිනම් Functions එකක් හරහා තමා ඒක කරන්න ඕනි ..ඒ කියන්නේ Software Object අතර Communication එක වෙන්නේ Behavior නැත්නම් Functions හරහා තමයි


    What Is A Class?
    පන්ති යනු කුමක්ද ?


    A Class Is The Blueprint From Which Individual Objects Are Created.
    මේක තමා Class එකක ගැන දෙන සරලම පැහැදිලි කිරීම ..


    Table Fan කියන Real World Object එක ගත්තාම ලෝකෙ කොච්චර Table Fans තියනවද ..මේ හැම එකක්ම හදන්න යොදාගෙන තියෙන සැලසුම් පිටපත ..Plan එකට තමයි Class එක කියන්නේ ..ඒ සැලසුමට අනුව හදපු (Instance) එකකට තමා අපි Table Lamp Object එක කියන්නේ .. අපි එකම සැලසුමට හදපු නිසා ඒ ඔක්කොම Table Fan ඔක්කොම එකම වත්කම් (State ) හා හැසිරීම (Behavior) තමා බෙදා හදා ගන්නේ ..නමුත් ඒ හදපු Instance එකිනෙකින් ස්ව්‍යායක්තයි .. මගෙ Table Fan එක Switch Off කලා කියලා ඔයාගෙ Table Fan එක Switch Off වෙන් නෑනෙ

    deco-breeze-table-fan.jpg


    එතකොට Class එකක තියෙන්න පුලුවන් මොනවද ? ඒකෙ තියෙන්න පුලුවන් වත්කම් (State ) හා හැසිරීම (Behavior) State ගත්තොත් Table Fan එකේ පාට අපි ප්ලෑන් එකේදි දක්වන් නෑ නෙ .. අපි එක පාටකින් හදලා ඒවට පාට ලබා දීම කරන්නේ පස්සෙනෙ ..එහෙම නොකොලොත් අපිට රතු පාට Table Fan හදන්න එක Blueprint එකකුත් කොල පාට Table Fan හදන්න තව එකකුත් ඕනි වෙනවනේ
    Behavior ගත්තොත් පොදුවේ Table Fan එක Switch Off කරන්න Switch On කරන්න ඕනි විධාන පිලිවෙලින් ගොනු කරලා තියෙනවා

    class Table Fan{

    String color = black;
    int state= 0;

    void switchOn() {
    state= 1;
    }

    void switchOff() {
    state= 0;

    }

    void setColor(String aColor) {
    color= aColor;

    }

    String getColor() {
    return color;
    }

    }
    මෙන්න මේ වගේ Class එකක් තමා අපි මෙච්චර වෙලා කතා කරපු Table Fan එකට හදන්න පුලුවන්.Table Fan එක වස්තු පාදක ක්‍රමලේඛනය සරලව හදුන්වන්න යොදාගත්ත උදාහරණයක් විතරයි.
    _____________________________________________

    ඉතුරු ටිකත් ටික ටික පළ කරන්න බලාපොරොත්තු වෙනවා
    Data Base Management ගැනද ඉදිරියේදී බලපොරොත්තු වන්න

    _________________



    _________________

    Special Thanks Confiuzd Programmer
    Mal Baba Exclusive@Facebook

    ©2011/MB/EK.COM

     
    Last edited:

    ruwantheekshana

    Well-known member
  • Mar 10, 2008
    5,868
    1,316
    113
    නියමයි නියමයි නියමයි!!!!!! තේරෙන භාෂාවෙන් කියල දීල තියෙනවා.:):):):) අපේ සමහර lecturers ලටත් බැරි ඕකනේ :frown::frown::frown::frown:


    රෙප් !!!
     

    roshancs05

    Member
    Dec 13, 2008
    5,354
    750
    0
    Mars
    එල මචං,ගොඩක් වටිනවා Programming වලට ආධුනිකයන්ට
    දිගටම කරගෙන යමු
    You must spread some Reputation around before giving it to Mal Baba again. :(
     

    Mal Baba

    Well-known member
  • Apr 26, 2009
    106,262
    5,596
    113
    Blob Storage
    www.37innovate.com
    නියමයි නියමයි නියමයි!!!!!! තේරෙන භාෂාවෙන් කියල දීල තියෙනවා.:):):):) අපේ සමහර lecturers ලටත් බැරි ඕකනේ :frown::frown::frown::frown:


    රෙප් !!!

    Ekata Lahiru Sahodarayata Thanks Karanna One
    Yes True Macho Apita Some Lec La Gena Head Ayata Complain Karannath Una:cool:
     

    Mal Baba

    Well-known member
  • Apr 26, 2009
    106,262
    5,596
    113
    Blob Storage
    www.37innovate.com
    එල මචං,ගොඩක් වටිනවා Programming වලට ආධුනිකයන්ට
    දිගටම කරගෙන යමු
    You must spread some Reputation around before giving it to Mal Baba again. :(
    Ela Ela Macho
    Programing Kiyanne Hoda Side Ekak Diyunu Wenna
    Meka Karanan Karanna Practices Wenawa
    Ekenma Asa Hithenawa Karalama Balanna
     

    ruwantheekshana

    Well-known member
  • Mar 10, 2008
    5,868
    1,316
    113

    Ekata Lahiru Sahodarayata Thanks Karanna One
    Yes True Macho Apita Some Lec La Gena Head Ayata Complain Karannath Una:cool:


    1) ඒ ලහිරු සහෝදරයාටත් ස්තූතියි කිව්වා කියන්න.:cool::cool:

    2) ඔව් අනිවාර්යයෙන් Lecture කෙනෙක් හොඳ නැත්නං ඉහලට දැනුම දෙන්න ඕනේ. :cool::cool:
     

    Mal Baba

    Well-known member
  • Apr 26, 2009
    106,262
    5,596
    113
    Blob Storage
    www.37innovate.com
    1) ඒ ලහිරු සහෝදරයාටත් ස්තූතියි කිව්වා කියන්න.:cool::cool:

    2) ඔව් අනිවාර්යයෙන් Lecture කෙනෙක් හොඳ නැත්නං ඉහලට දැනුම දෙන්න ඕනේ. :cool::cool:
    Ekenma Ekenma
    Api Tel Box Ekakin Call Ekak Dala Kiwwa :lol:
    Badu Maru Karala Ela Porak Awa Lec Walata

    Me Sahodaraya Koi Uni Or Instu Ekeda