Class එකක් යනු කුමක්ද?
පන්තියක් යනු වස්තුවක් සඳහා වන සැලැස්මකි. 
වස්තු සහ පන්ති අත්වැල් බැඳගනී. 
අපට එකක් ගැන කතා නොකර අනෙකක් ගැන කතා කළ නොහැක. 
තවද Object-Oriented Design හි සම්පූර්ණ කාරණය වස්තූන් ගැන නොවේ, එය පන්ති ගැන ය, මන්ද අපි වස්තු නිර්මාණය කිරීමට පන්ති භාවිතා කරන බැවිනි. 
එබැවින් පන්තියක් වස්තුවක් යනු කුමක්ද යන්න විස්තර කරයි, නමුත් එය වස්තුවම නොවේ.
ඇත්ත වශයෙන්ම, පන්ති වස්තු වර්ගය විස්තර කරන අතර වස්තු යනු පන්තිවල භාවිතා කළ හැකි අවස්ථා වේ. 
සෑම වස්තුවක්ම එකම බ්ලූප්‍රින්ට් කට්ටලයකින් ගොඩනගා ඇති අතර එම නිසා එකම සංරචක (ගුණාංග සහ ක්‍රම) අඩංගු වේ. 
සම්මත අර්ථය නම් වස්තුවක් යනු පන්තියක සහ වස්තුවක නිදසුනකි – Objects has stages and හැසිරීම්.
උදාහරණයක්
බල්ලෙකුට ප්‍රාන්ත ඇත – වර්ණය, නම, අභිජනනය මෙන්ම හැසිරීම් – සෙලවීම, බුරන, කෑම. 
වස්තුවක් යනු පන්තියක උදාහරණයකි.
පන්තියක් යනු කුමක්ද?
UML පන්ති අංකනය
පන්තියක් නියෝජනය කරන්නේ තත්වය ( 
ගුණාංග ) සහ හැසිරීම් ( 
මෙහෙයුම් ) ඇතුළත් වන 
සංකල්පයකි 

සෑම ගුණාංගයකටම වර්ගයක් ඇත. 
එක් එක් 
මෙහෙයුම් සතුව 
අත්සන . 
පන්තියේ නම 
පමණක් අනිවාර්ය තොරතුරු
 වේ.
UML පන්ති අංකනය
පන්තියේ නම:
පළමු කොටසේ පන්තියේ නම දිස්වේ.
පන්ති ගුණාංග:
ගුණාංග දෙවන කොටසේ දැක්වේ.
උපලක්ෂණ වර්ගය කොලනයට පසුව පෙන්වයි.
කේතයේ සාමාජික විචල්‍යයන් (දත්ත සාමාජිකයන්) වෙත ගුණාංග සිතියම්ගත කරයි.
පන්ති මෙහෙයුම් (ක්‍රම):
මෙහෙයුම් තුන්වන කොටසෙහි දැක්වේ. 
ඒවා පන්තිය විසින් සපයනු ලබන සේවාවන් වේ.
ක්‍රමයක ප්‍රතිලාභ වර්ගය ක්‍රම අත්සන අවසානයේ ඇති කොලනයට පසුව පෙන්වනු ලැබේ.
පරාමිති නාමයෙන් පසුව කොලනයට පසුව ප්‍රතිලාභ ක්‍රම පරාමිති පෙන්වනු ලැබේ. 
කේතයේ පන්ති ක්‍රම වෙත මෙහෙයුම් සිතියම්ගත කරන්න
පන්ති මෙහෙයුම්
පන්ති දෘශ්‍යතාව
පන්තියක උපලක්ෂණ සහ මෙහෙයුම් නාමයකට පෙර ඇති +, – සහ # සංකේත මගින් ගුණාංගයේ සහ ක්‍රියාකාරිත්වයේ දෘශ්‍යතාව දක්වයි.
පන්ති දෘශ්‍යතාව
+ පොදු ගුණාංග හෝ මෙහෙයුම් දක්වයි
– පුද්ගලික ගුණාංග හෝ මෙහෙයුම් දක්වයි
# ආරක්ෂිත ගුණාංග හෝ මෙහෙයුම් දක්වයි

පරාමිති දිශානතිය
මෙහෙයුමක් එක් එක් පරාමිතිය (ක්රමය) දී ලෙස දක්වනු විය හැක 
පිටතට හෝ 
inout අමතන්නා සම්බන්ධයෙන් එහි දිශාව විශේෂණය කරන. 
මෙම දිශානතිය පරාමිති නාමයට පෙර පෙන්වයි.
පරාමිති දිශානතිය
පන්ති රූප සටහනේ ඉදිරිදර්ශන
ඉදිරිදර්ශනය තෝරා ගැනීම රඳා පවතින්නේ ඔබ සංවර්ධන ක්‍රියාවලියේ කොපමණ දුරක් සිටිනවාද යන්න මතය. 
වසම් ආකෘතියක් සැකසීමේදී 
, උදාහරණයක් ලෙස, ඔබ 
සංකල්පීය ඉදිරිදර්ශනය පසුකර යන්නේ කලාතුරකිනි 

විශ්ලේෂණ ආකෘති සාමාන්‍යයෙන් 
සංකල්පීය සහ පිරිවිතර ඉදිරිදර්ශනවල මිශ්‍රණයක් 
දක්වයි. 
සැලසුම් ආකෘති සංවර්ධනය සාමාන්‍යයෙන් 
පිරිවිතර ඉදිරිදර්ශනයට දැඩි ලෙස අවධාරණය කරමින් ආරම්භ වන 
අතර 
ක්‍රියාත්මක කිරීමේ ඉදිරිදර්ශනය දක්වා පරිණාමය 
වේ.
රූප සටහනක් විවිධ දෘෂ්ටිකෝණවලින් අර්ථ දැක්විය හැකිය:
සංකල්පීය : වසම තුළ ඇති සංකල්ප නියෝජනය කරයි
පිරිවිතර : මෘදුකාංගයේ වියුක්ත දත්ත වර්ග (ADTs) අතුරුමුහුණත් කෙරෙහි අවධානය යොමු කෙරේ.
ක්‍රියාත්මක කිරීම : පන්ති ඔවුන්ගේ අතුරු මුහුණත් ක්‍රියාත්මක කරන ආකාරය විස්තර කරයි
ඉදිරිදර්ශනය සැපයිය යුතු විස්තර ප්‍රමාණයට සහ ඉදිරිපත් කළ යුතු සම්බන්ධතා වර්ගවලට බලපායි. 
අප ඉහත සඳහන් කළ පරිදි, පන්තියේ නම පමණක් අනිවාර්ය තොරතුරු වේ.
පන්ති රූප සටහනේ ඉදිරිදර්ශන
පන්ති අතර සබඳතා
UML යනු ලස්සන පින්තූර පමණක් නොවේ. 
නිවැරදිව භාවිතා කරන්නේ නම්, UML විසින් රූප සටහන් වලින් කේතය ක්‍රියාත්මක කළ යුතු ආකාරය නිශ්චිතවම ප්‍රකාශ කරයි. 
නිශ්චිතව අර්ථකථනය කරන්නේ නම්, ක්රියාත්මක කරන ලද කේතය නිර්මාණකරුගේ අභිප්රාය නිවැරදිව පිළිබිඹු කරයි. 
පහත රූපයේ දැක්වෙන ඔබේ ඉලක්කගත ක්‍රමලේඛන භාෂාවට සාපේක්ෂව එක් එක් සබඳතාවයන් අදහස් කරන්නේ කුමක්ද යන්න ඔබට විස්තර කළ හැකිද?
ඔබට තවමත් ඒවා හඳුනා ගැනීමට නොහැකි නම්, ගැටලුවක් නැත මෙම කොටස UML පන්ති සම්බන්ධතා තේරුම් ගැනීමට ඔබට උපකාර කිරීමට අදහස් කෙරේ. 
පන්තියක් වෙනත් පන්ති සමඟ සම්බන්ධතා එකකට හෝ වැඩි ගණනකට සම්බන්ධ විය හැකිය. 
සම්බන්ධතාවයක් පහත වර්ග වලින් එකක් විය හැකිය:
පන්ති අතර සබඳතා
උරුමය (හෝ සාමාන්‍යකරණය):
සාමාන්‍යකරණය යනු වඩාත් සාමාන්‍ය වර්ගීකරණයක් සහ වඩාත් නිශ්චිත වර්ගීකරණයක් අතර ඇති වර්ගීකරණ සම්බන්ධතාවයකි. 
නිශ්චිත වර්ගීකරණයේ සෑම අවස්ථාවක්ම සාමාන්‍ය වර්ගීකරණයේ වක්‍ර අවස්ථාවක් ද වේ. 
මේ අනුව, විශේෂිත වර්ගීකාරකය වඩාත් පොදු වර්ගීකරණයේ ලක්ෂණ උරුම කර ගනී.
“is-a” සම්බන්ධතාවයක් නියෝජනය කරයි.
වියුක්ත පන්ති නාමයක් ඇල අකුරු වලින් පෙන්වා ඇත.
SubClass1 සහ SubClass2 යනු SuperClass හි විශේෂීකරණය වේ.
පහත රූපයේ දැක්වෙන්නේ උරුම ධුරාවලියේ උදාහරණයක්. 
SubClass1 සහ SubClass2 SuperClass වලින් ව්‍යුත්පන්න වේ. 
සම්බන්ධතාවය ළමා මූලද්‍රව්‍යයේ සිට මාපිය මූලද්‍රව්‍ය දක්වා යොමු කෙරෙන හිස් ඊතලයක් සහිත ඝන රේඛාවක් ලෙස පෙන්වයි.
උරුමය (හෝ සාමාන්‍යකරණය)
උරුම උදාහරණය – හැඩතල
පහත රූපයේ දැක්වෙන්නේ මෝස්තර දෙකක් සහිත උරුම උදාහරණයකි. 
සම්බන්ධක වෙනස් ලෙස අඳිනු ලැබුවද, ඒවා සංකේතාත්මකව සමාන වේ.
උරුම උදාහරණය - හැඩතල
සංගමය
සංගම් යනු UML පන්ති රූප සටහනක පන්ති අතර සම්බන්ධතා වේ. 
ඒවා පන්ති අතර ඝන රේඛාවක් මගින් නිරූපණය කෙරේ. 
සංගම් සාමාන්‍යයෙන් නම් කරනු ලබන්නේ සැබෑ ලෝක ගැටලු වසම පිළිබිඹු කරන ක්‍රියාපදයක් හෝ ක්‍රියා පදයක් භාවිතා කරමිනි.

සරල සංගමය
සම වයසේ පන්ති දෙකක් අතර ව්‍යුහාත්මක සම්බන්ධයක්.
Class1 සහ Class2 අතර සම්බන්ධයක් ඇත
පහත රූපයේ දැක්වෙන්නේ සරල ඇසුරේ උදාහරණයක්. 
<< පාලනය>> පන්තියේ 1 සහ << මායිම්>> පන්තියේ පන්තිය සම්බන්ධ කරන සංගමයක් ඇත. 
සම්බන්ධතාවය පන්ති දෙක සම්බන්ධ කරන ඝන රේඛාවක් ලෙස පෙන්වයි.
සරල සංගමය
කාදිනල්කම
කාදිනල් බව ප්‍රකාශ වන්නේ:
එකට එක
එකකට බොහෝ
බොහෝ සිට බොහෝ
කාදිනල්කමඑකතු කිරීම
විශේෂ ආකාරයේ සංගමයක්.
එය සම්බන්ධතාවයේ “කොටසක්” නියෝජනය කරයි.
Class2 යනු Class1 හි කොටසකි.
Class2 හි බොහෝ අවස්ථා (* මගින් දක්වනු ලැබේ) Class1 සමඟ සම්බන්ධ කළ හැක.
Class1 සහ Class2 හි වස්තු වලට වෙනම ආයු කාලයක් ඇත.
පහත රූපය එකතු කිරීමේ උදාහරණයක් පෙන්වයි. 
සම්බන්ධතාවය සංගම් කෙළවරේ පුරවා නොගත් දියමන්තියක් සහිත ඝන රේඛාවක් ලෙස ප්රදර්ශනය කෙරේ, එය සමස්ථය නියෝජනය කරන පන්තියට සම්බන්ධ වේ.
එකතු කිරීම
සංයුතිය
සම්පූර්ණ විනාශ වූ විට කොටස් විනාශ වන විශේෂ එකතු කිරීමක්.
2 පන්තියේ වස්තු 1 පන්තිය සමඟ ජීවත් වී මිය යයි.
2 පන්තියට තනිවම සිටිය නොහැක.
පහත රූපයේ සංයුතියේ උදාහරණයක් පෙන්වයි. 
සම්බන්ධතාවය සම්පූර්ණ හෝ සංයුක්ත නියෝජනය කරන පන්තියට සම්බන්ධ වූ සංගමයේ කෙළවරේ පිරවූ දියමන්තියක් සහිත ඝන රේඛාවක් ලෙස ප්රදර්ශනය කෙරේ.
සංයුතිය
යැපීම
එක් පන්තියක වස්තුවක් වෙනත් පන්තියක වස්තුවක් ක්‍රමයක කේතයේ භාවිතා කළ හැකිය. 
වස්තුව කිසියම් ක්ෂේත්‍රයක ගබඩා කර නොමැති නම්, මෙය පරායත්ත සම්බන්ධතාවක් ලෙස හැඩගස්වා ඇත.
විශේෂ ආකාරයේ සංගමයක්.
එකක නිර්වචනයේ වෙනස්කම් අනෙකට වෙනස් වීමට හේතු විය හැකි නම් (නමුත් අනෙක් අතට නොවේ) පන්ති දෙකක් අතර පවතී.
Class1 Class2 මත රඳා පවතී
පහත රූපය පරායත්තතාවයේ උදාහරණයක් පෙන්වයි. 
සම්බන්ධතාවය විවෘත ඊතලයක් සහිත ඉරි සහිත රේඛාවක් ලෙස පෙන්වනු ලැබේ.
යැපීමපහත රූපය පරායත්තතාවයේ තවත් උදාහරණයක් පෙන්වයි. 
පුද්ගල පන්තියට පොත් පරාමිතියක් සහිත hasRead ක්‍රමයක් තිබිය හැකි අතර එය පුද්ගලයා පොත කියවා ඇත්නම් එය සත්‍ය වේ (සමහර විට යම් දත්ත ගබඩාවක් පරීක්ෂා කිරීමෙන්).
යැපීම
අවබෝධ කර ගැනීම
අවබෝධය යනු බ්ලූපින්ට් පන්තිය සහ එහි අදාළ ක්‍රියාත්මක කිරීමේ මට්ටමේ විස්තර අඩංගු වස්තුව අතර සම්බන්ධයකි. 
මෙම වස්තුව බ්ලූප්‍රින්ට් පන්තිය සාක්ෂාත් කරන බව කියනු ලැබේ. 
වෙනත් වචන වලින් කිවහොත්, ඔබට මෙය අතුරු මුහුණත සහ ක්රියාත්මක කිරීමේ පන්තිය අතර සම්බන්ධය ලෙස තේරුම් ගත හැකිය.
උදාහරණයක් ලෙස, හිමිකරු අතුරුමුහුණත දේපල අත්පත් කර ගැනීම සහ දේපල බැහැර කිරීම සඳහා ක්‍රම නියම කළ හැක. 
පුද්ගල සහ සංස්ථා පන්ති මෙම ක්‍රම ක්‍රියාත්මක කිරීමට අවශ්‍ය වේ, සමහර විට ඉතා වෙනස් ආකාරවලින්.
අවබෝධ කර ගැනීම
පන්ති රූප සටහන උදාහරණය: ඇණවුම් පද්ධතිය

පන්ති රූප සටහන උදාහරණය: ඇණවුම් පද්ධතිය
පන්ති රූප සටහන උදාහරණය: GUI
පන්ති රූප සටහනක පන්ති හෝ සබඳතාවලට සම්බන්ධ සටහන් ද තිබිය හැක.
පන්ති රූප සටහන උදාහරණය: GUI

Copyright@ 2021. All rights reserved. -NVQ Project-

Don`t copy text!