මෙම ලිපියේ අන්තර්ගතය කලින් ලිපිය හා සබැදේ .කලින් ලිපියෙහි සදහන් කල පරිදි මෘදුකාංග නිර්මාණය සදහා බහුලව භාවිතාවන ක්රමවේදයක් පිලිබදව සරලව පැහැදිලි කර දීමට මෙම ලිපිය මගින් බලාපොරොත්තු වෙම්.මෙය සරලව MVC යනුවෙන් හැදින්විය
හැක.තවදුරටත් සරල කලහොත් Model,View,Control යනුවෙන් වෙන්කර දැක්විය හැක.නමුත් මෙය පිලිබදව පැහැදිලි අවබොදයක් ලබාගැනීමට ප්රායෝගික පද්දතියක ක්රියාකාරිත්වය අනුසාරයෙන් පැහැදිලි කලහොත් එය වඩා සුදුසුයැයි සිතම්.එ සදහා මුලින්ම ප්රායෝගික පද්දතියක සිදුවන ක්රියාකාරීත්වය පිලිබදව සලකා බලමු.
ඉහත රූපයේ පද්ධතියක ක්රියාකාරිත්වය පිළිබඳව ඉතාම සරළ ආකාරයේ පැහැදිලි කිරීමකි.මෙය වැඩි දුර පැහැදිලි කිරිමට අවශ්ය නැතැයි සිතමි.
මිළග රූපසටහනේ දැක්වෙන්නේ MVC පිළිබඳ සරළ පැහැදිළි කිරිමකි.මෙය පැහැදිලි කිරිමට කලියෙන් එහි ක්රියාකාරිත්වය පිළිබඳව උදාහරනයක් මඟින් තේරුම් ගැනීමට උත්සහ ගනිමු.අපි කවුරුත් භාවිතයට ගන්නා Calculator සලකා බලමු.මෙය තුලත් ක්රියාත්මක
වන්නේ MVC Design Patter එකයි.මුලින්ම මෙය තුලට ඇතුලත් කරනු ලබන ගණනය කිරීම් එහි ඇති පාලකය(Contoller) මඟින් උචිත Models (Add / Subtract)වෙත යොමු කරනු ලබනවා.එම Models වලින් එම කාර්ය්යය ඉටු වු පසු එහි පිළිතුර යොමු වන්නේ LCD පුවරුව වෙතයි(View).එමඟින් එහි පිළිතුර අපට දර්ශනය කර ගත හැක. මෙම ක්රියාවලියේදී,
(Add / Subtract) වැනිදේ Models ------------ M
LCD පුවරුවඑක View ලෙසත් ------------- V
පාලකය Controller එක ලෙසත් ------------- C
ක්රියාකරනු ලබයි.
මෙම සරළ උදාහරණය මඟින් ඔබට MCV පිළිබඳව සරළ අවබෝධයක් ලැබෙන්නට ඇතැයි සිතමි.
ඉහත රූපසටහනෙන් දැක්වෙන්නේ MCV මෘදුකාංග පද්ධතියකට යොදා ගත හැකි ආකාරයයි.
* පරිශීලකයකු විසින් යම්කිසි කාර්ය්යක් කර ගැනිම සඳහා පද්ධතිය වෙත යොමු කරනු ලබන Request එකකි.මෙම Request එක ලබාගනු ලබන්නේ Control එක මඟිනි.
* සාමන්ය ජාවා පරිනණක භාෂාව යොදාගෙන දියුනු කරණු ලබන Web පද්දතියක Controller ලෙස ක්රියා කරනුයේ Servlet එකකි.එමඟින් ලබා ගන්නා Request එක එම කාර්ය්යට අදාළ Models වෙත එමඟින් යොමු කරනු ලබයි.
* Model එක මඟින් ඊට අදාළ කාර්ය්යන් සිදුකරනු ලබයි.සමාන්යයෙන් පද්ධතියෙ Logic කොටස සිදුකරනු ලබන්නේ Model කොටස මඟිනි.එම කාර්ය්ය සඳහා Database එකක සහය අවශ්ය නම් ඒ සඳහා සහය ගනු ලබන්නේද Model මඟිනි.Model කොටසවැඩිදියුනු කිරීම සදහා අපට Spring,EJB වැනි තාක්ෂණයක් යොදාගත හැක.
* Model ය තුල ඊට අදාළ Logic කොටස ක්රියාත්මක වීමෙන් පසු එමඟින් ලබාගන්නා දත්ත මීළගට අවශ්ය වන්නේ පරිශිලකයාට දර්ශණය කීරිමයි.මේ සඳහා View කොටස උපයෝගි වෙයි.එම නිසා මීළගට View සඳහා දත්ත යොමු කෙරේ.
* View කොටස වැඩිදිවුනු කිරීම සදහාද අපට Jsp,Struts වැනි තාක්ෂණයක් යොදාගත හැක.එමඟින් අවසාන ප්රතිඵ්ය පරිශීලකයාට දර්ශණය වීමට සලස්වයි.
මෙම සරළ සිද්ධාන්තය බොහෝ විට මෘදුකාංග සංවර්ධනයේදි Design Patter එකක් ලෙස යොදා ගැනේ.නමුත් සමහර අවස්ථා වල MVC යොදා ගන්නවායි සිතා සිටියත් එය හරි හැටි යොදා නොගැනිමේ අවස්ථාද දුබල නොවේ.අපගේ මීළග ලිපියෙන් අපි මෙහි යෙදීම් පිළිබඳව ඉදිරිපත් කිරිමට බලාපොරොත්තු වෙමු.
හැක.තවදුරටත් සරල කලහොත් Model,View,Control යනුවෙන් වෙන්කර දැක්විය හැක.නමුත් මෙය පිලිබදව පැහැදිලි අවබොදයක් ලබාගැනීමට ප්රායෝගික පද්දතියක ක්රියාකාරිත්වය අනුසාරයෙන් පැහැදිලි කලහොත් එය වඩා සුදුසුයැයි සිතම්.එ සදහා මුලින්ම ප්රායෝගික පද්දතියක සිදුවන ක්රියාකාරීත්වය පිලිබදව සලකා බලමු.
ඉහත රූපයේ පද්ධතියක ක්රියාකාරිත්වය පිළිබඳව ඉතාම සරළ ආකාරයේ පැහැදිලි කිරීමකි.මෙය වැඩි දුර පැහැදිලි කිරිමට අවශ්ය නැතැයි සිතමි.
මිළග රූපසටහනේ දැක්වෙන්නේ MVC පිළිබඳ සරළ පැහැදිළි කිරිමකි.මෙය පැහැදිලි කිරිමට කලියෙන් එහි ක්රියාකාරිත්වය පිළිබඳව උදාහරනයක් මඟින් තේරුම් ගැනීමට උත්සහ ගනිමු.අපි කවුරුත් භාවිතයට ගන්නා Calculator සලකා බලමු.මෙය තුලත් ක්රියාත්මක
වන්නේ MVC Design Patter එකයි.මුලින්ම මෙය තුලට ඇතුලත් කරනු ලබන ගණනය කිරීම් එහි ඇති පාලකය(Contoller) මඟින් උචිත Models (Add / Subtract)වෙත යොමු කරනු ලබනවා.එම Models වලින් එම කාර්ය්යය ඉටු වු පසු එහි පිළිතුර යොමු වන්නේ LCD පුවරුව වෙතයි(View).එමඟින් එහි පිළිතුර අපට දර්ශනය කර ගත හැක. මෙම ක්රියාවලියේදී,
(Add / Subtract) වැනිදේ Models ------------ M
LCD පුවරුවඑක View ලෙසත් ------------- V
පාලකය Controller එක ලෙසත් ------------- C
ක්රියාකරනු ලබයි.
මෙම සරළ උදාහරණය මඟින් ඔබට MCV පිළිබඳව සරළ අවබෝධයක් ලැබෙන්නට ඇතැයි සිතමි.
ඉහත රූපසටහනෙන් දැක්වෙන්නේ MCV මෘදුකාංග පද්ධතියකට යොදා ගත හැකි ආකාරයයි.
* පරිශීලකයකු විසින් යම්කිසි කාර්ය්යක් කර ගැනිම සඳහා පද්ධතිය වෙත යොමු කරනු ලබන Request එකකි.මෙම Request එක ලබාගනු ලබන්නේ Control එක මඟිනි.
* සාමන්ය ජාවා පරිනණක භාෂාව යොදාගෙන දියුනු කරණු ලබන Web පද්දතියක Controller ලෙස ක්රියා කරනුයේ Servlet එකකි.එමඟින් ලබා ගන්නා Request එක එම කාර්ය්යට අදාළ Models වෙත එමඟින් යොමු කරනු ලබයි.
* Model එක මඟින් ඊට අදාළ කාර්ය්යන් සිදුකරනු ලබයි.සමාන්යයෙන් පද්ධතියෙ Logic කොටස සිදුකරනු ලබන්නේ Model කොටස මඟිනි.එම කාර්ය්ය සඳහා Database එකක සහය අවශ්ය නම් ඒ සඳහා සහය ගනු ලබන්නේද Model මඟිනි.Model කොටසවැඩිදියුනු කිරීම සදහා අපට Spring,EJB වැනි තාක්ෂණයක් යොදාගත හැක.
* Model ය තුල ඊට අදාළ Logic කොටස ක්රියාත්මක වීමෙන් පසු එමඟින් ලබාගන්නා දත්ත මීළගට අවශ්ය වන්නේ පරිශිලකයාට දර්ශණය කීරිමයි.මේ සඳහා View කොටස උපයෝගි වෙයි.එම නිසා මීළගට View සඳහා දත්ත යොමු කෙරේ.
* View කොටස වැඩිදිවුනු කිරීම සදහාද අපට Jsp,Struts වැනි තාක්ෂණයක් යොදාගත හැක.එමඟින් අවසාන ප්රතිඵ්ය පරිශීලකයාට දර්ශණය වීමට සලස්වයි.
මෙම සරළ සිද්ධාන්තය බොහෝ විට මෘදුකාංග සංවර්ධනයේදි Design Patter එකක් ලෙස යොදා ගැනේ.නමුත් සමහර අවස්ථා වල MVC යොදා ගන්නවායි සිතා සිටියත් එය හරි හැටි යොදා නොගැනිමේ අවස්ථාද දුබල නොවේ.අපගේ මීළග ලිපියෙන් අපි මෙහි යෙදීම් පිළිබඳව ඉදිරිපත් කිරිමට බලාපොරොත්තු වෙමු.
Comments