ဘယ် programming language စ လေ့လာမလဲ

programming တစ်ခုကို စသင်ဖို့ ရည်ရွယ်လိုက်တာနဲ့ ဘယ်ကနေ စသင်ရမလဲ။ ဘယ် language ကို စလေ့လာရမလဲဆိုတာက ပြဿနာ တစ်ရပ်ပါ။ သမာရိုးကျ computer တက္ကသိုလ် တက်ရောက်နေတဲ့သူတွေ အတွက်ကတော့ C , C++ နဲ့ စတင် ရင်းနှီး ကျွမ်းဝင်ရမှာပါ။ အဲဒါတွေ မစခင် သင် programming ဆိုတာကို ဘယ်လောက် သိထားပြီးပြီလဲ။

Programming Language ဆိုတာ ဘာလဲ။

Programming ကိုလေ့လာတော့မယ့် ဆိုသူတွေအတွက် အကြီးမားဆုံး စတင် စိန်ခေါ်မှုက programming language ဆိုတာ ဘာလဲဆိုတာပဲ။ အဲဒီတော့ ကျွန်တော်တို့ ပထမဆုံး စဉ်းစားသင့်တာက Programming language ဆိုတာဘာလဲ ဆိုတာပဲ။

Programming ဆိုတာကို theory အရပြောရရင်တော့ computer တွေကို ခိုင်းစေဖို့ ဘာသာစကားလို့ ဆိုရမှာပေါ့။ အဲဒီလို ခိုင်းစေဖို့အတွက် ဘာသာစကားလိုအပ်လာပါတယ်။ ဂျပန်ကို ပြောဖို့ မြန်မာစကားမတတ်တဲ့ ဂျပန်ကို မြန်မာလို သွားပြောနေရင် ဟိုက နားလည်မှာ မဟုတ်ပါဘူး။ ကြားကနေ ဘာသာပြန်တစ်ယောက်လိုအပ်ပါတယ်။ ဒါမှမဟုတ် သူရော ကိုယ်ရော နားလည်မယ့် ဘာသာစကားတစ်ခုခုဖြစ်တဲ့ English စာလိုမျိုး ကြားခံ သုံးရပါလိမ့်မယ်။ ပိုပြီး ထိထိ ရောက်ရောက် ဖြစ်စေချင်ရင်တော့ သူ နားလည်ဆုံး ဘာသာစကားဖြစ်တဲ့ သူ့မိခင် ဘာသာစကား ဂျပန်လို ပြောခြင်းပါပဲ။

Programming Language ဆိုတာ ဒီလိုပါပဲ။ Computer က နားလည်တဲ့ ဘာသာစကား တစ်ခုခုကို ကြားခံပြီး computer ကို ခိုင်းစေရတာပါ။ Computer ကတော့ ပုံမှန်အားဖြင့် 0 နဲ့ 1 သာ အလုပ်လုပ်ပါတယ်။ သို့ပေမယ့် ကျွန်တော်တို့တွေက သူ့ကို ခိုင်းစေဖို့အတွက် 0 နဲ့ 1 တွေ ရေးပြီး command ပေးဖို့ ဆိုတာ အလွန်တရာမှ ခက်ခဲလှပါတယ်။ မဖြစ်နိုင်ဘူးတော့ မဟုတ်ပါ။ အဲဒီတော့ ကိုယ် နားလည်လွယ်ပြီး computer ကို တဆင့် ပြန်ခိုင်းရတဲ့ langauge တစ်ခုခုကို ကြားခံပြီး ဆောင်ရွက်ပေးဖို့ လိုအပ်လာပါပြီ။

Language Generation

programming language generation နဲ့ ပတ်သက်ပြီးတော့ programming ကို စတင် သင်တဲ့ သူတွေ တော်တော်များများ သိထားသင့်ပါတယ်။ မသိလို့ ဘာဖြစ်လည်း ဆိုတော့ ဘာမှတော့ မဖြစ်ပါဘူး။ သိထားတော့ လက်ရှိ ကိုယ် သုံးနေတာ ဘယ် generation ရောက်နေပြီလဲ။ ဒီ generation မတိုင်ခင်က ဘယ် language တွေ ရှိခဲ့လဲ။ အခု ကိုယ်လေ့လာနေတာက ဘယ် generation လဲ။ စတာတွေကို သိရှိနိုင်ပါတယ်။

First Generation Language ( 1GL )

1950 မတိုင်ခင်က 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 နဲ့ အတူတူ general purpos language တွေကိုလည်း ပေါ်ထွက်လာခဲ့ပါတယ်။

C language ကို 1969 နဲ့ 1973 ကြားမှာ developed လုပ်ခဲ့ပြီးတော့ အခုအချိန်ထိ popular ဖြစ်နေသေးတဲ့ langauge တစ်ခုပါ။ C ကို ထပ်ပြီးတော့ version အသစ်တိုးကာ 1980 မှာ C++ ကို ထုတ်ခဲ့ပါတယ်။ C++ က object-oriented နဲ့system programming တွေ ပါဝင်လာပါတယ်။

Third Generation နဲ့ အတူ လက်ရှိ အသုံးပြုနေတဲ့ general purpose programming language တွေကတော့  C, C++, C#, Java, Delphi, and Python တို့ ဖြစ်ပြီး သူတို့ဟာလည်း Third generation Language တွေပါပဲ။

Fourth Generation Language ( 4GL )

Fourth generation language ကိုတော့ စီးပွားရေးဆိုင်ရာ business software တွေအတွက် ရည်ရွယ်ပြီး ဖန်တီးခဲ့ကြပါတယ်။ 3GL တွေက 4GL တွေနဲ့ ပူးပေါင်းဆောင်ရွက်ပြီး develop လုပ်နေရဆဲပါပဲ။ 4GL ထဲမှာ

  • General Use
  • Database
  • Report generators
  • Data manipulation, analysis, and reporting languages
  • Data-stream languages
  • Database-driven GUI application development
  • Screen painters and generators
  • GUI creators
  • Mathematical optimization
  • Web development languages

ဥပမာ အနေနဲ့ ဆိုရရင် Database ထဲမှာ SQL ဖြစ်ပြီးတော့ Web Development မှာတော့ ColdFusion ပေါ့။

Fifth Generation Language ( 5GL )

5GL ကတော့ အဓိကအားဖြင့် programmer မလိုပဲနဲ့ program တွေကို တည်ဆောက်ဖို့အတွက် ရည်ရွယ်ထားတာပါ။ 5GL တွေကို အဓိကအားဖြင့် Artificial Intelligence research တွေ မှာ အဓိက အသုံးပြုပါတယ်။ Prolog , OPS5, Mercury တို့က 5GL example တွေပေါ့။

Summary

အခုအချိန်မှာတော့ 5GL ထိ ရောက်နေပေမယ့် ကျွန်တော်တို့တွေ စပြီး လေ့လာသင့်တာကတော့ 3GL ပါပဲ။ လက်ရှိ တော်တော်များများ အသုံးပြုနေကြတာတွေဟာ 3GL တွေပါပဲ။ 4GL တွေနဲ့ အချို့နေရာတွေမှာ ပေါင်းသုံးကောင်း သုံးပါလိမ့်မယ်။ စလေ့လာမယ့်သူတွေကတော့ Database တွေ ဘာတွေကို လေ့လာဖို့ မလိုသေးပါဘူး။ ပထမဆုံး လေ့လာရမှာက 3GL Programming Langauge ပါ။

What Next

နောက် အပိုင်းမှာ လက်ရှိ အသုံးပြုနေတဲ့ Programming language တွေနဲ့ ဘယ်ဟာကို လေ့လာသင့်သလဲဆိုတာကို ဆွေးနွေးရေးသားသွားမှာပါ။ ဒီ post နဲ့ ပတ်သက်ပြီး မရှင်းတာတွေကို comment ပေးခဲ့လို့ရပါတယ်။

4 Replies to “ဘယ် programming language စ လေ့လာမလဲ”

  1. Hello ko saturn,

    Php တိုု့ asp.net တုုိ့က 4GL ထဲမှာ ပါနေမလား? အခုု ပေါ်ပြူလာဖြစ်နေတဲ့ CMS တုုိ့ကျရော ဘယ် GL မှာ ရောက်နေမလဲ သိချင်လိုု့ပါ။ ဒီ ပိုုစ့် ကိုု စိတ်ဝင်စားပါတယ်။

    1. PHP တို့ ASP.NET တို့က 3GL ထဲမှာပါပဲ။ သူတို့ကို general purpose language လို့ ဆိုလို့ရပါတယ်။ general purpose language တွေက 3GL ထဲမှာပါပါတယ်။ CMS ဆိုတာက လက်ရှိ programing language တွေနဲ့ ပြန်ရေးထားတဲ့ web app တွေလို့ ဆိုလို့ရပါတယ်။ သူတို့က language မဟုတ်ပါဘူး။

Leave a Reply to saturngod Cancel reply

Your email address will not be published. Required fields are marked *