Interpreter အလုပ္လုပ္ပုံ
Compilerအလုပ္လုပ္ပုံ
Compiler က source codesေတြကုိExecutable File(Machine Codes)အျဖစ္ Compile လုပ္ပါတယ္။ရရွိလာတ့ဲ Executable file ကုိ hardware executor က execute လုပ္ပါတယ္။ ကိုယ့္Computer ရဲ႕ CPU Power ေပၚမူတည္ၿပီး Compiling Time အခ်ိန္ၾကာတယ္။ဒါေၾကာင့္ တစ္ခါ Compile ဖို႔ အေရး ေသခ်ာစဥ္းစား ေသခ်ာေရး၊ Errorရွိရင္ Error ရွာ၊ Error ေတြ႕ရင္ ျပန္ျပင္။ ဒီေတာ့ Product တစ္ခုထြက္ဖို႔အတြက္ အခ်ိန္ေပးရပါတယ္။ဒါက Compiled Language ေတြရဲ႕ အားနည္းခ်က္ေပါ့
Interpreter က ကိုယ္ေရးထားတဲ့ Code ေတြကို အေပၚကေနေအာက္ကို line by line တစ္ေၾကာင္းခ်င္းစီ ဖတ္သြားၿပီး ကိုယ္ေရးထားတဲ့ Source Code ရဲ႕ Result ကို ခ်က္ျခင္းေဖာ္ျပတယ္။ဒါေၾကာင့္ Production Time ျမန္တယ္။ Error ရွာရလြယ္တယ္။ Compile အတြက္ အခ်ိန္မေပးရေတာ့ဘူး။ ဒါေပမဲ့ Code ကိုတစ္ခါထဲ Translate ေရာ Interpret ေရာလုပ္သြားတ့ဲအတြက္ေၾကာင့္ Binary Executable File မထုတ္ေပးဘူး။ ဒီေတာ့ Program ကိုျပန္ဖြင့္ဖို႔ Interpret ျပန္ျပန္လုပ္ေပးရတယ္။ဒါေၾကာင့္Runtimeမွာၾကာသြားတယ္။Compiler က Binary Executable File ထုတ္ေပးထားေတာ့ Runtime အလုပ္လုပ္ခုိင္းတ့ဲအခ်ိန္မွာ ျမန္တယ္။ ျပန္ၿပီး Compile လုပ္ေနစရာမလိုေတာ့ဘူး။ ဒါေပမဲ့ Development Time မွာ ၾကာသြားတယ္ေပါ့ ။ Compiled Language နဲ႕ Interpreted Language ဟာ အားသာခ်က္ အားနည္းခ်က္ရွိၾကပါတယ္။
Syntax
Programming ေရးတ့ဲအခါမွာ Programming Language အလုိက္ ေရးထုံးေရးနည္း လုိက္နာရမ့ဲ စည္းမ်ည္းစည္းကမ္းေတြရွိပါတယ္။ ထုိစည္းမ်ည္းစည္းကမ္း rule ကုိ Syntax လုိ႕ေခၚပါတယ္။
Type Of Programming Languages
ေယဘုယ်အားျဖင့္ Programming Languages အမ်ဴိးအစားေလးမ်ဴိးရွိပါတယ္။
* Statically Type Language
* Dynamically Type Language
* Strongly Type Language
* Weakly Type Language
Strongly Type Language
Data Typeေတြကုိ မလြဲမေသြလုိက္နာတ့ဲအမ်ဴိးအစားပါ။integer တစ္ခုကုိconvertမလုပ္မခ်င္း stringအျဖစ္ျပဳမူလုိ႕မရပါဘူး။Pythonနဲ႕ Javaဆုိရင္ Strongly Type Languageေတြပါ။
Weakly Type Language
Data Typeေတြကုိ လ်စ္လ်ဴရႈတ့ဲအမ်ဴိးအစားပါ။VB Scriptဟာ Weakly Type Languageပါ။မတူညီတ့ဲData TypeေတြကုိConvertလုပ္စရာမလုိဘဲexecuteလုပ္လုိ႔ရပါတယ္။
Python
Python ဆိုတာ high-level programming language တစ္ခုပါ။ Guido van Rossum ကဖန္တီးခဲ့ၿပီးေတာ့ 1991 ခုႏွစ္မွာ စတင္မိတ္ဆက္ခဲ့ပါတယ္။
python က c, c,java တို႔လို compiled language မဟုတ္ပဲ interpreter ေပၚမွာ အလုပ္လုပ္တဲ့ interpreted language တစ္ခုျဖစ္ပါတယ္ ၿပီးေတာ့ python က c,c,java တို႔လို brackets, curly brackets ေတြကိုသံုးၿပီး code blocks မခြဲပါဘူး indentation ေတြကိုသံုးၿပီးေတာ့ code blocks ေတြခြဲပါတယ္
python နဲ႔ေရးတဲ့ program ေတြေတာ္ေတာ္မ်ားမ်ားက clean code ျဖစ္တ့ဲအတြက္ေၾကာင့္ high productivity ျဖစ္ပါတယ္။high productivity ကသူ႔ရဲ႕ အလုပ္လုပ္ႏိုင္တဲ့ ပမာဏ ကိုေျပာတာပါ။ဥပမာ java မွာ problem တစ္ခု solve လုပ္ဖို႔ coding line 30 ေရးရတယ္ဆိုရင္ python မွာ coding line ငါးေၾကာင္းေလာက္နဲ႔ၿပီးသြားတာမ်ိဳးကိုေျပာတာပါ
python က multiple programming paradigm ကုိ support ေပးပါတယ္, object oriented,functional programming, procedural programming, etc .... စတာေတြကို support လုပ္ေပးပါတယ္
Python က Dynamically type langauge အမ်ဴိးအစားပါ။ ထုိေၾကာင့္ auto memory management လုပ္ေပးပါတယ္။
Khant Si Thu