ပရဝ်ဂရာမ်မေန် ခမ်ပျူတာ

ပရဝ်ဂရာမ်မေန် ခမ်ပျူတာ (အၚ်္ဂလိက်: Computer programming) ဟီုမ္ဂးဂှ် ဒှ်လၟေင်ကမၠောန် ပွမဖန်ဗဒှ်၊ ပွမချူ၊ ပွမစမ်ၜတ် ကေုာံ ပွမမင်မဲ ကောဒ် (Source code) ညံင်စက်ခမ်ပျူတာတအ် ဂွံကၠောန်ကမၠောန် အတိုင်မဖျေံလဝ် အစဳအဇန်ရ။ ပူဂိုလ် မချူ ပရဝ်ဂရာမ်တအ်ဂှ် ကော်စ သၟာပရဝ်ဂရာမ် (Programmer) ဟွံသေင်မ္ဂး ညးဖန်ဗဒှ် ဆပ်ဝဴ (Software developer) ရ။
ပရဝ်ဂရာမ်မေန်ဂှ် ဒှ်အရာ မကဵု စၞောန်ပညုင် ကု ခမ်ပျူတာ သွက်ဂွံ သ္ၚဳဂၠိပ် တင်ဂၞင် (Data)၊ သွက်ဂွံ ဖန်ဗဒှ် မုက်ဝက်ဆိုက်၊ သွက်ဂွံ ကၠောန်ဗဒှ် ဉာဏ်စက် (AI) ကေုာံ သွက်ဂွံ ဆက်စပ် ဇာဇၞိက် ခမ်ပျူတာ (Computer networks) နာနာသာ်ရ။
ဝင် (History)
[ပလေဝ်ဒါန် | ပလေဝ်ဒါန် တမ်ကၞက်]ဝင် ပရဝ်ဂရာမ်မေန်ဂှ် စက္တဵုဒှ်လဝ် နူကဵု ခေတ်ကၠာ ခမ်ပျူတာ လျပ်စစ် ဟွံက္တဵုဒှ်ဏီရ။ အေဒါ လဝ်ဗလေ့တ် (Ada Lovelace) ဝွံ ဒှ်မၞိဟ် မချူလဝ် ပရဝ်ဂရာမ် အဓိက ပထမအိုတ် ပ္ဍဲဂၠးတိ သွက်စက် တၟော်သင်္ချာ ချားလ် ဘက်ဗေ့ချ် (Charles Babbage) ပ္ဍဲကဵု သၞာံ ၁၈၄၀ တေအ်ရ။
ပ္ဍဲကဵု ခေတ် ၂၀ ဗွဝ်ကၠံ လဒေါဝ်ဂှ် အရေဝ်ဘာသာ ပရဝ်ဂရာမ်မေန် ကဆံင်သၠုင် (High-level programming languages) ဗီုကဵု FORTRAN ကေုာံ COBOL တအ် က္တဵုဒှ်ကၠုင်တုဲ၊ ပကဵု ညံင် မၞိဟ်တအ် ဂွံချူ ကောဒ် လောဲသွာ နူကဵု ပွမစကာ ဂၞန် သုည ကဵု မွဲ (Machine code) ရ။
အရေဝ်ဘာသာ ပရဝ်ဂရာမ်မေန်ဂမၠိုင် (Programming Languages)
[ပလေဝ်ဒါန် | ပလေဝ်ဒါန် တမ်ကၞက်]သၟာပရဝ်ဂရာမ်တအ် စကာ အရေဝ်ဘာသာ ပရဝ်ဂရာမ်မေန် နာနာသာ် သွက်ဂွံ ချူ ကောဒ်ရ။ အရေဝ်ဘာသာ မပြာကတ်အိုတ် ပ္ဍဲခေတ်လၟုဟ်ဂှ် မပ္တံကဵု-
- ပိုက်ထောန် (Python): လ္ၚတ်လောဲတုဲ စကာဂၠိုင် ပ္ဍဲကဵု သွာင် ဉာဏ်စက် (AI)၊ သုတေသန တင်ဂၞင် ကေုာံ ပွမဖန်ဗဒှ် ဝက်ဆိုက်။
- ဂျာဗာသခရေပ် (JavaScript): ဒှ်အရေဝ်ဘာသာ အဓိက သွက်ဂွံ ဖန်ဗဒှ် မုက်ဝက်ဆိုက် (Web development) ညံင်ဂွံ ချဳဒရာင်မာန်။
- ဂျာဗာ (Java): စကာဂၠိုင် ပ္ဍဲကဵု ပွမဖန်ဗဒှ် ဆပ်ဝဴ ကမ္မဏဳဇၞော်ဇၞော် ကေုာံ အပ်ပလဳကေးရှေန် ဖုန် (Android)။
- သဳပလတ်ပလတ် (C++): ဒှ်အရေဝ်ဘာသာ မၞုံကဵု ဒြဟတ်ဇၞော်တုဲ စကာဂၠိုင် ပ္ဍဲကဵု ပွမဖန်ဗဒှ် ဂိမ်း (Games) ကေုာံ သၞောတ်ဝ် အုပ်ဓုပ် စက် (Operating systems)။
သဘဴဓဝ် သဇိုင်ဂမၠိုင် (Basic Concepts)
[ပလေဝ်ဒါန် | ပလေဝ်ဒါန် တမ်ကၞက်]ၜိုန်ရ အရေဝ်ဘာသာ ဟွံတုပ်ကီုလေဝ်၊ သဘဴဓဝ် သဇိုင် ပရဝ်ဂရာမ်မေန် ဗွဲမဂၠိုင်ဂှ် တုပ်သၟဟ်ဒၟံင်ရေင်သကအ်ရ-
- မပြံင်လှာဲ (Variables): ဒှ်ဒၞာဲ သွက်ဂွံ ဂိုင်သိပ်စွံ တင်ဂၞင် (ဥပမာ - လၟိဟ်ဂၞန်၊ လိက်)။
- အကာဲအရာ (Conditions): ပွမကဵု သ္ဂုတ်သွာတ် ဒုင်သဇိုင် လတူ အကာဲအရာ (ဥပမာ - If-Else statements)။
- ပွမကလေင်ကၠောန် (Loops): ပွမကဵု စက် ကၠောန်ကမၠောန် မွဲမွဲ ကလေင်ဂၠိုင်ကဵုဝါ စဵုကဵု ဍိုက်ပေင် အကာဲအရာမွဲ။
- သၞောတ်ဝ် လိက် (Syntax): သၞောတ်ဝ် ဂမ္စာဲ ကေုာံ သဒ္ဒါ မဒးဒ္ဂေတ်ဗက် အခိင်ချူ ကောဒ် ပ္ဍဲကဵု အရေဝ်ဘာသာ မွဲမွဲ။
လၟေင်ကမၠောန် (The Programming Process)
[ပလေဝ်ဒါန် | ပလေဝ်ဒါန် တမ်ကၞက်]- ပွမချူ (Writing): ချူ ကောဒ် ပ္ဍဲကဵု ပရဝ်ဂရာမ် ပလေဝ်ဒါန် လိက် (Text editor) ဟွံသေင်မ္ဂး IDE။
- ပွမကၠာဲ (Compiling/Interpreting): ကၠာဲ လိက်ကောဒ် မၞိဟ်မကၠိုဟ်ဂှ် ညံင်ဂွံ ဒှ်အာ လိက်စက် (Machine code) စက်ခမ်ပျူတာ ဂွံကၠိုဟ်စိုတ်။
- ပွမစမ်ၜတ် ကေုာံ ပလေဝ်ဒါန် (Testing and Debugging): ဂၠာဲ တင်ယောင်ယာ (Bugs) တုဲ ကလေင်ပလေဝ် ညံင် ပရဝ်ဂရာမ် ဂွံကၠောန်ကမၠောန် ချိုတ်ပၠိုတ်။
- ပွမမင်မဲ (Maintenance): ကလေင် ပြင်ဆင် ထပ်စုတ် စွမ်းရည်တၟိတၟိ လၟိုန်အခိင်။
ဆက်ဗှ်လ္ၚတ်
[ပလေဝ်ဒါန် | ပလေဝ်ဒါန် တမ်ကၞက်]- သိပ္ပံ ခမ်ပျူတာ
- ဆပ်ဝဴ
- အာလဂဝ်ရဳသမ် (Algorithm)