දිරියට දිගුකාලීනව පවත්වාගෙන යන JavaScript සහ TypeScript ව්යාපෘති වල, කාලයත් සමඟ කේතයෙහි අතුරුදන් වූ කොටස් තුනක් එකතු වෙලා පවතී. package.json එකේ දැන් කිසිවක් ආයාත නොකරන dependencies, භාවිතා නොවන exports, සහ import graph එකෙන් පිටවූ ගොනු. මේවා build එකේ වැරදි නොකරන නිසා, නව සංවර්ධකයන්ට onboarding කාලය වැඩි වෙයි, bundle size අසාර්ථකව වැඩි වේ.
මෙම ගැටලුවට විසඳුමක් ලෙස, ලාස් කපර්ට් විසින් නිර්මාණය කළ knip මෙවලම ඉදිරිපත් කරයි. නවතම npm command එකක් npx knip ධාවනය කිරීමෙන්, ඔබේ සම්පූර්ණ කේත ගොනුව, dependencies, exports යන සියල්ල එකවර පරීක්ෂා කරයි. මෙය import graph එකට සෘජුව සම්බන්ධ කර, භාවිතා නොවන අංග හඳුනාගනී.
උදාහරණයක් ලෙස, knip ධාවනය කළ විට පහත ආකාරයෙන් ප්රතිඵල ලැබේ:
- Unused files (2): src/legacy/formatValue.ts, src/hooks/useLegacyModal.ts
- Unused dependencies (3): lodash, moment, @types/uuid
- Unused exports (5): parseLegacy, toLegacyDate, ...
මෙම වාර්තාවේ තේරුම සරල – එකක් හෝ එකක් ප්රකාශිතයි, නමුත් කිසිවක් භාවිතා නොකරයි. ඒ නිසා එය ඉවත් කිරීමෙන් කේත පිරිසිදු කිරීම, bundle size අඩු කිරීම, සහ අලුත් සංවර්ධකයන්ට කේතය තේරුම් ගැනීම පහසු වේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ තාක්ෂණික සමාජය තවමත් කුඩා ව්යාපාර සහ විශ්වවිද්යාල සිසුන් මත පදනම්ව පවතී. knip වැනි මෙවලම් භාවිතා කිරීමෙන්:
- සිසුන්ට පළමු ව්යාපෘති සකස් කරන විට අතුරුදන් වූ කේතය හඳුනාගෙන, ඉක්මනින් පිරිසිදු කර ගත හැක.
- දෙවන පාර්ශවීය සමාගම්ට නිෂ්පාදන bundle එකේ අතුරුදන් වූ dependencies ඉවත් කර, performance වැඩි කර ගත හැක.
- ඉන්දීය ආකාරයේ ඉන්ටර්නෙට් සෙවීම් හා තාක්ෂණික සේවා සපයන ස්ථානයන්ට නවීන dev tool එකක් ලෙස knip එකක් ගෙන එමින්, ගෝලීය තරඟකාරිත්වයට සූදානම් විය හැක.
ඉදිරියේදී, Python, Go, Rust වැනි භාෂා සඳහා ඒවගේම ත්රි-එකක වාර්තා ලබා දෙන මෙවලම් අවශ්යතාවය වැඩි වනු ඇත. මේ මොහොතේ, JavaScript/TypeScript සංවර්ධකයන්ට knip එක අත්හදා බැලීම ඉතා ප්රයෝජනවත්.
ඉතිං, ඔබේ ව්යාපෘතියේ අතුරුදන් වූ කේතය පිළිබඳ සැකයක් තිබේ නම්, අදම knip ධාවනය කර, පිරිසිදු, වේගවත්, සහ භාවිතා කරන්නාට හොඳ අත්දැකීමක් ලබා දෙන්න.