Skip to main content

Posts

Agriculture Research Mobile App

Agriculture Research Mobile App

Singleton Design Pattern

අද මම මගේ යාළුවන්ට පැහැදිලි කරන්න යන්නෙ ඉතාමත් පහසුවෙන් තේරුම් ගන්න පුළුවන් design pattern එකක්. ඒ තමයි Singleton design pattern එක.මේ design pattern එක අයත් වෙන්නේ creational patterns කියන කාණ්ඩයට. object නිර්මාණය කරන්න හොඳ ක්‍රමයක් තමයි මෙයින් අපිට කියලා දෙන්නේ. අපි බලමු දැන්  මොකක්දේ මේ singleton design pattern එක කියන්නෙ කියලා. කෙටියෙන්ම විස්තර කරනවා නම් singleton design pattern එකෙන් අපි කරන්නේ අපි හදන class එකෙන් user ට අවස්ථාව දෙන්නේ එක object එකක් හදන්න විතරයි.තවත් විස්තර කරනවා නම් user class එකෙන් object එකක් refer කරන හැම අවස්ථාවකම user ට දෙන්නේ එකම එක static object එකක් විතරයි .ඒ කියන්නෙ මේ design pattern එක use කිරීමේ ප්‍රධාන අරමුණ තමයි සලකන ලද class එකකින් සැදෙන උපරිම object ගණන එකකට සීමා කිරීම. ඔයාලට දැන්  ප්‍රශ්නයක් ඇති ඇයි අපි සාදන object එකකට සිමා කරන්නේ කියලා. මම එක ඔයාලට උදාහරණයකින් පැහැදිලි  කරන්නම්. අපි හිතමු අපි develop කරන desktop software එකකට database එක connect කරනවා කියලා. අපේ software එකේ එකම database එකකට user details view කරනකොට , ඒ ව...

MVC Design Pattern (Model-View-Controller)

ඉතින් යාලුවනේ මම අද ඔයාලට කියන්න යන්නෙ software industrial එකට ගොඩක් වැදගත් වෙන design pattern එකක්. ඒ තමයි MVC එහෙමත් නැත්නම් Model-View-Controller කියන design pattern එක. අපි දැන්  බලමු මොනවද මේ model , view ,controller කියන ඒවායින් කියවෙන්නේ කියලා. Model  : අපි model එකක් කියලා සාමාන්‍යයෙන් කියන්නෙ object එකකට.අපේ program එකේ   ඇතුලත වෙන ක්‍රියාවලිය අපි ඉදිරිපත් කරන්නේ model එකකින්.  View : අපි දැන් බලමු view එකක කියන්නෙ මොකක්දේ කියලා. view එක කියන්නෙ model එකෙ       තියෙන දේවල් user ට පෙන්වන්නේ එහෙමත්මේ නැත්නම් visualise කරන්නේ මේ  view එක හරහා තමයි. Controller : අපි controller කියලා කියන්නෙ model එකේ වෙන වෙනස්කම් view එකේ update   කරන්නේ ඒවගේම model එකයි view එකයි control කරන්නේ මේ controller එකෙන් තමයි. මේ design pattern එකේ මේ කොටසේ තමයි business logic එක අපි ලියන්නේ. හරියට අපේ brain එක වගේ තමයි controller එක ක්‍රියාකරන්නේ.  මේ MVC design pattern එකේ තියෙන ප්‍රධාන වාසියක් තමයි අපි program එකේ ඔක්කොම codes ටික එකම...

Design Patterns - Introduction

    ඉතින් මගේ යාලුවනේ අද මම ඔයාලට ඉදිරිපත් කරන්න හදන්නේ Software Industrial එකට යන්න ඉන්න ඔයාලා සියළුම දෙනාට ගොඩක් වැදගත් වෙන ලිපියක්. ඒ තමයි Software Development Design Patterns.  අපි design pattern එක විතරක් දැනගත්තට විතරක් නම් මදි යාලුවනේ. අපි කොහොමද ගැලපෙනම   design pattern එක තොර ගෙන  develop කරන software project එකට  ප්‍රයෝගිකව භාවිත කරන්නේ කොහොමද  කියන එකත් දැනගෙන ඉන්න ඕනේ අනිවාර්යෙන්. එතකොට තමයි අපිට සාර්ථක     Software Engineer කෙනෙක් වෙන්න පුළුවන් වෙන්නේ . මම java programming language එකෙන් design pattern එක implement කරන හැටි මුලින් කියනම්. පසුව C # programming language එකෙනුත් ඉදිරිපත් කරනම්.  අපි දැන් මුලින්ම පොඩ්ඩක් හොයල බලමු කොහමද මේ design patterns කියන සංකල්පය ලෝකෙට ආවෙ කියලා. මුලින්ම මෘදුකාංග ක්ෂේත්‍රයට design patterns concept එක  එන්නෙ 1994 දී එලිදක්වන ලද Design Patterns – Elements of Reusable Object-Oriented Software යන ග්‍රන්ථයත් සමගයි. මෙම ග්‍රන්ථයේ කතෘවරුන් වන Erich Gamma, Richard Helm, Ralph...

OOP -What is class & object?

අපි දැන් බලමු මොකක්ද  මේ Class එකක් කියන්නේ , මොකක්ද මේ Object   එකක් කියන්නේ කියලා. Class කෙටියෙන්ම  කිව්වොත් class එකක් කියන්නේ  object එකක සැලැස්මක්, අච්චුවක්  වගේ දෙයක් ඒ කියන්නෙ blue print එකක්. object එකක ලක්ෂණ, ක්‍රියාකාරීත්වය යනාදිය සියල්ල තීරණය කරණු ලබන්නේ class එක විසින්. අපි objects සැදීම සඳහා classes භාවිත කරනවා කියන එක ගෙන idea එකක් මගේ යාළුවන්ට එන්න  ඇති. අපිට  එක class එකකින් objects ඕනේ තරමක් හදන්න පුළුවන්.  class එකක්  සැලසුම් කිරීමේදී එහි object එකට අදාල පහත අංග ඇතුල් කෙරෙනවා. ඔයාලට පැහැදිලි වෙන්න මම class diagram එකකින් පෙන්වන්නම්. Attributes/properties/state  Constructors   Methods/Functions උදාහරණයක් විදිහට මම Box කියන class එක ගන්නම්. මේ Box කියන class එකේ තියෙන attributes තමයි length, width & height කියන්නේ. Box() කියන්නෙ default constructor එක, setValues , setLength, setWidth, setHeight, getVolume, getArea, printVolume, printArea කියන්නෙ Box class එකේ තියෙන methods එහෙම නැත්නම් fu...

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 කිරීමේදී වැය වුන කාලය , ඒ සඳහා c...

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...