ပရိုဂရမ်မိဉ်းဘာႏသာႏငေါဝ်းငွါ

‍‍‍‍**ပရိုဂရမ်းမိဉ်းဘာႏသာႏငေါဝ်းငွါ** () ကရိုꩻနဝ်ꩻ ချꩻအီအစီႏအစဲဉ်ႏဘာႏသာႏငေါဝ်းငွါ (မွေးတောဝ်းလဲ့) မိဉ်ႏတဲမ်းစန်ႏကွန်ပျူတာသော့ဝွဲခိန်ႏ ကထူႏသွုံꩻအီဒါႏ ဘာႏသာႏငေါဝ်းငွါတမျိုꩻဒျာႏသွူ။ ဘာႏသာႏငေါဝ်းငွါယိုတမျိုꩻနောဝ်ꩻ ဝင်ꩻထွဉ်ႏအံႏအီစက်ဖုံႏ၊ ကွန်ပျူတာဖုံႏဖေႏနေးကမာꩻထာꩻမာꩻတဲင် ကဖန်ဆင်ꩻတဲပ်တဲပ်တဲ့တဲ့သေꩻခါꩻဒါႏ လိုꩻသေနာႏယိုꩻဘာႏသာႏငေါဝ်းငွါတမျိုꩻဒျာႏသွူ။ နဝ်ꩻထွူတကာႏတောဝ်း ကွန်ပျူတာမာꩻထာꩻမာꩻ အဆွိုးအနားဖေႏနေးကအောဝ်ႏဗာႏမွိုန်းတဲင် ကတဲမ်းနျꩻသေꩻခါꩻဒါႏ ဖေႏအမိန်းဘာႏသာႏငေါဝ်းငွါတမျိုꩻ မီႏရိုꩻနုဲင်းနောဝ်ꩻလဲ့ တမာႏတောဝ်းသွူ။

ထူႏသွုံꩻနေးတွမ်ႏ Programming Language ယိုတဲင် ထိန်ꩻချုပ်အီ စက်ဖုံႏ၊ နေးတွမ်ႏ algorithms တဲင် ဖန်ဆင်ꩻအီ ဉာဏ်ႏတုꩻဖုံႏလꩻအီသွူ။ စတဲင် အစီႏအစဲဉ်ႏ အစုစုအဒဝ်ႏဒဝ်ႏ ကားကအဝ်ႏနုဲင်းယိုဖုံႏနဝ်ꩻ ဝင်ꩻဟဲ့ꩻဒျာႏ ပရိုဂရမ်တဲင်၊ မိဉ်ႏတဲမ်းစန်ႏဖန်ဆင်ꩻဒါႏ ပရိုဂရမ်နောဝ်ꩻ ဝင်ꩻဟဲ့ꩻ ပရိုဂရမ်မိဉ်းသွူ။ ပီနုဲင်းဒျာႏ သဘာႏဝငေါဝ်းငွါဘာႏသာႏဖုံႏနေနေ ဝွေꩻယိုတဲ့ တဲမ်းစန်ႏပွုံႏစနိစ်(ပရိုဂရမ်သဒ္ဒါႏ)တွမ်ႏ အွဉ်ႏထွော့သတ်မတ်ခါꩻ အဓိပ္ပာယ်ႏပငါပရာꩻဖုံႏ အောဝ်ႏဒျာႏနေနေသွူ။

နေးတွမ်ႏ C programming language တွော့ꩻ ကတဲမ်းစန်ႏသေꩻခါꩻဒါႏ အသျင်ꩻသွတ်ꩻ Hello world source code

အမိဉ်ꩻကတန်ငါႏ Programming Languages နောဝ်ꩻ C, C++, C#, Java, Python, Ruby, PHP ဖုံႏဒျာႏသွူ။

ပရိုဂရမ်းမိဉ်းဘာႏသာႏငေါဝ်းငွါယို မိဉ်ႏထေခွဲꩻဗာႏနောဝ်ꩻ အီႏလ့ꩻလွဉ် General Purpose Language တွမ်ႏ Special Purpose Language ယိုနီꩻမျိုꩻသွူ။

အရီးသွတ်ꩻ မိဉ်ႏလွူꩻထွားရီးဒါႏ သော့ဝွဲအမျိုꩻအသာꩻဖုံႏနောဝ်ꩻ

System Software
Computer Software
Mobile
Web
စတဲင် အီႏထီႏမော့ꩻဗာႏ နုဲင်းယိုဖုံႏသွူ။

General Purpose Language ကရိုꩻနဝ်ꩻ သွုံꩻလꩻစွုမ်ႏအီတာႏ ကရေႏရွယ်ႏသေꩻခါꩻဒါႏ ဘာႏသာႏငေါဝ်းငွါတမျိုꩻဒျာႏသွူ။ ဘာႏသာႏငေါဝ်းငွါယိုတမျိုꩻနောဝ်ꩻ တဲမ်းစန်ႏအီသော့ဝွဲအမျိုꩻအသာꩻ ခွုင်းမုဲင်ꩻမျိုꩻမျိုꩻလ့ꩻသွူ။ ဥပမာႏ-Java Language (Computer, Mobile, Web)။

Special Purpose Language ကရိုꩻနောဝ်ꩻ သွုံꩻအီတမျိုꩻစီႏတာႏ ကရေႏရွယ်ႏသေꩻခါꩻဒါႏ ဘာႏသာႏငေါဝ်းငွါတမျိုꩻဒျာႏသွူ။ ဖန်ဆင်ꩻအီသော့ဝွဲတမျိုꩻစီႏတာႏ ကတယ်ႏထွင်ႏသေꩻခါꩻဒါႏ ဘာႏသာႏငေါဝ်းငွါဒျာႏသွူ။ ဥပမာႏ-PHP Language (Web Only)။

## အမာꩻထာꩻမာꩻနုဲင်းမုဲင်ꩻ
ကွန်ပျူတာသီးမျိုꩻနောဝ်ꩻ အတာႏတွမ်ႏအတာႏ အီႏမာꩻစွဉ်ႏထာꩻမာꩻတဒါႏတောဝ်းသွူ။ နေးတွမ်ႏဝွေꩻကသေနာႏဒါႏ ဘာႏသာႏငေါဝ်းငွါတွော့ꩻ မိဉ်ႏထွဉ်ႏနေးမ့ꩻ ဝွေꩻမာꩻထာꩻမာꩻအီႏဒါႏသွူ။ ဥပမာႏအနေႏ မိဉ်ႏဒေါ့ꩻဗာႏနောဝ်ꩻ ပီနုဲင်းဝင်ꩻကဟဲ့ꩻဖုန်း viber နောဝ်ꩻအတွိုင်ꩻ ထွဉ်ႏဟဲ့ꩻပုဂ္ဂိုလ်ႏတဖြာꩻဖြာꩻဖုန်းဖေႏနေးကလ့ꩻ တဲမ်းစန်ႏခါꩻဖေႏဗာႏ ဟဲ့ꩻပါꩻယိုဖုန်းလုဲင်း နုဲင်းနောဝ်ꩻသွူ။ မိဉ်ႏတဲမ်းစန်ႏခါꩻထွူနုဲင်းနောဝ်ꩻမꩻ ကောသွုံꩻသားမိဉ်ႏနျꩻ call အနေန်သူꩻနောဝ်ꩻ ဝွေꩻဟဲ့ꩻဖေႏစွဉ်ႏဖုန်းသွူ။

Microsoft Words တဲ့ အပီနုဲင်းနောဝ်ꩻနေနေ။ မိဉ်ႏနျꩻ Print ခိန်ႏ အောဝ်ႏ printer ကို လိတ်ဖေႏနေးကထန်ႏလွဉ်တဲင် နေးတွမ်ႏ လိတ်ထွဉ်ႏအီကွန်ပျူတာ (programming) တဲင် တဲမ်းစန်ႏခါꩻဖေႏဗာႏနေးသွူ။ မိဉ်ႏတဲမ်းစန်ႏခါꩻဖေႏနုဲင်းနောဝ်ꩻမꩻ ကောသွုံꩻသားမိဉ်ႏနျꩻ ထေလိတ်ပွုံႏ (Print) ခိန်ႏနောဝ်ꩻ အောဝ်ႏစက်နျꩻလိတ် (Printer) ကို အီႏထေထန်ႏဖေႏ ထေလိတ်ပွုံႏ (Print) နောဝ်ꩻသွူ။

ကွန်ပျူတာသီးမျိုꩻနောဝ်ꩻ အသေနာႏဒျာႏကွို့ꩻ 0 တွမ်ႏ 1 လွုမ်ꩻသွူ။ နီနာꩻလိုꩻသီးအနေႏ အီႏတဲမ်းစန်ႏဗာႏ 0 တွမ်ႏ 1 ကရိုꩻနောဝ်ꩻ ကွပ်ပွိုးစွဉ်ႏဒျာႏ ခုဲင်ႏခွေါ့ငါႏတဲင် တဲမ်းသွုံꩻအီဗာႏနေးတွမ်ႏ အရန်းထိုဘာႏသာႏငေါဝ်းငွါ (high level language) တွော့ꩻ ထွဉ်ႏဗာႏကွန်ပျူတာ မာꩻထာꩻမာꩻသွူ။ လိုကောကသေနာႏ ထွဉ်ႏအံႏဒါႏကွန်ပျူတာသားနောဝ်ꩻ ဝင်ꩻဟဲ့ꩻ ပရိုဂရမ်မာ (programmer)သွူ။

ပရိုဂရမ်မာကရိုꩻနောဝ်ꩻ ကောသွုံꩻသားတွမ်ႏ ကွန်ပျူတာအခါႏအနေႏ ကောသွုံꩻသားကမဲဉ်ထွဉ်ႏဒါႏအတွိုင်ꩻ ကွန်ပျူတာမိဉ်ႏတသေနာႏတောဝ်းနောဝ်ꩻ ကောကထွာဒါႏ ပရိုဂရမ်မာအနေႏ ကွန်ပျူတာဖေႏကသေနာႏ ဝွေꩻတဲမ်းစန်ႏခါꩻဖေႏဗာႏသွူ။ Programming language ကရိုꩻနောဝ်ꩻ ဘာႏသာႏငေါဝ်းငွါတမျိုꩻ ရိုꩻရိုꩻလွုမ်ꩻသွူ။ ကွန်ပျူတာတွမ်ႏ ပရိုဂရမ်မာအခါႏ ကသွုပ်သွယ်ႏဖေႏဒါႏ ဘာႏသာႏငေါဝ်းငွါတမျိုꩻဒျာႏသွူ။ ကွန်ပျူတာနောဝ်ꩻ အတာႏတွမ်ႏအတာႏ မာꩻချာထာꩻမာꩻတဒါႏတောဝ်းသွူ။ ပရိုဂရမ်မာအနေႏ မာꩻနုဲင်းယိုမာꩻနုဲင်းနောဝ်ꩻလုဲင်း စတဲင်  မိဉ်ႏထွဉ်ႏဖေႏနုဲင်းနောဝ်ꩻမꩻ ကွန်ပျူတာသူꩻ အမာꩻထာꩻမာꩻအီႏဒါႏသွူ။

မိဉ်ႏတဲမ်းစန်ႏသော့ꩻခါꩻဖေႏ code နုဲင်းလ့ယိုနောဝ်ꩻ ကွန်ပျူတာအီႏတွယ်ႏနျꩻနယ်ဖေႏလိတ် ကွန်ပျူတာမဲ့ငါ (screen) လောင်း Hello World! နုဲင်းနောဝ်ꩻသွူ။ နျꩻစံꩻ RUN ကရိုꩻဒါႏ လိတ်ဖြုံႏနောဝ်ꩻလုဲင်း။ Hello World! ကရိုꩻဒါႏ လိတ်ရဲဉ်ႏအီႏပေါꩻလွဉ်အကျောင်ꩻ  နာꩻအီႏထီႏဗာႏစွဉ်ႏသွူ။

## ခွိုꩻသွုပ်
ကောကသွဉ်ထူႏလေ့လာစစဒါႏ ပရိုဂရမ်မိဉ်းဘာႏသာႏငေါဝ်းငွါသားအနေႏ အောဝ်ႏလိုႏသေနာႏခါꩻငါႏ ပွိုင်းဝွို့တွမ်ႏဒျာႏ ခွိုꩻသွုပ်ပရိုဂရမ်မိဉ်းဘာႏသာႏငေါဝ်းငွါ (programming language generation) အကျောင်ꩻခရာႏဖုံႏသွူ။ မိဉ်ႏတသေနာႏခါꩻတောဝ်းနောဝ်ꩻ ထွာမုဲင်ꩻဟောင်း မိဉ်ႏရီလွဉ်ဒါႏနုဲင်းနောဝ်ꩻလဲ့ တထွာတောဝ်းတမုဲင်ꩻမုဲင်ꩻ မိဉ်ႏဒါႏခါꩻနောဝ်ꩻ ယိုခါနီကအောဝ်ႏသွုံꩻနောဝ်ꩻ တွိုႏလွေꩻလဲဉ်း ခွိုꩻသွုပ် (generation) အရန်းမုဲင်ꩻ၊ ခါးလားကတွိုႏလွဉ် ခွိုꩻသွုပ် (generation) ယိုတသွုပ် အခါႏလယ်ႏကိုနောဝ်ꩻ ဘာႏသာႏငေါဝ်းငွါ(language)တမုဲင်ꩻဖုံႏအောဝ်ႏခါꩻ၊ နီနမ်းကလေ့လာလွူꩻထွားကျာꩻယိုနောဝ်ꩻ ခွိုꩻသွုပ် (generation) တမုဲင်ꩻ စတဲင် အီႏသေထွꩻအီဗာႏနုဲင်းယိုဒျာႏသွူ။

#### First Generation Language ( 1GL )
UNIVAC I တွမ်ႏ IBM 701 နောဝ်ꩻ ခါးလားကတွိုႏ (၁၉၅၀) အခိန်ႏကာꩻ ပထမအရီးသွတ်ꩻ ကပေါႏလွဉ်ဒါႏ စက်ဘာႏသာႏငေါဝ်းငွါပရိုဂရမ် (machine language program) ရိုꩻဗာႏနုဲင်းနောဝ်ꩻသွူ။ ကွဲတွော့ꩻတဲင် 1GL နောဝ်ꩻ လို့ဆွိုးထိုꩻမွိုင်ငါႏတဲင် ကူꩻပြောင်ꩻထွာလွဉ်လုဲင်ႏတောလဲဉ်း 2GL သွူ။

#### Second Generation Language ( 2GL )
ဒုတိယခွိုꩻသွုပ်ဘာႏသာႏငေါဝ်းငွါ (2GL) ကရိုꩻနောဝ်ꩻ လိုꩻသေသားကအောဝ်ႏအာဒါႏ assembly language မွေးတောဝ်းလဲ့ assembler တဗာႏဒျာႏသွူ။ assembler ယိုနောဝ်ꩻ ဗ့ꩻတွိုႏယိုခါ ဝင်ꩻအောဝ်ႏထွာသွုံꩻစွယ်ꩻနေဒွိုန်းသွူ။

#### Third Generation Language ( 3GL )
ဆုဲင်ꩻချာနောဝ်ꩻ တတိယခွိုꩻသွုပ်ဘာႏသာႏငေါဝ်းငွါ (3GL) ကရိုꩻဒါႏ FORTRAN , LISP, COBOL ဖုံႏ ပေါႏထန်ႏလွဉ်ယင်းလဲဉ်းသွူ။ 3GL နောဝ်ꩻ တဲမ်းစန်ႏတဲ့ယို တွမ်ႏ စက်ကုဒ် (machine code) ကရီးခါဖုံႏလဲ့ တပီတောဝ်းဒွုမ်သွူ။ 3GL ယိုနောဝ်ꩻ သွုံꩻလꩻအီစွဉ်ႏဒျာႏ သွုံꩻလꩻစွုမ်ႏ (gerneral use) အနေႏသွူ။ ပီနုဲင်း 3GL ယိုနေနေ ဆုဲင်ꩻချာ သွုံꩻလꩻစွုမ်ႏ purpos ဘာႏသာႏငေါဝ်းငွါ (general purpos language) ဖုံႏ ပေါႏထန်ႏလွဉ်ယင်းလဲဉ်းသွူ။

C language ကရိုꩻဒါႏ ဘာႏသာႏငေါဝ်းငွါယိုတမျိုꩻနောဝ်ꩻ ဝင်ꩻခြဲ့ꩻလုဲင်း (developed)ခါꩻဒျာႏ (၁၉၆၉) တွမ်ႏ (၁၉၇၃) အခါႏလယ်ႏ အတွင်ꩻကာႏလနောဝ်ꩻခါကာႏတဲင် ဗꩻတွိုႏယိုခါ မိဉ်ꩻကျော်ႏ (popular)နေကဒွိုန်းသွူ။ C ယိုနောဝ်ꩻ ဝင်ꩻတိုꩻတသာထဲင်းယင်း version တွော့ꩻ တိန်ႏတွိုႏ (၁၉၈၀) ခိန်ႏနောဝ်ꩻ ထေထန်ႏထဲင်းယင်းလဲဉ်း C++ သွူ။  

ပီနုဲင်း တတိယခွိုꩻသွုပ် (Third Generation) ယိုနေနေ ယိုခါခိန်ႏခါႏ ကအောဝ်ႏသွုံꩻစွယ်ꩻလွဒါႏ ရေႏရွယ်ႏခါꩻသွုံꩻလꩻစွုမ်ႏဘာႏသာႏငေါဝ်းငွါ (general purpose programming language) ဖုံႏနောဝ်ꩻ PHP, ASP, C, C++, Java, Javascript, Perl, Python, Pascal, Fortran ဖုံႏဒျာႏတဲင်တွော့ꩻ ဝွေꩻသီးယိုလဲ့ ထွာဒျာႏ ခွိုꩻသွုပ်ဘာႏသာႏငေါဝ်းငွါ (generation Language) နေနေသွူ။

#### Fourth Generation Language ( 4GL )
စတုတ္ထခွိုꩻသွုပ်ဘာႏသာႏငေါဝ်းငွါ (4GL) ယိုနောဝ်ꩻ ရေႏရွယ်ႏဖန်ဆင်ꩻခါꩻဖေႏဒျာႏ စီꩻပွာꩻရေꩻဖဲ့ꩻဆဲင်ႏရာꩻ စီꩻပွာꩻရေꩻသော့ဝွဲ(business software)ဖုံႏ အတာႏဒျာႏသွူ။ 3GL ယင်ဟန်ႏဖုံႏနောဝ်ꩻလဲ့ သွုံꩻလ့ꩻစွုမ်ႏ (General Use)အနေႏ အောဝ်ႏပါသော့ꩻနေက 4GL ကိုသွူ။

#### Fifth Generation Language ( 5GL )
ပဉ္စမခွိုꩻသွုပ်ဘာႏသာႏငေါဝ်းငွါ (5GL) ကရိုꩻနောဝ်ꩻ တယ်ႏဆို့ꩻပရိုဂရမ်တဗာႏအတာႏ ဖေႏနေးကအောဝ်ႏလိုႏဗာႏမွိုန်းဒွုမ် ပရိုဂရမ်မာအကျောင်ꩻ ရေႏရွယ်ႏဒျာႏနုဲင်းနောဝ်ꩻသွူ။ မိဉ်ႏထွင်ႏထေ ဉာဏ်ႏပညာႏတု (Artificial Intelligence research) ခိန်ႏနောဝ်ꩻ အဓိကအနေႏ သွုံꩻအီနေးဗာႏ 5GL ဖုံႏသွူ။ Prolog , OPS5, Mercury ဖုံႏနောဝ်ꩻ ပဉ္စမခွိုꩻသွုပ်ဘာႏသာႏငေါဝ်းငွါနမူႏနာႏ (5GL example) ဒျာႏသွူ။

* General Use
** Perl
** Python
** Ruby
* Database
** SQL
* Report generators
** Oracle Report
* Data manipulation, analysis, and reporting languages
** SQL PL
** SPSS
* GUI creators
** XUL
** OpenROAD
* Mathematical optimization
** AIMMS
** GAMS
* Database-driven GUI application development
** Action Request System
** C/AL
* Screen painters and generators
** SB+/SystemBuilder
** Oracle Forms
* Web development languages
** CFML
** Html
** CSS
** Java Script
** PHP
** etc...



## သမဲင်ꩻ
ချꩻအစီႏအစဲဉ်ႏတွော့ꩻ ကတဲမ်းစန်ႏနွောင်ꩻဒါႏ စက်ဖုံႏကရိုꩻနောဝ်ꩻ မိဉ်ႏဒေါ့ꩻဗာႏတဲ့ ခါးလားဒစ်စစ်တယ်ကွန်ပျူတာ ကပေါႏလွဉ်ခိန်ႏသူꩻကာႏ ဝွေꩻသီးယိုပေါႏလွဉ်ရီးထွူဒျာႏ ရိုꩻဗာႏနုဲင်းနောဝ်ꩻသွူ။ သက္ကရာဇ် ကွတ်ꩻရျာꩻဗူႏရပ်အတွင်ꩻကာႏလ ဝေင်ꩻတန်ဝေင်ꩻဗဲက်ဂဒတ်ကို ကအောဝ်ႏအုံသော့ꩻဒါႏ မူသာသီးတဖူးဝေးနောဝ်ꩻ အောဝ်ႏဖန်ဆင်ꩻခါꩻဗာႏဖို အတာႏတွမ်ႏအတာႏ ကအူဒုံႏနွောင်ꩻဒါႏ ပီႏစက်ကိရိယာႏတမျိုꩻနောဝ်ꩻသွူ။

## အာႏကွိုꩻ