පසු ගිය පාඩමෙන් අපි .NET Framework එක ගැන කතා කලානේ, ප්රායෝගික ක්රියාකාරකම් වලට යොමු වීමට පෙර අපි අද තවදුරටත් ඔබ Visual Basic ගැන දැන ගත යුතු කරුණු කිහිපයක් ගැන කතා කරමු .
Object - Oriented සහ Event - Driven
අපි දැනටමත් දන්නවනේ Visual Basic කියන්නේ ක්රමලේඛණ භාෂාවක් කියල (programming language), ඒ වගේම එය Object - Oriented සහ Event - Driven ක්රමලේඛණ භාෂාවක්. දැන් ගොඩක් අයට ප්රශ්නයක් මතු වෙයි මොකක්ද මේ Object - Oriented සහ Event - Driven කියන්නේ කියල. Object - Oriented ගැන නම් අපිට මේ වෙලාවේ කතා කරන්න අමාරුයි මොකද ඒක වෙනමම කතාකරන්න ඕන පුළුල් මාතෘකාවක්. ඒ ගැන දන්න අයත් ඇති නැති අයත් ඇති දන්නවානම් වැඩිය හොඳයි නැතත් ප්රශ්ණයක් නෑ. මොකද මේ පාඩම් මාලාව අධ්යනය කරන්න ඒක ඕන වෙන්නේ නෑ. දන්නේ නැති අය ඒක programming කිරීමෙදී භාවිතා කරන තාක්ෂනයක් කියල හිතා ගන්නකෝ. අපිට මෙහිදී වැඩිපුරම දැන ගන්න ඕන වෙන්නේ Event - Driven කියන එකයි.
Event - Driven කියන model එකෙදී සිදු වෙන්නේ අපේ computer එකේ මෙහෙයුම් පද්ධතිය (OS) මගින් software එක පාවිච්චි කරන්නා එහි යම් කිසි වෙනසක් සිදු කලේ නම් ( උදාහරණයක් ලෙස ඔබ යම් කිසි Button එකක් click කලේ නම්) එය ඔභ භාවිතා කරන software එකට දැනුම් දෙයි එවිට එයට අදාල වූ event එක ක්රියාත්මක කරනු ලබයි. එම event එක මගින් software එක පාවිච්චි කරන්නා හට ඒට අඳාල වූ ප්රතිචාරයක් දක්වනු ලබයි. ඔන්න ඕකයි සරලව ගත්තොත් Event - Driven model එක කියන්නේ. එතකොට Event - Driven programming කියන්නේ මොකක්ද? ඒ කියන්නේ program එකක events handle කරන්න coding කිරීමයි. ( උදාහරණයක් ලෙස Button එකක click event එක handle කිරීම).
Visual Basic වලින් මොනවද කරන්න පුළුවන්?
මේ ගැනත් සරලව කියනවා නම් අපිට පුළුවන් Windows applications, Console applications, web - based systems වගේම smart devices සඳහාද applications නිර්මාණය කරන්න.
මොනවද මේ Windows applications සහ Console applications කියන්නේ?
Windows application කියන්නේ Graphical User Interface (කෙටියෙන් GUI) එකක් සහිත Desktop application එකකකටයි. (අපි හැමොටම හුරුපුරුදු ගොඩක් software වැටෙන්නේ මෙන්න මේ ප්රභේදයට තමයි) එතකොට Console application එකක් කියන්නේ Character User Interface (කෙටියෙන් CUI) එකක් සහිත Desktop application වලටයි. පහත උදාහරණ බලන්නකෝ එතකොට හොදටම තේරේවි මේ ගැන.
Graphical User Interface (GUI) |
Character User Interface (CUI) |
දැන් වෙනස තේරෙනවා නේද? CUI වලදී නැත්තම් console application වලදී මේ application එක භාවිතයට ගන්නා program එකේ ප්රතිචාරයට, ප්රතිවාර දැක්වීම මගිනුයි ඉදිරියට යුත්තේ. හරියට අපෙන් අහන ප්රශ්ණ වලට උත්තර දෙනවා වගේ. නමුත් GUI වලදී මේ තත්වය හාත්පසින්ම වෙනස් මෙහිදී සිදු වන්නේ application එක භාවිතයට ගන්නා ගේ ප්රතිචාරයට, program එක ප්රතිචාර දැක්වීමයි. මෙහිදී application එක භාවිතයට ගන්නා හට ඉතා ඉහළ නිදහසක් හිමිවෙනවා ඔහුට අවශ්ය ආකාරයට program එක හැසිරවීමට. නමුත් console application වලදී එසේ නැහැ.
එතකොට GUI Programming කියන්නේ?
මේකෙන් අදහස් වෙන්නේ GUI සඳහා code කිරීමයි. මේ ගැන විශේෂයෙන් කියනවානම් Visual Basic වලදී අපිට මේ GUI implement කරන්න code ලියන්න අවශ්ය වෙන්නේ නෑ, ඒ වෙනුවට අපිට කරන්න තියෙන්නේ IDE එකෙන් අපිට සපයා දී තිබෙන tool box එක භාවිතයෙන් drag - and - drop කර interface එක නිර්මාණය කිරීමයි.
අන්තිම වශයෙන් කියනවා නම් Visual Basic වල හැම දෙයක්ම ගොඩ නැගිල තියෙන්නේ අර Object Oriented කියන concept එකෙන් එන Objects වලිනුයි. උදාහරණ ලෙස buttons, text boxes ආදී වු සියල්ලම Objects ලෙසයි සලකණුයේ. ඒ ගැන වැඩිය හිතන්න යන්න එපා. පොඩි අදහක් තියා ගත්තම ඇති. එතකොට මේ Objects වලට තියෙනවා Properties (හරියට ඔබට නමක්, වයසක්, උසක් තියෙනවා වගේ) තව Methods ( ඒ කියන්නේ ඔබට දුවන්න, ඇවිදින්න, උඩ පනින්න, නිදාගන්න පුළුවන් වගේ) ඒ වගේම විශෙෂ දෙයක් වන events (ඒක හරියට ඔබට කව්රුහරි ගැහුවම අඩනවා වගේ එහෙමත් නැත්තම් මෙකක් හරි දෙයක් උනාම ඒකට ප්රතිචාර ලෙස යමක් කිරීමට හැකි වන්නේ මේන්න මේවා නිසා) .
අපි ඊළග පාඩමෙන් වැඩි දුරටත් මේ ගැන කතාකරල Visual Studio IDE එක හඳුනාගනිමු.
මේම ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
ඇත්තටම vb ලේසියි. ඔය vb වලින් හදන programme එකක් කොහොමද internet එකට දාන්නේ කියලා දන්නවද?
ReplyDeleteඇත්තටම ගොඩක් ලේසියි VB, මට තව පොඩ්ඩක් විස්තර කරල කියනවද ඔබ internet එකට දරනවා කියල අදහස් කැන්නේ මොකක්ද කියල? ස්තූතියි ඔබේ කොමෙන්ටුවට.
Deleteහොද වැඩක්....ඉදිරියටත් මේ වගේ කරගෙන යන්න සුබපැතුම් ..
ReplyDeleteබොහොම ස්තූතියි ඔබටත්... දිගටම අපිත් එක්ක රැදී ඉන්න...
DeleteVB සමඟ නොනැවතී පෙරටම...
ReplyDeleteස්තූතියි නැපෝ...!
Delete