1.2 Major Open Source Applications: Programming Languages

Share this article to...

Programming Languages

            Operating System အပါအဝင် Server and Client Programs, Desktop Applications စတဲ့ Computer Programs တွေအားလုံးဟာ Program ဘာသာစကား Programming Languages တွေ တစ်ခု (သို့) တစ်ခုထက်ပိုပြီး အသုံးပြုဖန်တီးထားကြတာပါ။ Programs တွေဟာ တစ်ဖိုင် (သို့) ရာပေါင်းများစွာသောဖိုင်တွေပါဝင်နေတဲ့ Complex System တစ်ခုအဖြစ်ရှိနိုင်ပြီး Processor and Other Devices တွေကနေ အလုပ်လုပ်နိုင်ဖို့အတွက် နားလည်စေဖို့အတွက် Programs တွေကို Instruction Sequence တစ်ခုအဖြစ်နှင့် OS မှ မှတ်ယူလုပ်ဆောင်ပေးပါတယ်။

         ရည်ရွယ်ချက်အမျိုးမျိုးနှင့် လုပ်ဆောင်ချက်အမျိုးမျိုးအတွက် Programming Languages တွေ အများအပြားရှိပြီး Linux Systems တွေမှာလည်း အသုံးပြုလို့ရပါတယ်။ Open Source Software တွေမှာ Program Sources တွေပါဝင်တာမို့ Linux Systems တွေဟာ တီထွင်ဖန်တီးသူတွေရဲ့ လိုအပ်ချက်နှင့် ကိုက်ညီမယ့် Software တွေဖန်တီးဖို့၊ ပြန်လည်မွမ်းမံပြင်ဆင်ဖို့၊ ကောင်းစွာနားလည်ဖို့ ပြည့်စုံတဲ့အခြေအနေတွေဖြစ်စေပါတယ်။

         Program တွေဟာ Source Code လို့ခေါ်တဲ့ Text File အနေနှင့်ပဲ စတင်ကြတာပါ။ Source Code ဆိုတာ Program က ဘာလုပ်မယ်ဆိုတာ ဖော်ပြထားတဲ့ ဖတ်ရှုနားလည်နိုင်တဲ့ Human-friendly Language ဘာသာစကား တစ်မျိုး (သို့) တစ်မျိုးထက်ပိုမိုအသုံးပြုပြီး ရေးသားထားကြတာမျိုးပါ။ အဲ့ဒါကြောင့်ပဲ Source Code တွေကို Computer Processor က နားမလည်ပါဘူး။ တိုက်ရိုက်အလုပ်လုပ်ပေးလို့ မရပါဘူး။ Compiled Languages တွေမှာ Source Code တွေကို Binary File အဖြစ်နှင့် ပြောင်းလဲပြီးမှသာ Computer မှ အလုပ်လုပ်ပေးနိုင်တာပါ။ Compiler လို့ခေါ်တဲ့ Program ဟာ Source Code ပုံစံမှ အလုပ်လုပ်ပေးနိုင်တဲ့ Executable Form ပုံစံသို့ ပြောင်းလဲပေးဖို့အတွက် တာဝန်ယူလုပ်ဆောင်ပါတယ်။ ပြောင်းလဲပြီးရရှိလာတဲ့ Compiled Binary တွေဟာ သက်ဆိုင်ရာ Processor တမျိုးအတွက်ပဲ ကိုက်ညီတာမို့ အခြားတမျိုးအတွက် အသုံးပြုနိုင်ဖို့ရာ ထပ်မံပြောင်းလဲဖို့ Re-compile ပြန်လုပ်ဖို့ လိုပါတယ်။

         Interpreted Languages တွေမှာတော့ ကြိုပြီး Compile လုပ်ထားဖို့ မလိုအပ်ပါဘူး။ အဲ့ဒီအစား Interpreter ဟာ Program အလုပ်လုပ်တိုင်း Run တိုင်းမှာ Source Code ကိုဖတ်ပြီးတာနှင့် သူ့ရဲ့ ညွှန်ကြားချက် (Instruction) ကိုပါ လုပ်ဆောင်သွားတာပါ။ တီထွင်ဖန်တီးမှုတွေကို ပိုမိုလွယ်ကူမြန်ဆန်စေပေမယ့် လုပ်ဆောင်နိုင်မှုမှာတော့ Interpreted Programs တွေဟာ Compiled Programs ထက် ပိုမိုနှေးကွေးပါတယ်။

         နာမည်အကြီးဆုံး ရေပန်းအစားဆုံး Programming Languages တချို့ကို ကြည့်ကြရအောင်ပါ။

JavaScript

            Web Pages တွေဖန်တီးရာမှာ အသုံးအများဆုံး Programming Language တစ်ခုပါ။ အစမှာတော့ ရိုးရှင်းလွယ်ကူတဲ့ Form Validation Routines တွေလို Applications တွေမှာ အသုံးပြုခဲ့ကြပါတယ်။ အခုအခါမှာတော့ Web အတွက်သာမကဘဲ Servers နှင့် Mobile Devices တွေပေါ်မှာပါ အလွန်ရှုပ်ထွေးလှတဲ့ Complex Applications တွေကို ဖန်တီးဖို့အတွက်ပါ ပထမဦးစားပေး First Class Language အဖြစ်ပါ အသုံးပြုလာကြပါပြီ။

C

            OS တွေနှင့် အထူးသဖြင့် Unix နှင့် အတော်လေးနီးစပ်မှုရှိတဲ့ Programming Language တစ်ခုဖြစ်ပေမယ့် Device အမျိုးအစားအားလုံးနီးပါးဖြင့် အလုပ်လုပ်နိုင်မယ့် Program အမျိုးမျိုးရေးဖို့အတွက် အသုံးပြုနိုင်ပါတယ်။ အားသာချက်အရှိဆုံးကတော့ ပြောင်းလွယ်ပြင်လွယ်ဖြစ်ပြီး မြန်ဆန်တာပါပဲ။ C Language ဖြင့်ရေးသားထားတဲ့ Source Code ကို မတူညီတဲ့ Platforms and Operating Systems တွေပေါ်မှာ ပြောင်းလဲမှု အနည်းငယ် (သို့) မပြောင်းလဲဘဲ မပြုပြင်ဘဲ Compile ပြုလုပ်နိုင်ပါတယ်။ Compile လုပ်ပြီးတဲ့နောက်မှာတော့ ရည်ရွယ်တဲ့ Targeted System မှာပဲ အလုပ်လုပ်နိုင်ပါတော့တယ်။

Java

            အဓိကအချက်ကတော့ Java Language ဖြင့်ရေးသားထားတဲ့ Programs တွေဟာ ရွှေ့ပြောင်းသယ်ယူရလွယ်ကူတာပါပဲ။ ဆိုလိုတာက Program ဟာ မတူညီတဲ့ မည်သည့် OS တွေမှာမဆို အလုပ်လုပ်နိုင်တာပါ။ နာမည်ဆင်တူပေမယ့် JavaScript နှင့်တော့ မဆက်စပ်ပါဘူး။ မသက်ဆိုင်ပါဘူး။

  Perl

            Text Content တွေအတွက် အသုံးများတဲ့ Programming Language တစ်ခုပါ။ Text တွေရှာတာ (Text Filtering)၊ ခွဲထုတ်တာ (Parsing) တွေအတွက် အထူးသင့်တော်လှတဲ့ Regular Expressions တွေလည်း ခိုင်မာစွာအသုံးပြုနိုင်ပါတယ်။

 Shell

            အထူးသဖြင့် Bash Shell ဟာ Programming language အဖြစ်သာမကဘဲ အခြား Programs တွေ အလုပ်လုပ်နိုင်ဖို့အတွက် အပြန်အလှန်လုပ်ဆောင်ဖို့ (Interactive Interface) အတွက်ပါ ရနိုင်ပါတယ်။ Shell Scripts လို့ခေါ်တဲ့ Shell Programs တွေဟာ ရှုပ်ထွေးတဲ့ Complex (သို့) ထပ်ခါထပ်ခါလုပ်ဆောင်ရတဲ့ Repetitive Tasks တွေကို Command line Environment ပေါ်မှာ အလိုအလျောက်လုပ်ဆောင်နိုင်စေတာပါ။

Python

            Computer Science ဖြင့် တိုက်ရိုက်မဆက်စပ်တဲ့ ကျောင်းသားတွေနှင့် ကျွမ်းကျင်သူတွေကြားမှာ အထူးကျော်ကြားလှတဲ့ Programming Language တစ်ခုပါ။ Advanced Features တွေလည်း ရနိုင်သလို လွယ်လွယ်ချဥ်းကပ်နိုင်တဲ့နည်းလမ်းတွေလည်းရှိတာကြောင့် Programming ကိုစတင်လေ့လာသူတွေအတွက် သင့်တော်ကောင်းမွန်ပါတယ်။

PHP

            Web အတွက် Content တွေဖန်တီးတဲ့အခါ Server Side Scripting Language တစ်ခုအနေဖြင့် အသုံးအများဆုံးပါ။ Online HTML Pages အများစုဟာ မပြောင်းလဲတတ်တဲ့ Information တွေပဲပါတဲ့ Static Files တွေ မဟုတ်ကြပါဘူး။ Databases တွေလိုမျိုး အမျိုးမျိုးသောနေရာတွေမှ ရရှိတဲ့ လှုပ်ရှားသက်ဝင်နေတဲ့ Dynamic Content တွေသာ ပိုမိုများပြားပါတယ်။ PHP Programs, PHP Pages (or) PHP Scripts တွေကို အသုံးပြုပြီး Dynamic Content တွေဖန်တီးကြတာပါ။ LAMP ဆိုတဲ့ ဝေါဟာရကတော့ Linux Operating System, an Apache HTTP Server, a MySQL (or MariaDB) database, နှင့် PHP Programming တို့ပေါင်းစည်းခြင်းမှ ပေါ်ထွက်လာတာပါ။ LAMP Servers တွေဟာ Web Servers တွေအတွက် အလွန်ပဲ ရေပန်းစားလှတဲ့ အဖြေတစ်ခုပါ။ PHP အပြင် အခုဖော်ပြခဲ့တဲ့ Programming Languages တွေကိုလည်း Web Applications တွေအတွက် အသုံးပြုနိုင်ပါတယ်။

         C and java တို့ဟာ Compiled Languages တွေပါ။ System တစ်ခုမှာ အလုပ်လုပ်နိုင်ဖို့ အသုံးပြုနိုင်ဖို့အတွက် C ဖြင့်ရေးသားထားတဲ့ Source Code ကို Binary Machine Code အဖြစ်ပြောင်းလဲရပြီး Java Source Code ကိုတော့ Java Virtual Machine (JVM) လို့ခေါ်တဲ့ အထူး Software Environment မှာ အလုပ်လုပ်ပေးမယ့် Bytecode အဖြစ်သို့ပြောင်းလဲပါတယ်။ JavaScript, Perl, Shell Script, Python and PHP တို့ကတော့ Interpreted Languages တွေဖြစ်ကြပြီး Scripting Languages  တွေအဖြစ်လည်း အမည်တွင်ပါသေးတယ်။