ඔබ සොලිඩ් (SOLID) මූලධර්ම ගැන දැන ගැනීමට බැරෑරුවෙන් පොරෙත් කරනවා නම්, ඔබ නිවැරදි තැනට පැමිණියා! සොලිඩ් යනු පංච මූලධර්මයන්ගේ කෙටි නමකි. ඒවා වෙන් වෙන් වශයෙන් නිර්මාණය කර ඇත්තේ ආකාරය අනුව නමුත් එකට යොදවා භාවිතා කරනු ලැබේ.
සංගත මූලධර්මය (Single Responsibility Principle - SRP) විවෘත/වෘත මූලධර්මය (Open/Closed Principle - OCP) ලිස්කොව් ප්රතිස්ථාපන මූලධර්මය (Liskov Substitution Principle - LSP) අතුරුමුහුදු මූලධර්මය (Interface Segregation Principle - ISP) ප්රතිවර්තන මූලධර්මය (Dependency Inversion Principle - DIP) මේවා එක් එක් මෘදුකාංග නිර්මාණ මූලධර්මයන් වන අතර, මෘදුකාංග නිර්මාණය කිරීමේදී උපයෝගී කරනු ලැබේ. මෙම මූලධර්මය පවසන්නේ, “අපේක්ෂිත වෙනස්වීම් සඳහා හොඳම ස්ථානයක් වන එක්, තනි මොඩියුලයක් හෝ ක්ලාස් එකක් විය යුතුය.”
මෙම මූලධර්මය, ඔබේ ක්ලාස් එක හෝ මොඩියුලය නිර්මාණය කිරීමේදී, අධිගත වර්ගයන් අඩු වර්ග මත යැපෙන බවට සැලකිය යුතු බව පවසයි.
මෙම මූලධර්මය, ඔබේ ක්ලාස් එක හෝ මොඩියුලය නිර්මාණය කිරීමේදී, පදනම් වර්ගයක් සහ ව්යුත්පන්න වර්ගයක් අතර සම්බන්ධතාවය නිවැරදිව තහවුරු කළ යුතු බව පවසයි. මූලධර්මය පවසන්නේ, “පොදු අතුරුමුහුදු භාවිතා කරන්නන්ට, භාවිතයට අවශ්ය නොවන ක්රම හෝ ගුණාංග මත යැපීමට අවශ්ය නැත.”
මෙම ලිපියෙන්, අපි සොලිඩ් මූලධර්මයන් පිළිබඳව සාකච්ඡා කළෙමු. මෙම මූලධර්මයන් මෘදුකාංග නිර්මාණය කිරීමේදී ඔබට විශාල උපයෝගයක් වනු ඇතැයි අපි බලාපොරොත්තු වෙමු.
මෙයින් අදහස් කරන්නේ, ඔබේ ක්ලාස් එක හෝ මොඩියුලය එක් විශේෂිත කාර්යයක් හෝ වගකීමක් පමණක් ඉටු කළ යුතු බවයි. මූලධර්මය පවසන්නේ, “සංස්ථාවක් විස්තාරණය සඳහා විවෘත විය යුතුය, නමුත් වෙනස් කිරීම් සඳහා වෘත විය යුතුය.”