ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-21, Tuesday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

2026 දී TypeScript අබ්ස්ට්‍රැක්ට් ක්ලාස් සහ Interface: කවදා, කෙසේ භාවිතා කරනවා?

2026 දී TypeScript අබ්ස්ට්‍රැක්ට් ක්ලාස් සහ Interface: කවදා, කෙසේ භාවිතා කරනවා?

TypeScript සංවර්ධකයින් අතර අබ්ස්ට්‍රැක්ට් ක්ලාස් සහ Interface ගැන ඇති ගැටළුව, ඉතාමත් සරල නොවේ. දෙකම "කොන්ට්‍රාක්ට්" කියලා පෙනෙනවද, ඒත් ඒවායේ භාවිතය එකසේ නොවේ. 2026 වසරේ, මේ දෙකේ වෙනස තේරුම් ගන්න එකම මාර්ගය, කුමන අවස්ථාවට කුමක් තෝරා ගන්නද කියලා හොඳින් බලන එකයි.

අබ්ස්ට්‍රැක්ට් ක්ලාස් කියන්නේ, කොන්ට්‍රාක්ට් එකත්, ක්‍රියාත්මක කේතයක් (implementation) එකත් එකට දෙන පදනමක්. එහෙම කියන්නෙ, ඒකෙ තියෙන මූලික ක්‍රියාකාරීත්වය සහ state (තත්ත්වය) සියලු උපකලාස් (subclass) එකට වාරිකව ලබා දෙනවා. එයට වඩා Interface පමණක් වස්තුවේ හැඩය (shape) නියම කරයි, ක්‍රියාත්මක කේතයක් නොදෙයි. ඒ නිසා Interface එකක් භාවිතා කරද්දී, JavaScript කේතයක් සෑදෙන්නේ නැතිව, සම්පූර්ණයෙන් compile-time පරීක්ෂාවක් පමණයි.

ඉතිං, ඔබේ ප්‍රොජෙක්ට් එකේ “කොන්ට්‍රාක්ට් පමණක්” අවශ්‍ය නම් Interface භාවිතා කරන්න. මෙහිදී විවිධ, සම්බන්ධ නොවන ක්ලාස් එකට එකම හැඩය අනුගමනය කරගැනීමට ඉඩ ලැබේ, bundle size එකත් අඩුයි. නමුත්, ඔබේ උපකලාස් එකට එකම logic එකක් හෝ state එකක් බෙදාගත යුතු නම්, අබ්ස්ට්‍රැක්ට් ක්ලාස් තෝරන්න. මෙය code duplication අවම කරලා, runtime errors අඩු කරයි.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ තාක්ෂණික ශිෂ්‍යයින්, ඩිවෙලපර්ස්, ව්‍යාපාරිකයින්ට මේ තේමාව වැදගත්. Interface භාවිතා කරලා, මොඩියුලර්, plug‑in පද්ධති හෝ event‑driven architecture නිර්මාණය කිරීම සරල වේ. එමඟින්, රැකියා වෙළඳපලේ demand කරන “type‑safe” සහ “maintainable” කේත ලිවීමේ හැකියාව වැඩි වෙයි.

  • ශිෂ්‍යයින් – Interface මඟින් structural typing ඉගෙන ගනිමින්, කේතයෙ අඩු පරමාණුවක් පමණක් අවශ්‍ය බව තේරුම් ගනී.
  • ඩිවෙලපර්ස් – අබ්ස්ට්‍රැක්ට් ක්ලාස් භාවිතා කරලා shared logic එකක් අඩු duplication සමඟ අරගෙන, වැඩ වේගවත් කරගන්න පුළුවන්.
  • ව්‍යාපාර – bundle size අඩු කිරීම සහ runtime performance වැඩි කිරීම මඟින්, වෙබ්/මොබයිල් ඇප්ස් වල ලෝඩ් වේලාව අඩු කරලා, පාරිභෝගික අත්දැකීම උසස් කරයි.

ඉදිරියේදී, hybrid pattern එකක් (අබ්ස්ට්‍රැක්ට් ක්ලාස් එක Interface එකක් ඉම්ප්ලයි කරන) භාවිතා කරලා, contract සහ implementation දෙකම වෙන් කරගන්න පුළුවන්. ඒකින් ලැබෙන ලාභය, flexibility හා code reuse එකම වේලාවේ ලැබීමයි.

අවසන් වශයෙන්, ඔබේ කේතයෙ contract එකට shared code අවශ්‍යද කියලා පළමුව හදාරා, Interface හෝ අබ්ස්ට්‍රැක්ට් ක්ලාස් තෝරන්න. එමඟින් ඔබේ පද්ධතිය ලවීන, maintainable, සහ performance‑friendly වේ.

💡 ඔබේ කේතයට නිවැරදි කොන්ට්‍රාක්ට් තෝරාගන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#TypeScript #Interface #අබ්ස්ට්‍රැක්ට් ක්ලාස් #කෝඩ්