Saturday, 9 March 2019

Design Pattern වර්ගීකරණය


Design Pattern ඒවායේ සංකීර්ණතාවය, විස්තර වල මට්ටම හා යොදුම් පරාසය(ආදේශ කළ හැකි අවස්ථාවන් ප්‍රමාණය) අනුව වෙනස් වේ. එය හරියට මාර්ග ඉදිකීරීමේ ව්‍යුහය වගේ. මාර්ගයේ මගී හා රථවාහන අරාක්ෂාව  සදහා කඩ ඉරි සමග Traffic light පද්ධතියක් ස්ථාපිත කිරීම හෝ මගී ගුවන් පාලම්(හෝ භූගත උමං) සෑදීම යන දෙකෙන්  එකක් යොදා ගත හැක. ඒ දෙකම එකම ගැටලුවට විසදුම් ලබා දුන්නත් විසදුම් දෙක එකිනෙකට වෙනස් ය.

ගොඩක්ම මූලික හා පහල මට්ටමේ Pattern  හදුන්වන්නේ idioms(ඉංගිසියේදී රූඩි, වාග සම්පදාය හා පිරුඑ යන අර්ථය ලබා දේ) කියාය. මේවා තනි ක්‍රමලේඛ භාශාවකට පමණක්ම යෙදේ.

ගොඩක්ම universal(සර්වත්‍ර) හා ඉහළ මට්ටමේ Pattern  එක architectural patterns වේ. මේවා තනි ක්‍රමලේඛ භාශාවකට පමණක්ම යෙදේ. Developers ලට මෙම patterns  තාත්විකව ඕනෑම භාෂාවකින් ගොඩනැංවිය හැක. අනෙක් Pattern මෙන් නොව මේවා සම්පූර්ණ application එකේ architecture  එක design කිරීමට යොදා ගැනේ.

මීට අමතරව patterns, ඒවායේ අරමුණු හා බලාපොරොත්තු(intent එක) අනුව බෙදේ. ඒ අනුව මූලික කොටස් 3කී.
ඒවා

  • Creational patterns
  • Structural patterns
  • Behavioral patterns


Creational patterns

මෙම pattern වර්ගය class එකකින් object නිර්මාණය වීම පිළිබදව වේ. මේවා තවදුරටත්  කොටස් දෙකකට බෙදේ. ඒවා class-creation patterns හා object-creational patterns වේ. class-creation patterns වලදී instantiation ක්‍රියා වලියේදී inheritance එක එලදායිව යොදාගැනීම ගැන සලකා බැලෙන අතර object-creational patterns වලදී කාර්ය අවසන් කර ගැනීමට එලදායි ලෙස delegation (පැවරීම් ) සිදුකිරීම සලකා බැලේ.

Structural patterns

මෙම pattern වර්ගය class එකේ හා object එකේ සංයුතිය පිළිබදව වේ. මෙය ද ඉහත  patterns එක මෙන් කොටස් දෙකකට බෙදේ. එවා Structural class-creation patterns එක හා Structural object-patterns. අතුරුමුණත් තනා ගැනීමට  inheritance භාවීතා කිරීම Structural class-creation patterns වලින් සිදුකරන අතර අලුත් functionality ලබා ගැනීමට objects තනා ගන්නා විදිහ Structural object-patterns වලදී සලකා බැලේ.

Behavioral patterns

මෙම pattern වර්ගය class එකේ  object වල සන්නීවේදනය පිළිබදව වේ. ඒ කියන්නේ object අතර එලදායි ලෙස සන්නීවේදනය  කරන ආකාරය හා ඒවා අතර වගකීම් පැවරීම් ආදීය ගැන සලකා බැලේ.

No comments:

Post a Comment