Python භාෂාව භාවිතා කරන වැඩි සංඛ්යාවක සංවර්ධකයන්ට, නියුරල් ජාල පුහුණු කිරීම, ඉන්ෆ්රාස්ට්රක්චර් ස්වයංක්රීය කිරීම, හෝ වසර ගණනාවක පද්ධති නඩත්තුව කිරීම වැනි කාර්යයන් කරද්දී, virtual environment (venv) ගැන අවබෝධයක් අඩුයි. එය ඇත්තෙන්ම Python පරිසරයක් වෙන් කරගැනීමට ඇති ප්රායෝගික උපකරණයක් බවට සැලකෙන්නේ නැති නිසාය.
venv කියන්නේ "කන්ටේනර්" නොවේ; එය පද්ධතියේ අනෙකුත් Python ක්රියාවලියන් සමඟ ඔබේ ක්රියාවලිය වෙන් කරන්නේ නැත. එය virtual machine නොවේ, හෝ සම්පූර්ණ sandbox නොවේ. වස්තුව සරලව කිවහොත්, ඔබේ ව්යාපෘතියට අදාල interpreter සැකසුම් සහ dependency ගොනු රඳා ඇති ෆෝල්ඩරයක් පමණයි.
මෙම සරල සැලැස්මෙන් ලැබෙන ප්රධාන ප්රතිලාභ කිහිපයක් ඇත:
- Dependency Isolation – ව්යාපෘති අනුව වෙන්වූ package space එකක් නිසා එකම පද්ධතියේ වෙනත් ව්යාපෘති වලට බලපාන්නේ නැත.
- Activation අවශ්ය නොවේ – shell එකේ PATH වෙනස් කර python, pip වැනි කමන්ඩ්වලට වෙන්වූ interpreter භාවිතා කළ හැක, නමුත් .venv/bin/python ලෙස සෘජුවම ධාවනය කළ හැක.
- Offline Install – එකම මැෂින් එකේ .whl ගොනු සකස් කර, අන්තර්ජාලය නැති සේවාදායකයකට ප්රේරණය කර offline pip install කළ හැක.
උදාහරණයක් ලෙස, Machine A (අන්තර්ජාල සම්බන්ධිත, පූර්ණ අවසර) මත venv සකස් කර pip install empy කර ගෙන, එම .whl ගොනු Machine B (අන්තර්ජාල රහිත, සීමාකළ පරිසර) වෙත නගා, ./.venv/bin/python -m pip install empy‑0.5.2‑py3‑none‑any.whl ලෙස ස්ථාපනය කළ හැක.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ බහුතරය ඉගෙනුම, ව්යාපාරික ව්යාපෘති, හෝ start‑up පදනම් කරගෙන Python භාවිතා කරන නිසා, venv පිළිබඳ අවබෝධය ඉතා වැදගත් වේ. පළමු වසරේ සිසුන්ට පද්ධති ගැටළු නොමැතිව කේත ලියන්න ඉඩ සලසයි. ද්විතීයික වශයෙන්, ස්ථානීය සමාගම්ට dependency ගැටළු නිසා ව්යාපාරික සේවා නවත්වීමෙන් වළක්වා ගත හැක. තවත් එක් ලාභයක් වන්නේ, ආරක්ෂිත පරිසරයක් තුළ AI, API, cloud සේවා සංවර්ධනය කර, පද්ධති ආරක්ෂාව ඉහළ දැමීමයි.
අවසන් වශයෙන්, venv භාවිතය Python සංවර්ධකයන්ට "මගේ යන්ත්රය මත වැඩ කරන්නේ" යන ප්රශ්නයට පිළිතුරක් ලබා දෙයි. ඔබේ ව්යාපෘතියේ පද්ධති අවශ්යතා ස්පෂ්ටව, ආරක්ෂිතව, සහ පරිසර-අනුව පාලනය කළ හැකි බවට විශ්වාසයක් ලබා දෙයි.