පරිගණක මෘදුකාංග (Computer Software) යනු පරිගණකයක් භාවිතා කර යම් කටයුත්තක් කර ගැනීමට ඇති පරිගණක වැඩසටහන් (Programs), ඒ සම්බන්ධ උපදෙස්, ලේඛන, ක්රියාවලි එකක් හෝ කිහිපයක එකතුවකි.
පරිගණක වදන් සකසන මෘදුකාංග වැනි යෙදුම් මෘදුකාංග (Application Software) මෙන්ම මෙහෙයුම් පද්ධති (Operation System) වැනි පද්ධති මෘදුකාංගද (System Software) මීට අයත් වේ. තවද සේවා පද්ධති (Servers), විසිරි පද්ධති (Distributed Computers) වල ක්රියාකාරීත්වයටද මෘදුකාංග අවශ්ය වේ.
දෘඩාංග හා මෘදුකාංග
දෘඩාංග (Hardware) යනු පරිගණකයක ඇති භෞතික වස්තූන්ය. ඊට සාපේක්ශව මෘදුකාංග යනු භෞතිකව ස්පර්ශ කල නොහැකි දෙයකි. එමෙන්ම අපට මෘදුකාංගයක් ක්රියා කරවිය හැක්කේ දෘඩාංගයක් මතය, (මෘදුකාංගයක් අපට ගෝචර වන්නේ දෘඩාංග වල ක්රියාකාරීත්වය මතය). එනම් දෘඩාංග ක්රියා කරනුයේ එය මත ක්රියා කරන මෘදුකාංගය අනුවය. මෘදුකාංගයක් යනු එය ක්රියාත්මක වන දෘඩාංගය සඳහා දෙන ලද උපදෙස් මාලාවකි. මෙසේ දෘඩාංග වල ක්රියාකාරීත්වය පාලනය කිරීම සඳහාම නිපදවන ලද මෘදුකාංග පද්ධති මෘදුකාංග හෝ මෙහෙයුම් පද්ධති ලෙසද හැඳින්වේ.
මෘදුකාංගයක් පරිගණකයේ (Main Memory) මතට ප්රවේශ වී එහි ඇති උපදෙස් මාලාව (Instruction set) එකින් එක පිලිවෙලට (Sequence) ට (central processing unit) ලබා දෙයි. මෘදුකාංගයක් එහි සූක්ශමතම මට්ටමේදී පවතින්නේ (Binary) සංඥා මාලාවක් වශයෙනි. මේවා (Machine Language) ඇති උපදෙස් ය. ප්රධාන සැකසුම් ඒකකය එම උපදෙස් වලට අනුව පරිගණකයේ දෘඩාංග වලට විද්යුත් සංඥා නිකුත් කරයි. ඒ අනුව ක්රියාකාරීත්වය සිදු වේ.
දත්ත හා මෘදුකාංග
මෘදුකාංග තනන්නේ මිනිසුන් ගේ ජීවත් වන ලෝකයේ පවතින ගැටලු වලට විසඳුම් සෙවීමටය. මෘදුකාංග තැනීමට ප්රථම ඊට අදාල මෘදුකාංගයේ සැකිල්ල (Software framework) තනනු ලැබේ. විසඳුම් සෙවීමටනම් ගැටලුව පිලිබඳ තොරතුරු හා දත්ත අවශ්ය වේ. පරිගනකයකට ඇතුලත් කරන ලද දත්ත ගබඩා කර තබාගැනීමට, සැකසීමට, ගනනය කිරීමට, සන්නිවේදනය කිරීමට සහ එය නැවත ලබා දීමට එයට හැකිය. මේ ක්රියාවලිය ප්රධාන වශයෙන් ම පාලනය කරනු ලබන්නේ මෘදුකාංග මගිනි.
මෙසේ ප්රධාන මතකයට ඇතුල් කරන දත්ත හා තොරතුරු, පරිගනකයේ විදුලිය විසන්ධි කිරීමෙන් පසු මතකයෙන් ඉවත් වේ. නමුත් එම තොරතුරු ද්වීතියික මතකය (ස්ථීර මතකය) මත ගබඩා කිරීමෙන් එකම දත්ත නැවත නැවත ඇතුල් කිරීමට සිදු නොවේ.
පරිගනක සම්බන්ධ පලමු නීතිය වන GIGO (Garbage In Garbage Out) යන්නද, දත්ත හා සබැඳි අදහසකි. එයට අනුව වැරදි දත්ත ඇතුල් කිරීමෙන් ලැබෙන්නේ වැරදි ප්රතිදානය. නිවැරදි ප්රතිදානය ලබාගැනීමට නිවැරදි දත්ත ලබා දිය යුතුය.
පරිගනක ආශ්රිත පද්ධතියකින් නියම ප්රයෝජන ගැනීමටනම් එහි ඇති දත්ත...
- නිවැරදි විය යුතුය, (Accurate).
- යාවත්කාල විය යුතුය, (Up to date).
- සම්පූර්ණ විය යුතුය, (Complete).
- පරස්පර විරෝධී නොවිය යුතුය, (Consistent).
පරිගනකයක වැඩසටහනකට දත්ත ඇතුල් කිරීමේදී එම දත්ත වල නිවැරදි භාවය තහවුරු කිරීමට validation (නිවැරදිබව තහවුරු කිරීම) භාවිතා කරයි. මෙහිදී සිදු වන්නේ එම දත්ත දී ඇති රටාවක් (pattern), (regular expression) හෝ අර්ථදැක්වීමකට (definition) අනුගතදැයි පරීක්ෂා කර බැලීමයි. මෙමගින් වැරදි දත්ත ඇතුල් කිරීමේදීම වලක්වාගත හැක. නමුත් validation නීතියක් සමත් වීම එම දත්තය නිවැරදි බව මුලුමනින්ම සනාථ නොකරයි. ඉන් අදහස් වන්නේ එම දත්තය වැරදි වීමට ඇති විෂාල ඉඩකඩක් (සම්භාවිතාවක්) අඩු බවයි. එනම් validation අසමත් වූ දත්තයක් මුලුමනින්ම නිශ්ප්රයෝජන බවය.
පද්ධති වැඩසටහන්කරනය සහ යෙදුම් මෘදුකාංග
මෙහෙයුම් පද්ධතියක් යනු ප්රධාන වශයෙන් ම පරිගනකයේ ඇති දෘඩාංග, මතකය හා සැකසුම් කාල අවකාශය පාලනය කරන වැඩසටහනකි. මීට අමතරව පරිගනකය මත ක්රියා කරන යෙදුම් මෘදුකාංග සඳහා වේදිකාවක් ලෙස ක්රියා කිරීමද ඉතා වැදගත් අංගයකි.
පද්ධති මෘදුකාංගයක් මගින් කෙලින්ම පරිගනකයේ දෘඩාංග ක්රියා කරවන අතර යෙදුම් මෘදුකාංගයක් ක්රියා කරන්නේ මෙහෙයුම් පද්ධතිය මතය. එනම් යෙදුම් මෘදුකාංගයක් පරිගනක පද්ධතියට බලපෑම් කරන්නේ මෙහෙයුම් පද්ධතිය හරහාය. යෙදුම් මෘදුකාංගයේ ඇති යාන්ත්රික උපදෙස් මාලාව මෙහෙයුම් පද්ධතිය මගින් යන්ත්ර භාෂාවට පරිවර්තනය කර දෘඩාංග ප්රධාන සැකසුම් ඒකකයට ලබා දෙයි.
මෙහිදී ඇතිවන ප්රධානතම ගැටලුවක් වන්නේ යෙදුම් මෘදුකාංගය මෙහෙයුම් පද්ධතියේ ස්වභාවය මතට සීමා වීමයි. එනම් එක් මෙහෙයුම් පද්ධතියක් සඳහා නිර්මානය කරන ලද යෙදුම් මෘදුකාංගයක් වෙනත් මෙහෙයුම් පද්ධතියක් මත ක්රියා නොකිරීමයි.
Virtual Machine
මෙයට විසඳුමක් වශයෙන් Virtual Machine යන සංකල්පය බිහි විය. එහිදී සිදු වන්නේ යෙදුම් මෘදුකාංගය එක් මෙහෙයුම් පද්ධතියකට සීමා නොවන ලෙස තනා, එය ක්රියා කිරීම සඳහා නොයෙක් මෙහෙයුම් පද්ධති සඳහා වෙන වෙනම වේදිකා තැනීමයි. එවිට වෙනස් මෙහෙයුම් පද්ධති මත එකම යෙදුම් මෘදුකාංගයට ධාවනය විය හැක.
මෙහි තවත් ප්රධාන වාසියක් වන්නේ යෙදුම් මෘදුකාංග වැඩසටහන්කරනය පහසු වීමයි. එනම් Virtual Machine තුලම බොහෝ වැඩසටහන් සඳහා අවශ්ය වන පොදු libraries අන්තර්ගත වීමයි.
- .net platform
- .net වේදිකාව (Platform) යනු මයිකේරාසොෆ්ට් සමාගම විසින් .net භාවිතා කර තනන ලද මෘදුකාංග ධාවනය සඳහා නිපදවා ඇති මෘදුකාංග වේදිකාවයි.
- මෙහි ප්රධාන කර්තව්ය වන්නේ .net Intermediate Languge (අතරමැදි භාෂාව) ඇති වැඩසටහනක් පරිගනකයේ මෙහෙයුම් පද්ධතියේ විධාන වලට පරිවර්තනය කිරීමයි.
- .net platform 3.5 Beta 2
- JVM (Java Virtual Machine)
- JVM යනු Sun Microsystems(පසුව Oracle) සමාගම විසින් ඔවුන්ගේ ජාවා (Java) පරිගනක භාෂාව සඳහා නිපදවා ඇති වේදිකාවයි. මෙහි ප්රධාන කර්තව්ය වන්නේ Java Bytecode ගොනුවක් ඒ ඒ මෙහෙයුම් පද්ධතියේ විධාන වලට පරිවර්තනය කිරීමයි.
- https://www.oracle.com/technetwork/java/index.html
- Mono
- Mono යනු විවෘත මෘදුකාංග ව්යාපෘතියකි. මෙහි අරමුන වන්නේ මයිකේරාසොෆ්ට් .net, Python මෙන්ම Sun Java වැඩසටහන් ධාවනය කල හැකි Windows, Linux, UNIX, Mac-OS.X මෙන්ම Sun Solaris මතද ක්රියා කල හැකි පොදු වේදිකාවක් තැනීමයි.
- http://www.mono-project.com/Main_Page
- MSVBVM
- Microsoft Visual Basic Virtual Machine යනු (Visual Basic) 5.0 සහ 6.0 භාවිතා කර තැනූ වැඩසටහන් ධාවනය කිරීම සඳහා වින්ඩෝස් මෙහෙයුම් පද්ධතියට එකතු කල හැකි කුඩා DLL ගොනුවකි.
මෘදුකාංග වැඩසටහන් සහ library
library යනු පරිගනක වැඩසටහනක් හෝ කිහිපයක් තවත් වැඩසටහනක් එහි ක්රියාකාරීත්වයට දායක කරගැනීමයි. මෙහි ඇති විශේෂත්වය වන්නේ මෙම libraryය එක් පුද්ගලයෙකු විසින් ලියා ඇති විට වෙනත් අයෙකුට එය තමාගේ වැඩසටහනකට බද්ධ කරගත හැකි වීමයි. එම නිසා library භාවිතය, පරිගනක වැඩසටහන්කරනය පහසු කරයි, එකම කාර්යය සඳහා නැවත නැවත එකම කේත කොටස ලිවීම වලකා කාලයත් ශ්රමයත් ඉතිරි කරයි.
Three layers of software
බලපත්රය
බලපත්රලාභී පරිසරයක් තුළ මෘදුකාංගය භාවිතා කිරීමේ අයිතිය භාවිතා කරන්නාට ‘මෘදුකාංග බලපත්රය’ මගින් ලබා දේ. සමහර මෘදුකාංගවල බලපත්රය පැමිණෙන්නේ අදාල එකතුව මිළ දී ගැනීමෙන් පසුව වන අතර සමහර දෘඪාංග හා බැදී එන (මුල්ම උපාංග බලපත්රය) (OEM - Original Equipment Manufacturer ) සමග බලපත්රය හිමි වේ. අනෙක් මෘදුකාංග නිදහස් මෘදුකාංග බලපත්ර සේ ලබන්නාට එය වෙනස් කිරීමට හා නැවත බෙදා හැරීම සඳහා අවසර දෙමින් නිකුත් කෙරේ. මෘදුකාංග බොහෝ විට නිදහස් මෘදුකාංග හෝ සීමිත මෘදුකාංග ආකාරයෙන් දැකිය හැක.
මෘදුකාංග භාවිත කරන්නන් සදහා සාරධර්ම සහ අයිතීන්
සමාජයේ අළුත් පාර්ශවයක් ලෙස මෘදුකාංග භාවිතා කරන්නන් සදහා තිබිය යුතු අයිතීන් යන අදහස වඩා වර්ධනය වූවක් නොවේ. නිදහස් මෘදුකාංග සමාජය වැනි ඇතැමෙක් තමන් භාවිත කරන මෘදුකාංග නවීකරණය හා නැවත බෙදාහැරීමේ අයිතිය මෘදුකාංග භාවිත කරන්නන්ට තිබිය යුතුය යයි විශ්වාස කරයි. එක් එක් පුද්ගලයාට තම පරිගණකය පාලනය කිරීමට මෙම අයිතීන් අත්යවශ්ය බවත් එමගින් සියලු දෙනාට සහයෝගයෙන් ඔවුන් තෝරාගන්නා පරිදි සමාජයක් ලෙස එකට වැඩ කිරීම හා මෘදුකාංගයෙහි වර්ධනය වන දිශාව පාලනය කිරීමට හැකියි ලෙස ඔවුන් වාද කරති. අනෙක් පාර්ශවය , මෘදුකාංග භාවිතා කරන්නන්ට ලැබිය යුතු අයිතීන් මෘදුකාංග නිර්මාණකරුවන් තීරණය කළ යුතු යයි විශ්වාස කරයි.
වර්ග
පද්ධති මෘදුකාංග වැඩ සටහන් සම්පාදන මෘදුකාංග හා යෙදුම් මෘදුකාංග ලෙස ප්රායෝගික පරිගණක පද්ධති ප්රධාන පන්ති තුනකට මෘදුකාංග පද්ධති වෙන් කරයි. මෙම වර්ගීකරණයේ මතභේදකාරී වාගේම බොහෝවිට නොපැහැදිලිය.
- පද්ධති මෘදුකාංග (System software)
පරිගණක දෘඪාංග හා පරිගණක පද්ධති ධාවනයට උදව් කරයි. එහි මෙහෙයුම් පද්ධති උපකරණ ධාවක , දෝෂ විනිශ්චය පිළිබද උපකරණ ,මෙහෙයන් , කවුළුමය පද්ධති , ප්රයෝජනවත් සේවාවන් හා තවත් දේ අඩංගුය. පද්ධති මෘදුකාංග හි අරමුණ හැකිතාක් දුර සුවිශේෂ භාවිත කළ පරිගණක සංකීර්ණයේ විස්තරය , විශේෂයෙන් මතකය හා අනෙකුත් දෘඪාංගවල ලක්ෂණ , අමතර උපාංග සන්නිවේදනයන් , මුද්රණ යන්ත්රයන් , කියවන්නන් , විදහා පෙන්වීම් , යතුරු පුවරු හා තවත් දෑ වැනි කාර්යය ක්රම සම්පාදකට පරිවහණය කිරීමයි.
- ක්රම සම්පාදන මෘදුකාංග (Programming software)
සාමාන්යයෙන් ඉතා පහසු ආකාරයට වෙනස් පරිගණක භාෂා භාවිතා කරමින් පරිගණක වැඩ සටහන් හා මෘදුකාංග ලිවීමට ක්රම සම්පාදකට සහාය දැක්වීමට මෙවලම් සපයයි. මෙවලම් පාඨ සංස්කාරකයන්, සංග්රාහකයන් , පරිවර්තකයන් , බන්ධකයන් , නිදොස්කරුවන් හා තවත් දෑ අඩංගුය . සමෝධානය කළ සංවර්ධන පරිසරයක් (IDE) එම මෙවලම් මෘදුකාංග පොදියකට ඒකාබද්ධ කරන අතර ක්රම සම්පාදක හට සම්පාදනය කිරීමට , පරිවර්තනය කිරීමට , නිදොස් කිරීමට , අංශු මාත්රණයට , හා වෙනත් දෑ සදහා ගුණාකාර විධාන ටයිප් කිරීම / ලිවීම අවශ්ය නොවේ. මක්නිසාදයත් IDE සාමාන්යයෙන් දියුණු කළ ග්රාසිකාකාර පරිශීලක අතුරු මුහුණත තිබේ. (GUI – Graphical User Interface)
- යෙදුම් මෘදුකාංග (Application software)
අවසන් පරිශීලකයාහට විශේෂ (පරිගණක නොවන ආශ්රීත) මෙහෙයන් එකක් හෝ කිහිපයක් ඉටු කිරීමට ඉඩ සලසයි. නියමානුකූල යෙදීම් කර්මාන්ත ශාලා ස්වයංක්රීයකරණය , ව්යාපාරික මෘදුකාංග , අධ්යාපනික මෘදුකාංග, ඹෟෂධීය මෘදුකාංග / වෛද්ය මෘදුකාංග , පරිගණක දත්ත ගබඩා සහ පරිගණක ක්රීඩා අඩංගු වේ. යෙදුම් මෘදුකාංග විශාලතම භාවිතා කරන්නන් ව්යාපාරිකයන් වුව ද සෑම අතින්ම පාහේ යෙදුම් මෘදුකාංග ආකාරයක් මිනිස් ක්රියාකාරකම් ඇති සෑම ක්ෂේත්රයකම භාවිතා කරයි.
ලේයර 3
1980 සිට අද දක්වා යෙදුම් මෘදුකාංග බහුල වශයෙන් විකිණි ඇත. යමක් පරිශීලනය කර්නා බොහෝ විට එහි සම්පාදකයට වඩා වෙනස් ලෙස එය දකියි. පොදු කාරය පරිගණක (නිහිත පද්ධති ප්රතිඝම පරිගණක, සුපිරි පරිගණක ආදිය නොව) භාවිතා කරන්නන් සාමාන්යයෙන් මෘදුකාංගයක පදනම් වේදිකාව යෙදුම හා පරිශිලක ලෙස ස්ථර 3 ක් ක්රියාත්ක වන බව හදුනා ගෙන ඇත.
පදනම් මෘදුකාංග -මෙයට ස්ථිරාංග, උපක්රම ධාවක, මෙහෙයුම් පද්ධති හා නිශ්චිතවම ග්රැපිකරෑපී අතුරැ මුහුණක් අඩංගු වේ. එක්ව කැටි ක මෙය පරිශිලකය පරිගණකය හා එයට අදාළ අනෙකුත් උපකරණ සමග අන්තර් ක්රියා කිරීමට මග පාදයි. මෙම මෘදුකාංග බොහෝ විට පරිගණකයන් සමග ලබාදේ. පෞද්ගලික පරිගණක ඔබට සාමානයෙන් පදනම් මෘදුකාංගයක් වෙස් කළ හැක.
යෙදුම් මෘදුකාංග-බොහෝ විට පුද්ගලයන් මෘදුකාංගයක් කියු පමණින් හිතේ මවා ගන්නේ යෙදුම් මෘදුකාංගයනකි. පැහැදිලි උදාහරණ ලෙස office suites සහ විඩියෝ ක්රීඩා දැක්විය හැක. යෙදුම් මෘදුකාංගයක් බොහෝ විට වෙමම පරිගණක දෘඪාංග වලට පරිබාහිරව මිලදි ගත හැක. සමහර අවස්ථාවල පරිගණකයන් සමගම මේවා ලබා දෙන අතර එහෙත් ස්වාධිනව ක්රියාත්මික වන සෙසු වේ. එසේම හැමවිටම වගේ මෙහෙයුම් පද්ධතියෙන් සවාධීනව මේවා ක්රියාත්මක වන නමුත්ඒවා පාදන්නේවිශේෂිත පදනමක් (Platform) මුල් කරගෙනය බොහෝ අය සම්පාදක (Compilers) පරිගණක දත්ත ගබඩා සහ අනෙකුත් පද්ධති මෘදුකාංග සලකන්නේ යෙදුම් ලෙසය
පිරිශීලක මෘදුකාංග-පරිශීලක මෘදුකාංග පරිගණක පද්ධතිවට එය පරිශිලනය කරන්නගේ සකස්න විද්යාත්මක නිරෑපණය සහ චිත්රක හා සජීවිකරණය සදහා පිටපත් මෙම ගණයට වැට්. එස්ම ඉබලෙක්ට්රොනික් තැපැල් ෆිල්ටර් ද මෙම වර්ගයේ මෘදුකාංග වේ. පරිශීලය කරන්නේ මෙම මෘදුකාංග තමන් සදහාම සාදා ගන්නා අතර නිතරම එහි වැදගත්කම පරික්ෂා කර බලයි පරිශීලක මෘදුකාංග, යෙදුම් පැකේජ වලට එකතු වී ඇති උසස් ආකාරය අනුව බොහෝ පරිශීකයකන් හට මිලදී ගත් යෙදුම් පැකේජ වල හා පරිශීලක මෘදුකාංග අතර වෙනම හා ඒවාට පසුව එක්වුයේ මොනවාදැයි නිසි වැටහීමක් නැත.
මෘදුකාංග නිර්මානය
වැඩසටහන් ගබඩාව
පරිඝණක වැඩ සටහනකින් පමණක් කාර්යක් ක්රියාවට නැන්වීමට නොහැකි වන අවස්ථා ඇත. එම වැඩසටහන අවශ්ය බාහිර මෘදුකාංග කොටස්ද වන අතර මේවා Vbraies නමින් හැදිනවේ. මෙවැනි Briberies තනිව ක්රියාත්මක වීමට නොහැකි වැඩසටහන් උදාහරණයක් ලෙස සමහර Stand Alone වැඩසටහන් කොටස් Liparies ලෙස ඇති අතර වැඩසටහන් ලිවීමේ ක්රියාවට පැනවෙන නමුත් ඒවා අමතන වැඩසටහන් සදහා දත්ත නැවත භාරදීම සිදු නොකරන Stand Alone Cadging proges වැඩසටහන්ද Libraries තුල අන්තර්ගත ෙව් Libraries එකක් හෝ බොහොමයක් වැඩසටහනක් Libraries ඇමතීම හෝ වැඩසටහන් තවත් වැඩසටහනක් ඇමතීම හෝ කිසිදු වැඩසටහනක් ඇමතීම සිදු නොකීරීම සිදුවිය හැක.
මෘදුකාංගවල නිරවද්යතාවය
මෘදුකාංග නිර්මාණ හිමිකම් පත්ර (මුදෘකාංග පේටන්ට් බලපත්ර)
තවද බලන්න
- විවෘත මෘදුකාංග (Open and/or Free software)
- මෘදුකාංග කර්මාන්තය (Software industry)
බාහිර සබැඳි
- Programming Tutorials[]
මූලාශ්ර
විකිපීඩියාව, විකි, සිංහල, පොත, පොත්, පුස්තකාලය, ලිපිය, කියවන්න, බාගන්න, නොමිලේ, නොමිලේ බාගන්න, mp3, වීඩියෝ, mp4, 3gp, jpg, jpeg, gif, png, පින්තූරය, සංගීතය, ගීතය, චිත්රපටය, පොත, ක්රීඩාව, ක්රීඩා., ජංගම දුරකථන, android, ios, apple, ජංගම දුරකථන, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, පීසී, වෙබ්, පරිගණකය
පර ගණක ම ද ක ග Computer Software යන පර ගණකයක භ ව ත කර යම කටය ත තක කර ග න මට ඇත පර ගණක ව ඩසටහන Programs ඒ සම බන ධ උපද ස ල ඛන ක ර ය වල එකක හ ක හ පයක එකත වක ව න ඩ ස ම හ ය ම පද ධත ය මත ධ වනය වන ස හල වදන සකසන ම ද ක ගයක ස ග ල ශ පර ගණක වදන සකසන ම ද ක ග ව න ය ද ම ම ද ක ග Application Software ම න ම ම හ ය ම පද ධත Operation System ව න පද ධත ම ද ක ගද System Software ම ට අයත ව තවද ස ව පද ධත Servers ව ස ර පද ධත Distributed Computers වල ක ර ය ක ර ත වයටද ම ද ක ග අවශ ය ව ද ඩ ග හ ම ද ක ගද ඩ ග Hardware යන පර ගණකයක ඇත භ ත ක වස ත න ය ඊට ස ප ක ශව ම ද ක ග යන භ ත කව ස පර ශ කල න හ ක ද යක එම න ම අපට ම ද ක ගයක ක ර ය කරව ය හ ක ක ද ඩ ගයක මතය ම ද ක ගයක අපට ග චර වන න ද ඩ ග වල ක ර ය ක ර ත වය මතය එනම ද ඩ ග ක ර ය කරන ය එය මත ක ර ය කරන ම ද ක ගය අන වය ම ද ක ගයක යන එය ක ර ය ත මක වන ද ඩ ගය සඳහ ද න ලද උපද ස ම ල වක ම ස ද ඩ ග වල ක ර ය ක ර ත වය ප ලනය ක ර ම සඳහ ම න පදවන ලද ම ද ක ග පද ධත ම ද ක ග හ ම හ ය ම පද ධත ල සද හ ඳ න ව ම ද ක ගයක පර ගණකය Main Memory මතට ප රව ශ ව එහ ඇත උපද ස ම ල ව Instruction set එක න එක ප ල ව ලට Sequence ට central processing unit ලබ ද ය ම ද ක ගයක එහ ස ක ශමතම මට ටම ද පවත න න Binary ස ඥ ම ල වක වශය න ම ව Machine Language ඇත උපද ස ය ප රධ න ස කස ම ඒකකය එම උපද ස වලට අන ව පර ගණකය ද ඩ ග වලට ව ද ය ත ස ඥ න ක ත කරය ඒ අන ව ක ර ය ක ර ත වය ස ද ව දත ත හ ම ද ක ගම ද ක ග තනන න ම න ස න ග ජ වත වන ල කය පවත න ග ටල වලට ව සඳ ම ස ව මටය ම ද ක ග ත න මට ප රථම ඊට අද ල ම ද ක ගය ස ක ල ල Software framework තනන ල බ ව සඳ ම ස ව මටනම ග ටල ව ප ල බඳ ත රත ර හ දත ත අවශ ය ව පර ගනකයකට ඇත ලත කරන ලද දත ත ගබඩ කර තබ ග න මට ස කස මට ගනනය ක ර මට සන න ව දනය ක ර මට සහ එය න වත ලබ ද මට එයට හ ක ය ම ක ර ය වල ය ප රධ න වශය න ම ප ලනය කරන ලබන න ම ද ක ග මග න ම ස ප රධ න මතකයට ඇත ල කරන දත ත හ ත රත ර පර ගනකය ව ද ල ය ව සන ධ ක ර ම න පස මතකය න ඉවත ව නම ත එම ත රත ර ද ව ත ය ක මතකය ස ථ ර මතකය මත ගබඩ ක ර ම න එකම දත ත න වත න වත ඇත ල ක ර මට ස ද න ව පර ගනක සම බන ධ පලම න ත ය වන GIGO Garbage In Garbage Out යන නද දත ත හ සබ ඳ අදහසක එයට අන ව ව රද දත ත ඇත ල ක ර ම න ල බ න න ව රද ප රත ද නය න ව රද ප රත ද නය ලබ ග න මට න ව රද දත ත ලබ ද ය ය ත ය පර ගනක ආශ ර ත පද ධත යක න න යම ප රය ජන ග න මටනම එහ ඇත දත ත න ව රද ව ය ය ත ය Accurate ය වත ක ල ව ය ය ත ය Up to date සම ප ර ණ ව ය ය ත ය Complete පරස පර ව ර ධ න ව ය ය ත ය Consistent පර ගනකයක ව ඩසටහනකට දත ත ඇත ල ක ර ම ද එම දත ත වල න ව රද භ වය තහව ර ක ර මට validation න ව රද බව තහව ර ක ර ම භ ව ත කරය ම හ ද ස ද වන න එම දත ත ද ඇත රට වක pattern regular expression හ අර ථද ක ව මකට definition අන ගතද ය පර ක ෂ කර බ ල මය ම මග න ව රද දත ත ඇත ල ක ර ම ද ම වලක ව ගත හ ක නම ත validation න ත යක සමත ව ම එම දත තය න ව රද බව ම ල මන න ම සන ථ න කරය ඉන අදහස වන න එම දත තය ව රද ව මට ඇත ව ෂ ල ඉඩකඩක සම භ ව ත වක අඩ බවය එනම validation අසමත ව දත තයක ම ල මන න ම න ශ ප රය ජන බවය පද ධත ව ඩසටහන කරනය සහ ය ද ම ම ද ක ගම හ ය ම පද ධත යක යන ප රධ න වශය න ම පර ගනකය ඇත ද ඩ ග මතකය හ ස කස ම ක ල අවක ශය ප ලනය කරන ව ඩසටහනක ම ට අමතරව පර ගනකය මත ක ර ය කරන ය ද ම ම ද ක ග සඳහ ව ද ක වක ල ස ක ර ය ක ර මද ඉත ව දගත අ ගයක පර ගනකය ප රධ න මතකය ඇත ද ව මය උපද ස ම ල සහ දත ත debug ව ධ නය මග න බල ග න ම පද ධත ම ද ක ගයක මග න ක ල න ම පර ගනකය ද ඩ ග ක ර ය කරවන අතර ය ද ම ම ද ක ගයක ක ර ය කරන න ම හ ය ම පද ධත ය මතය එනම ය ද ම ම ද ක ගයක පර ගනක පද ධත යට බලප ම කරන න ම හ ය ම පද ධත ය හරහ ය ය ද ම ම ද ක ගය ඇත ය න ත ර ක උපද ස ම ල ව ම හ ය ම පද ධත ය මග න යන ත ර භ ෂ වට පර වර තනය කර ද ඩ ග ප රධ න ස කස ම ඒකකයට ලබ ද ය ම හ ද ඇත වන ප රධ නතම ග ටල වක වන න ය ද ම ම ද ක ගය ම හ ය ම පද ධත ය ස වභ වය මතට ස ම ව මය එනම එක ම හ ය ම පද ධත යක සඳහ න ර ම නය කරන ලද ය ද ම ම ද ක ගයක ව නත ම හ ය ම පද ධත යක මත ක ර ය න ක ර මය Virtual Machine ම යට ව සඳ මක වශය න Virtual Machine යන ස කල පය බ හ ව ය එහ ද ස ද වන න ය ද ම ම ද ක ගය එක ම හ ය ම පද ධත යකට ස ම න වන ල ස තන එය ක ර ය ක ර ම සඳහ න ය ක ම හ ය ම පද ධත සඳහ ව න ව නම ව ද ක ත න මය එව ට ව නස ම හ ය ම පද ධත මත එකම ය ද ම ම ද ක ගයට ධ වනය ව ය හ ක ම හ තවත ප රධ න ව ස යක වන න ය ද ම ම ද ක ග ව ඩසටහන කරනය පහස ව මය එනම Virtual Machine ත ලම බ හ ව ඩසටහන සඳහ අවශ ය වන ප ද libraries අන තර ගත ව මය net platform net ව ද ක ව Platform යන මය ක ර ස ෆ ට සම ගම ව ස න net භ ව ත කර තනන ලද ම ද ක ග ධ වනය සඳහ න පදව ඇත ම ද ක ග ව ද ක වය ම හ ප රධ න කර තව ය වන න net Intermediate Languge අතරම ද භ ෂ ව ඇත ව ඩසටහනක පර ගනකය ම හ ය ම පද ධත ය ව ධ න වලට පර වර තනය ක ර මය net platform 3 5 Beta 2JVM Java Virtual Machine JVM යන Sun Microsystems පස ව Oracle සම ගම ව ස න ඔව න ග ජ ව Java පර ගනක භ ෂ ව සඳහ න පදව ඇත ව ද ක වය ම හ ප රධ න කර තව ය වන න Java Bytecode ග න වක ඒ ඒ ම හ ය ම පද ධත ය ව ධ න වලට පර වර තනය ක ර මය https www oracle com technetwork java index htmlMono Mono යන ව ව ත ම ද ක ග ව ය ප ත යක ම හ අරම න වන න මය ක ර ස ෆ ට net Python ම න ම Sun Java ව ඩසටහන ධ වනය කල හ ක Windows Linux UNIX Mac OS X ම න ම Sun Solaris මතද ක ර ය කල හ ක ප ද ව ද ක වක ත න මය http www mono project com Main PageMSVBVM Microsoft Visual Basic Virtual Machine යන Visual Basic 5 0 සහ 6 0 භ ව ත කර ත න ව ඩසටහන ධ වනය ක ර ම සඳහ ව න ඩ ස ම හ ය ම පද ධත යට එකත කල හ ක ක ඩ DLL ග න වක ම ද ක ග ව ඩසටහන සහ librarylibrary යන පර ගනක ව ඩසටහනක හ ක හ පයක තවත ව ඩසටහනක එහ ක ර ය ක ර ත වයට ද යක කරග න මය ම හ ඇත ව ශ ෂත වය වන න ම ම libraryය එක ප ද ගලය ක ව ස න ල ය ඇත ව ට ව නත අය ක ට එය තම ග ව ඩසටහනකට බද ධ කරගත හ ක ව මය එම න ස library භ ව තය පර ගනක ව ඩසටහන කරනය පහස කරය එකම ක ර යය සඳහ න වත න වත එකම ක ත ක ටස ල ව ම වලක ක ලයත ශ රමයත ඉත ර කරය DLL ද බලන නThree layers of softwareබලපත රයබලපත රල භ පර සරයක ත ළ ම ද ක ගය භ ව ත ක ර ම අය ත ය භ ව ත කරන න ට ම ද ක ග බලපත රය මග න ලබ ද සමහර ම ද ක ගවල බලපත රය ප ම ණ න න අද ල එකත ව ම ළ ද ග න ම න පස ව වන අතර සමහර ද ඪ ග හ බ ද එන ම ල ම උප ග බලපත රය OEM Original Equipment Manufacturer සමග බලපත රය හ ම ව අන ක ම ද ක ග න දහස ම ද ක ග බලපත ර ස ලබන න ට එය ව නස ක ර මට හ න වත බ ද හ ර ම සඳහ අවසර ද ම න න ක ත ක ර ම ද ක ග බ හ ව ට න දහස ම ද ක ග හ ස ම ත ම ද ක ග ආක රය න ද ක ය හ ක ම ද ක ග භ ව ත කරන නන සදහ ස රධර ම සහ අය ත න සම ජය අළ ත ප ර ශවයක ල ස ම ද ක ග භ ව ත කරන නන සදහ ත බ ය ය ත අය ත න යන අදහස වඩ වර ධනය ව වක න ව න දහස ම ද ක ග සම ජය ව න ඇත ම ක තමන භ ව ත කරන ම ද ක ග නව කරණය හ න වත බ ද හ ර ම අය ත ය ම ද ක ග භ ව ත කරන නන ට ත බ ය ය ත ය යය ව ශ ව ස කරය එක එක ප ද ගලය ට තම පර ගණකය ප ලනය ක ර මට ම ම අය ත න අත යවශ ය බවත එමග න ස යල ද න ට සහය ගය න ඔව න ත ර ගන න පර ද සම ජයක ල ස එකට ව ඩ ක ර ම හ ම ද ක ගය හ වර ධනය වන ද ශ ව ප ලනය ක ර මට හ ක ය ල ස ඔව න ව ද කරත අන ක ප ර ශවය ම ද ක ග භ ව ත කරන නන ට ල බ ය ය ත අය ත න ම ද ක ග න ර ම ණකර වන ත රණය කළ ය ත යය ව ශ ව ස කරය වර ගපද ධත ම ද ක ග ව ඩ සටහන සම ප දන ම ද ක ග හ ය ද ම ම ද ක ග ල ස ප ර ය ග ක පර ගණක පද ධත ප රධ න පන ත ත නකට ම ද ක ග පද ධත ව න කරය ම ම වර ග කරණය මතභ දක ර ව ග ම බ හ ව ට න ප හ ද ල ය පද ධත ම ද ක ග System software පර ගණක ද ඪ ග හ පර ගණක පද ධත ධ වනයට උදව කරය එහ ම හ ය ම පද ධත උපකරණ ධ වක ද ෂ ව න ශ චය ප ළ බද උපකරණ ම හ යන කව ළ මය පද ධත ප රය ජනවත ස ව වන හ තවත ද අඩ ග ය පද ධත ම ද ක ග හ අරම ණ හ ක ත ක ද ර ස ව ශ ෂ භ ව ත කළ පර ගණක ස ක ර ණය ව ස තරය ව ශ ෂය න මතකය හ අන ක ත ද ඪ ගවල ලක ෂණ අමතර උප ග සන න ව දනයන ම ද රණ යන ත රයන ක යවන නන ව දහ ප න ව ම යත ර ප වර හ තවත ද ව න ක ර යය ක රම සම ප දකට පර වහණය ක ර මය ක රම සම ප දන ම ද ක ග Programming software ස ම න යය න ඉත පහස ආක රයට ව නස පර ගණක භ ෂ භ ව ත කරම න පර ගණක ව ඩ සටහන හ ම ද ක ග ල ව මට ක රම සම ප දකට සහ ය ද ක ව මට ම වලම සපයය ම වලම ප ඨ ස ස ක රකයන ස ග ර හකයන පර වර තකයන බන ධකයන න ද ස කර වන හ තවත ද අඩ ග ය සම ධ නය කළ ස වර ධන පර සර යක IDE එම ම වලම ම ද ක ග ප ද යකට ඒක බද ධ කරන අතර ක රම සම ප දක හට සම ප දනය ක ර මට පර වර තනය ක ර මට න ද ස ක ර මට අ ශ ම ත රණයට හ ව නත ද සදහ ග ණ ක ර ව ධ න ටය ප ක ර ම ල ව ම අවශ ය න ව මක න ස දයත IDE ස ම න යය න ද ය ණ කළ ග ර ස ක ක ර පර ශ ලක අත ර ම හ ණත ත බ GUI Graphical User Interface ය ද ම ම ද ක ග Application software අවසන පර ශ ලකය හට ව ශ ෂ පර ගණක න වන ආශ ර ත ම හ යන එකක හ ක හ පයක ඉට ක ර මට ඉඩ සලසය න යම න ක ල ය ද ම කර ම න ත ශ ල ස වය ක ර යකරණය ව ය ප ර ක ම ද ක ග අධ ය පන ක ම ද ක ග ඹ ෂධ ය ම ද ක ග ව ද ය ම ද ක ග පර ගණක දත ත ගබඩ සහ පර ගණක ක ර ඩ අඩ ග ව ය ද ම ම ද ක ග ව ශ ලතම භ ව ත කරන නන ව ය ප ර කයන ව ව ද ස ම අත න ම ප හ ය ද ම ම ද ක ග ආක රයක ම න ස ක ර ය ක රකම ඇත ස ම ක ෂ ත රයකම භ ව ත කරය ල යර 31980 ස ට අද දක ව ය ද ම ම ද ක ග බහ ල වශය න ව ක ණ ඇත යමක පර ශ ලනය කර න බ හ ව ට එහ සම ප දකයට වඩ ව නස ල ස එය දක ය ප ද ක රය පර ගණක න හ ත පද ධත ප රත ඝම පර ගණක ස ප ර පර ගණක ආද ය න ව භ ව ත කරන නන ස ම න යය න ම ද ක ගයක පදනම ව ද ක ව ය ද ම හ පර ශ ලක ල ස ස ථර 3 ක ක ර ය ත ක වන බව හද න ග න ඇත පදනම ම ද ක ග ම යට ස ථ ර ග උපක රම ධ වක ම හ ය ම පද ධත හ න ශ ච තවම ග ර ප කර ප අත ර ම හ ණක අඩ ග ව එක ව ක ට ක ම ය පර ශ ලකය පර ගණකය හ එයට අද ළ අන ක ත උපකරණ සමග අන තර ක ර ය ක ර මට මග ප දය ම ම ම ද ක ග බ හ ව ට පර ගණකයන සමග ලබ ද ප ද ගල ක පර ගණක ඔබට ස ම නය න පදනම ම ද ක ගයක ව ස කළ හ ක ය ද ම ම ද ක ග බ හ ව ට ප ද ගලයන ම ද ක ගයක ක ය පමණ න හ ත මව ගන න ය ද ම ම ද ක ගයනක ප හ ද ල උද හරණ ල ස office suites සහ ව ඩ ය ක ර ඩ ද ක ව ය හ ක ය ද ම ම ද ක ගයක බ හ ව ට ව මම පර ගණක ද ඪ ග වලට පර බ හ රව ම ලද ගත හ ක සමහර අවස ථ වල පර ගණකයන සමගම ම ව ලබ ද න අතර එහ ත ස ව ධ නව ක ර ය ත ම ක වන ස ස ව එස ම හ මව ටම වග ම හ ය ම පද ධත ය න සව ධ නව ම ව ක ර ය ත මක වන නම ත ඒව ප දන න ව ශ ෂ ත පදනමක Platform ම ල කරග නය බ හ අය සම ප දක Compilers පර ගණක දත ත ගබඩ සහ අන ක ත පද ධත ම ද ක ග සලකන න ය ද ම ල සය ප ර ශ ලක ම ද ක ග පර ශ ලක ම ද ක ග පර ගණක පද ධත වට එය පර ශ ලනය කරන නග සකස න ව ද ය ත මක න ර පණය සහ ච ත රක හ සජ ව කරණය සදහ ප ටපත ම ම ගණයට ව ට එස ම ඉබල ක ට ර න ක ත ප ල ෆ ල ටර ද ම ම වර ගය ම ද ක ග ව පර ශ ලය කරන න ම ම ම ද ක ග තමන සදහ ම ස ද ගන න අතර න තරම එහ ව දගත කම පර ක ෂ කර බලය පර ශ ලක ම ද ක ග ය ද ම ප ක ජ වලට එකත ව ඇත උසස ආක රය අන ව බ හ පර ශ කයකන හට ම ලද ගත ය ද ම ප ක ජ වල හ පර ශ ලක ම ද ක ග අතර ව නම හ ඒව ට පස ව එක ව ය ම නව ද ය න ස ව ටහ මක න ත ම ද ක ග න ර ම නයම ල ක ල ප ය පර ගනක ව ඩසටහන කරනයව ඩසටහන ගබඩ වපර ඝණක ව ඩ සටහනක න පමණක ක ර යක ක ර ය වට න න ව මට න හ ක වන අවස ථ ඇත එම ව ඩසටහන අවශ ය බ හ ර ම ද ක ග ක ටස ද වන අතර ම ව Vbraies නම න හ ද නව ම ව න Briberies තන ව ක ර ය ත මක ව මට න හ ක ව ඩසටහන උද හරණයක ල ස සමහර Stand Alone ව ඩසටහන ක ටස Liparies ල ස ඇත අතර ව ඩසටහන ල ව ම ක ර ය වට ප නව න නම ත ඒව අමතන ව ඩසටහන සදහ දත ත න වත භ රද ම ස ද න කරන Stand Alone Cadging proges ව ඩසටහන ද Libraries ත ල අන තර ගත ව Libraries එකක හ බ හ මයක ව ඩසටහනක Libraries ඇමත ම හ ව ඩසටහන තවත ව ඩසටහනක ඇමත ම හ ක ස ද ව ඩසටහනක ඇමත ම ස ද න ක ර ම ස ද ව ය හ ක ම ද ක ගවල න රවද යත වයම ද ක ග න ර ම ණ හ ම කම පත ර ම ද ක ග ප ටන ට බලපත ර තවද බලන නව ව ත ම ද ක ග Open and or Free software ම ද ක ග කර ම න තය Software industry බ හ ර සබ ඳ Programming Tutorials permanent dead link ම ල ශ ර