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

ඉන්ධන-චලිත සංවර්ධනය: AI සමඟ කේත නිර්මාණයේ අලුත් පියවර

ඉන්ධන-චලිත සංවර්ධනය: AI සමඟ කේත නිර්මාණයේ අලුත් පියවර

GitHub හි නව ඉෂ්‍යු එකක් ලැබුණා. දෙකක් එකිනෙකට සමාන Laravel Event Listener දෙක, සෑම එකකම 130 පේළි, එකම entity එක ලෝඩ් කර, බාහිර API කිහිපයක සමග sync ජීවනචක්‍රය කළ, පස් UseCase ක්ලැස් එකක් එකිනෙකට අනුක්‍රමයෙන් කැඳවලා, දෝෂ හසුරුවා යන කාර්යයන් අඩංගු වුණා.

ඉෂ්‍යු එකේ යෝජිත විසඳුම “SyncUseCase” එකක් හදලා දෙකම ඒක භාවිතා කරන එක. එහෙම කරලා නම් වැඩේ පැහැදිලිව සම්පූර්ණ වුණා, එක පැයකින් හෝ AI එකට මිනිත්තු 10කින් කරගන්න පුළුවන්. නමුත් ලේඛකයාට තවත් “itch” එකක් වැටුණා – “use case එකක් service එකකට, ඒ service එකක් තවත් use case එකකට යනවා” කියලා.

ඉන්පසු තේරුණේ ප්‍රශ්නය listener duplication එක නොව, නමකරණය සහ ස්ථරය බවයි. “God‑class” UseCase එක එකම ස්ථරයේ අයෙක් වගේ වැඩ කරලා, අනෙක් class ගොඩක් orchestrate කරලා තිබුණා. ඒක සරලව “workflow” එකක් හෝ “orchestrator process” එකක් එක් කරලා විසඳන්න පුළුවන්.

ලේඛකයා නව sub‑layer එකක්, $this->workflowPipeline නමින්, හදලා, steps, skippable, run වගේ method ගොඩක් එකතු කරලා. ඒකෙන් Listener එකේ කේතය 130 පේළි වලින් කෙටි කරලා, public function handle(...){ $this->flow->run($event->targetId); } වගේ ලයින් එකක් පමණක් ඉතිරි වුණා.

මෙම අලුත් සැලසුම පසුගිය listener, handler, වෙනත් code කොටස් වලටත් අනාගතයේ ප්‍රයෝජනවත් වේ. AI එකට එවැනි ඉෂ්‍යු දෙයක් දුන්නා නම්, “GigaChadSyncUseCase” වගේ එකක් හදලා, DRY වශයෙන් ඉවර කරලා, unit test පසුතැවීමත්, code review එකත් සාර්ථකව අවසන් කරලා විය. නමුත් එහෙම කරලා නම් සංරචනාත්මක අවබෝධය අහිමි වනු ඇත – services, use cases එකිනෙකට අතුරුදන් වීම, future‑proofing අඩුවීම.

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

  • සිසුන් – කේත ගොඩනැගීමේදී “pain” එකක් හෝ “friction” එකක් අත්කරගැනීමෙන්, architecture ගැන හොඳ අවබෝධයක් ගොඩනගා ගත හැක.
  • ඩෙවලපර්වරු – AI‑generated code එකේ hidden complexity හඳුනාගැනීමට, maintainability සහ scalability වැඩි කරන design pattern ඉගෙන ගත හැක.
  • ව්‍යාපාර – අනාගතයේ වැඩි maintenance cost, බොග් එකක් වීමේ අවදානම අඩු කර, codebase එකේ clarity එක වැඩි කර, ඉක්මනින් feature rollout කරගැනීමට උපකාරී.

ඉන්ධන‑චලිත සංවර්ධනය (Pain‑Driven Development) කියන්නේ, කේතයේ “අනතුරු” එකක් හමුවේ පමණක් නව layer එකක් හෝ pattern එකක් හඳුන්වා දෙන්නෙ. එය AI‑ට පමණක් බෙදා හරිනවා නොව, සංවර්ධකයාගේ මනෝබලය, අවබෝධය, සහ ඉදිරි දිගුවට සූදානම වර්ධනය කරයි.

අවසන් වශයෙන්, AI කේත ලිවීමේ කාර්ය සාධනය ඉහළ දැමුවත්, “architectural insight” අහිමි වීමේ පාරදර්ශනය නොඅඩුවන්න. අපි “pain” එක භාවිතා කරලා, වැඩි හොඳ, පැහැදිලි, future‑ready system එකක් ගොඩනගමු.

💡 ඔබේ කේතයෙහි පීඩාවන් හඳුනාගෙන, අනාගතයට සූදානම් වන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#AI #Laravel #UseCase #Workflow #Architecture