සොෆ්ට්වෙයා සංවර්ධනයේදී වස්තු (object) නිර්මාණය සරල කරගැනීමේ ගැටලුවක් නිතරම අපට මුහුණ දෙන්නේ. විශේෂයෙන්ම විශාල පරාමිතීන් ගණනකින් යුත් constructor එකක් භාවිතා කරන විට, කේතය කියවීමට බොහෝ කාලයක් ගතවෙයි, පසුදා වැරදිද මතුවෙයි.
උදාහරණයක් ලෙස, විද්යාත්මක ප්රකාශන සමාගමක පත්රිකා ඉදිරිපත් කිරීමේ පද්ධතියක් සාදන අතරතුර, ManuscriptSubmissionService නමැති class එකක් ලියා තිබුණා. එහි __init__ ක්රමය තුළ තිසර පරාමිතීන් (title, abstract, authors, affiliations, keywords, references, funding, ethics, conflicts, supplementary_files, cover_letter, supporting_files, manuscript_attachment) එකට එකතුව තිබුණා.
එම constructor එක භාවිතා කරමින් වස්තුවක් තැනීම මෙහෙමයි:
submission = ManuscriptSubmissionService(
"Covid-19 study",
"some random abstract goes here",
"a1, a2, a3",
"aff1, aff2, aff3",
"keyword1, keyword2",
"references1, references2",
"funding1",
"ethic1",
"conflict1",
"supplementary1",
"manuscript1",
"supporting_file1",
"manuscript_attachment1",
)මෙම “monster constructor” එකේ පරාමිතීන් ගණනාව නිසා, කෝඩ් කියවීම අමාරුයි, වැරදි කිරීමට ඉඩ තිබේ. පළමු විසඳුම ලෙස named parameters (keyword arguments) භාවිතා කරමින් code එක සරල කළා, නමුත් ඒකේ සියලු පරාමිතීන් optional කර තිබීම නිසා, වැදගත් තොරතුරු අඩුවී පද්ධතිය අසාර්ථක විය හැක.
දෙවැනි විසඳුම වශයෙන් constructor තුළ validation එකතු කරමින්, අත්යවශ්ය පරාමිතීන් පිරවිය නොමැතිව වස්තු නිර්මාණය නොහැකි බවට error නිකුත් කරයි. මෙයින් පද්ධතියේ ගුණාත්මකභාවය වැඩි වීමත්, අනාගතයේ bugs පාලනය කර ගැනීමට හැකියාව ලැබේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ තරුණ සංවර්ධකයින්ට මෙම Builder Pattern යෙදුම ඉගෙන ගැනීම, වඩාත් පැහැදිලි, නිරවද්ය API නිර්මාණයට මාර්ගයක් සැලසීමයි. විශ්වවිද්යාල සිසුන්ට software design patterns පිළිබඳ ප්රායෝගික උදාහරණයක් වශයෙන් භාවිතා කළ හැක, එය ඔවුන්ගේ capstone project හෝ startup ideas සඳහා අත්යවශ්ය වේ.
ව්යාපාරික පාර්ශවයෙන්, නිවැරදි object creation මගින් data integrity රැක ගැනීම, පද්ධති පසුබැසීම් (downtime) අඩු කිරීම, හා පාරිභෝගික විශ්වාසය වැඩි කිරීමේ ලාභයක් ලැබේ. ඒ නිසා, ශ්රී ලංකාවේ IT සමාගම්ටත්, රජයේ e‑services වලටත් මේ තාක්ෂණය භාවිතා කිරීම ඉතා ප්රයෝජනවත් වේ.
අවසානයේ, Builder Pattern එකේ අරමුණ වන්නේ “invalid objects” නිර්මාණය වීම අත්යවශ්යයෙන් වැළැක්වීමයි. ඔබේ කේතය සරල, කියවීමට පහසු, හා නිරවද්ය කර ගැනීමට අදම Builder Pattern එක අරඹන්න.