Node.js භාවිතා කරන Express සර්වරයක් සහ Go භාෂාවේ සමාන සේවාදායකයක් එකම ලියාපදිංචි (POST /register) අන්තර්මුඛය මත පරික්ෂා කිරීමේ නව පරිදි පෙන්වයි. දෙකේම කේතය ව්යවස්ථාගතව, ව්යාපාර නීතිය (business logic) හා HTTP හඳුනාගැනීමේ කාර්යයන් වෙන්ව ඇත.
Express න්යාය පද්ධතියේ registerUser ෆංක්ෂනය ඉන්පුට් වල සත්යාපනය, password hash කිරීම, දත්ත සමුදායෙහි ලේඛන ඇතුළත් කිරීම, සහ සාදන ලද ඊමේල් පණිවුඩයක් යැවීම යන පියවර සියල්ල කරයි. මෙම ෆංක්ෂනය HTTP ඉල්ලීම් වලින් සම්පූර්ණ වෙන්ව ඇති නිසා, ඒක තනිව පරීක්ෂා කළ හැකි අතර සේවාදායකයක් ඇරඹීමට අවශ්ය නොවේ.
Go අනුවාදයත් ඒකම සංකල්පයෙන් ක්රියා කරයි. RegisterUser ෆංක්ෂනය database/sql භාවිතයෙන් සෘජු SQL ප්රශ්න සිදු කරයි, bcrypt මඟින් password hash කරයි, සහ ඊමේල් යැවීමේ දෝෂ පාලනය කරයි. Express හි ORM Prisma වෙනුවට Go හි සාමාන්ය SQL භාවිතය පෙන්වයි, ඒත් ව්යාපාර නීතියේ වෙන්වීමේ අදහස එකම වේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ සංවර්ධකයන්ට මෙම උදාහරණය දෙකම බලන්නෙන් ලැබෙන ප්රධාන වාසි කිහිපයක් ඇත:
- කේත වෙන්වීමේ (separation of concerns) නියමය – ලොජික් එකක් වෙන්ව ඇති නිසා ඒක පරීක්ෂා කිරීම හා නව පරිසරයන්ට ගෙනයෑම සරල වේ.
- බහුභාෂා පරිසරයන්හි සමාන ආකෘතියක් – Node.js, Go වැනි භාෂා අතර ඒකම සැලැස්ම පවත්වා ගත හැකි බැවින් කණ්ඩායම් අතර සම්බන්ධතාවය වැඩිවේ.
- දත්ත සමුදා තේරීමේ නිදසුන – Prisma ORM හා SQL භාවිතය අතර වෙනස්කම් පෙනේ, එය තෝරා ගැනීමට සහ දැන ගැනීමට අවස්ථාව සලසයි.
මෙම ආකෘතිය භාවිතා කරමින්, ශ්රී ලංකාවේ තරුණ සංවර්ධකයන්ට පරිසර-අනුවාදිත (environment-agnostic) කේත ලියන හැකියාව, තත්ත්ව පරීක්ෂා කිරීම, සහ වේගවත් MVP (Minimum Viable Product) නිර්මාණය කිරීමේ හැකියාව ලැබේ.
අවසන් වශයෙන්, කේතය වෙන්වීම, පරීක්ෂා කිරීමේ පහසුව, සහ බහුභාෂා අනුකූලතාවය මේ වගේ උදාහරණයන්ගෙන් පෙනේ. ඔබත් ඔබේ ව්යාපෘතියේ මෙවැනි සැලැස්මක් අරඹන්න.