වස්තු පාදක ක්රමලේකනය කියන්නේ මොකක්ද?
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 lamp එක ගන්නම් .. ඒකට පාටක් තියෙනවා ..මේ වෙලාවෙ ඒක off කරලයි තියෙන්නේ .. මට ඕනිනම් ඒක on කරන්න පුලුවන් ..ආයෙ off කරන්නත් පුලුවන්
ඒවගේම mobile phone එක ..ඒකටත් පාටක් තියෙනවා ...ඒකෙ SMS ,MP3 enable , services provider කෙනෙක් ඉන්නවා .. දැනට ඒක තියෙන්නේ standby mode එකේ ..ඕනිනම් මට ඒකෙන් call එකක් ගන්න පුලුවන් .. table lamp එකට වඩා හුගක් වැඩ mobile phone එකත් එක්ක කරන්න පුලුවන්
මේ උදාහරන දෙක දිහා බැලුවහම real world Object වල ගතිලක්ෂන එහෙමත් නැත්නම් characteristics දෙකක් තියෙනවා වත්කම් (state ) හා හැසිරීම (behavior)
Software Object වලත් මේ characteristics එහෙම්මම තියෙනවා අපි state නිරූපනය කරන්න variables සහ behavior නිරූපනය කරන්න functions යොදා ගන්නවා
අපිට Software Object එකක state එකක් වෙනස කරන්න ඕනිනම් functions එකක් හරහා තමා ඒක කරන්න ඕනි ..ඒ කියන්නේ Software Object අතර communication එක වෙන්නේ behavior නැත්නම් functions හරහා තමයි
A class is the blueprint from which individual objects are created.
මේක තමා class එකක ගැන දෙන සරලම පැහැදිලි කිරීම ..
table lamp කියන real world Object එක ගත්තාම ලෝකෙ කොච්චර table lamps තියනවද ..මේ හැම එකක්ම හදන්න යොදාගෙන තියෙන සැලසුම් පිටපත ..plan එකට තමයි class එක කියන්නේ ..ඒ සැලසුමට අනුව හදපු (instance ) එකකට තමා අපි table lamp Object එක කියන්නේ .. අපි එකම සැලසුමට හදපු නිසා ඒ ඔක්කොම table lamp ඔක්කොම එකම වත්කම් (state ) හා හැසිරීම (behavior) තමා බෙදා හදා ගන්නේ ..නමුත් ඒ හදපු instance එකිනෙකින් ස්ව්යායක්තයි .. මගෙ table lamp එක switch off කලා කියලා ඔයාගෙ table lamp එක switch off වෙන් නෑනෙ
එතකොට class එකක තියෙන්න පුලුවන් මොනවද ? ඒකෙ තියෙන්න පුලුවන් වත්කම් (state ) හා හැසිරීම (behavior)
state ගත්තොත් table lamp එකේ පාට අපි ප්ලෑන් එකේදි දක්වන් නෑ නෙ .. අපි එක පාටකින් හදලා ඒවට පාට ලබා දීම කරන්නේ පස්සෙනෙ ..එහෙම නොකොලොත් අපිට රතු පාට table lamp හදන්න එක blueprint එකකුත් කොල පාට table lamp හදන්න තව එකකුත් ඕනි වෙනවනේ
behavior ගත්තොත් පොදුවේ table lamp එක switch off කරන්න switch on කරන්න ඕනි විධාන පිලිවෙලින් ගොනු කරලා තියෙනවා
class TableLamp{
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 lamp එකට හදන්න පුලුවන්
============================
කලකට පස්සේ වෙලකට බැස්සේ වැරදි තියෙනවනම් දැනමුතු කට්ටිය කොමෙන්ට් කරලා යන්න
============================
කලකට පස්සේ වෙලකට බැස්සේ වැරදි තියෙනවනම් දැනමුතු කට්ටිය කොමෙන්ට් කරලා යන්න


16 comments:
අනේ මචෝ දිගටම ඉක්මනටම මේ ලිපි ටික දාපන්කො. මම BIT second semester කරනව පොඩි හේතුවක් හින්ද මට class සති 2කක්ම යන්න බරෙුව ගියා. ඒ කාලෙදි java oop සේරම ටික class එකේ ඇදල ඉවරයි.මම notes බලල තේරැම් ගන්න හැදුවත් හරිගියෙ නෑ. උබ දාල තියෙන විදියටනම් පට්ට තේරෙනව.
ලබන මාසෙ අන්තිමට තමයි විභාගෙ තියෙන්නෙ. උබට පුළුවන් නම් ඊට කලින් මේ ලිපි ටික දාල මටයි මම වගේ අසරන වෙලා ඉන්න අනිත් එවුන්ටයි ගොඩයන්න හදල දීපන්' එහෙම කලොත්නම් බං උබට ගොඩක් පිං.
ඔන් මම මගෙ blog එකටත් confiuzdprogrammer link එකත් දාගත්ත.
අන්න ලිපියනම් මරු :) ඔක්කොම ටික දිගටම ලියමු මම එනවා ඉගනගන්න :)
එළකිරි සහ ජලය!
කස්ටිය කියනවානේ class එක තමා අච්චුව object එක කොකිසයි කියලා. :D
සිරාවට අද තමා OOP ගැන හරියට අයිඩියා එකක් ගත්තේ.. එල ලිපියක් මචං.
@Networkදිසා : මම මේක ලියන්නේ C++ වලට කොහොමත් මූලික සංකල්ප ටික එකයි නේ .. ජාවා වලට සම්බන්ද ඒවා ටික මම වෙනම පෝස්ට් එකක් විදියට දාන්නම් ..
@පොඩි කණි: සතියට පෝස්ට් 2 විතර තමා වැටෙන්නේ දිගටම එන්න
@budhajeewa : ඔන්න ඔය වගේ අපිට සමීප උදාහරන අරගෙන කියලා දෙනවනම් OOP ඉක්මනට තේරුම් ගන්න පුලුවන් ..A class is the blueprint of objects කිව්වාම ඉතින් කරකවලා පොලේ ගැහුවා වගේ
@කණියා : අම්මේ තේරුනාද ? බොහොම ස්තූතියි :D
@Confiuzd ප්රෝග්රැමර්: ආයෙත් අහලා. Blue print ගැන හොයන්න පලකො ඊළඟට. :P
Fatta Keep It Up
good work.keep it up
ෆට්ට බන්
very gud, Pls post the other posts
Tnks
@ all : thanx you ..hope you will find something interesting
පට්ට මචො. . හොද වෙලාවට ASM පාඩම් යන දවස් වලම RSS දාගත්තෙ . . එ දවස්වල මෙවා ඔලුවට දාගත්තෙ කොච්චර අමරුවෙන්ද කියල හිතෙනවා, අලුතෙන් ඉගන ගන්න අයට විතරක් නෙමයි, දන්න අයට උනත් මාර වටිනවා සහෝ. . තැන්කූ වේවා. .
make itru tika mata hoya ganna bahaneee
එල කොල්ලෙක් ඇත්තම වටිනවා
මොකද කියනව නම් සුද්ද සිංහලෙන් පැහැදිලිව සරලව මුල් අදියර කියල දීල තියෙනවා බොහොම අගෙයි සහෝ
niyamai ayye' me karana denan patta.oyage jeewithe saarthaka wewa.mama NIBM BSc in MIS student kenek.
සිරා බන් බෝම පින්...
Post a Comment
මේ ගැන මොකද හිතන්නේ ?